白帽子講安全
同源策略
javascript中,影響源的因素有:根域名、子域名、端口、協議
www.a.com中加載了這段代碼
<script src=www.b.com/b.js></srcipt>
那麼對於b.js來說他的源還是www.a.com,src只能去請求,不能讓源響應請求
<script>、<img>、<iframe>、<link>都可以跨域加載資源,不受同源策略限制,src加載相當於由瀏覽器發起一次GET請求,但是限制了js的讀寫返回權限
不同的是,XMLHttpRequest可以返回同源對象的內容
如以下代碼:
<a href="" id="test1">test1</a>
<script>
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("test1").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","想要訪問的url",true);
xmlhttp.send();
</script>
XMLHttpRequest跨域訪問標準:通過目標域返回的HTTP頭來授權是否允許跨域訪問,信任基礎是:js無法控制HTTP頭
HTML DOM 定義了訪問和操作 HTML 文檔的標準方法。
DOM 將 HTML 文檔表達爲樹結構。
Flash:通過目標網站提供的crossdomain.xml文件判斷是否允許當前源的Flash跨域訪問目標資源,Flash9之後,還會檢查MIME和crossdomain.xml是否在根目錄下
瀏覽器沙箱
sandbox:沙箱,資源隔離類模塊,有助於實現瀏覽器的多進程架構
多進程架構使得瀏覽器只會崩潰Tab頁,而不是所有頁面都崩潰
第三方插件往往不受sanbox管轄,如flash、java、pdf、net framework成爲了最近瀏覽器攻擊的熱點
惡意網址攔截
-
惡意網址黑名單攔截
掛馬網站:含有惡意腳本,通過漏洞執行shellcode
釣魚網站:模仿知名網站的相似頁面欺騙用戶
PhishTank是互聯網上免費提供惡意網址黑名單的組織之一
Google內部使用的SafeBrowsing API能獲取Google的惡意網址庫 -
EVSSL證書
firefox中的url,\會自動變成/
web安全深度剖析
上傳解析漏洞
服務器
- IIS6.0
WebDav漏洞:可PUT、COPY、MOVE等,可用IISwrite檢測
*.asa
和*.asp
都可被解析成asp文件
*.asp;1.jpg
仍以asp文件解析 - apache
後綴名向後往前解析,直到遇到認識的後綴名,如1.php.aa就會被解析成php文件
- php cgi(nignx)
http://xxx/1.jpg/1.php
1.jpg會被解析成1.php
php配置文件中的關鍵選項:cgi.fi: x_pathinfo
開啓即會造成該漏洞
攻擊方式
(不管怎麼樣,先了解網站的機制)
- 前端繞過——firebug
- 中間人攻擊——burpsuite
- 服務端檢測
黑名單過濾:asp.
asp_
cer
大小寫
asa
白名單過濾:這種更安全,可以利用服務器的漏洞,MIME類型驗證
截斷:%00(十六進制爲00)
防禦
重命名,不要根據用戶輸入的那種重命名
白名單使用
提權
內網滲透
提權爲管理員
上傳x.bat至c:\Documents and Settings\Administrator\[開始]菜單\程序\啓動
x.bat的內容如下:
@echo off
net user temp 123456 /ad
net localgroup administrator temp /ad
DLL劫持
運行任何exe之前都會先尋找同目錄是否有dll文件,如果有在運行之前先執行dll文件。如果沒有,則去system32中尋找。
工具:T00ls Lpk Sethc
後門
查看系統版本等信息:
systeminfo
minikatz_trunk
上傳繞過免殺
旁註攻擊
通過網址查找同服務器的其他網址:
就是他!