您好,登錄后才能下訂單哦!
hihttps是一款免費的web應用防火墻,既支持傳統的WAF的OWASP特征工程檢查(如SQL注入、XSS、惡意漏洞掃描、密碼破解、CC、DDOS等),也支持機器采集樣本無監督學習,自主對抗,重新定義web安全。今天筆者就從web安全的角度,介紹機器學習之樣本采集。
一、 究竟什么是web?
網絡安全專家通常認為:web惡意很多是有其特殊的URL特征,如
惡意掃描 GET /hihttps?cat ../…/../etc/passwd
SQL注入 GET /hihttps?user=123' or 1='1
XSS GET /hihttps?user=<script>alert(1);</script>a
......這類確實有非常典型的特征,傳統的waf和規則就可以防御。
那么下面的URL呢?
GET /hihttps?user=ls123
GET /hihttps?user=%0Als
……準確說,這類網絡安全專家也認為是正常的請求,或者說無法辨別是否惡意***。
問題就來了,像GET /hihttps?user=ls123就一定是正常的請求嗎?不一定。
比如CVE-2019-11043高位漏洞:向Nginx + PHP-FPM的服務器 URL發送 %0a 時,可以執行任意遠程命令,從而控制整個服務器。也就是說:GET /hihttps?user=%0Als在某些環境就是一條成功的***,并且執行了linux的ls命令;如果服務器沒安裝Nginx+PHP,也可以認為是無害的。
再進一步,如果網站上根本沒有hihttps這個接口,那就是惡意掃描,一定要檢測出來并阻斷。但傳統的方法肯定不行了,那么機器學習將是唯一的辦法。
二、 機器學習重新定義網絡安全
和圖形圖像的機器學習相比,web安全采集樣本的成本是最低的,因為只要把軟件在服務器上運行即可采集,甚至讀取web日志文件,就可以拿到大量的樣本,而成本幾乎是0。
但**樣本太稀缺了,根本無法拿完并且日新月異,從這個角度也可以說無監督或者半監督學習,才是未來web安全的發展方向。下面舉例:
如果從web服務器上http:// www.hihttps.com/hihttps.html?id=123,采集到的樣本參數大于99.9%都是“?id=數字”這種形態,那么可以認為下面的網址都視為:
http://www.hihttps.com/hihttps.html?id=123' or 1='1
http:// www.hihttps.com /hihttps.html?id=<script>alert(1);</script>
http:// www.hihttps.com /hihttps.html?id=1234567890&t=123
http:// www.hihttps.com /hihttps.html?id=abc
后面兩條網址,在傳統的waf是不可能檢測的,只有機器學習才能準確檢測出。所以機器學習的核心是:不是我服務器上的東西,都視為非法,這樣有可能阻止未知漏洞和未知。這樣,web安全的概念和傳統的特征工程完全不一樣了,機器學習重新定義了網絡安全。
三、 樣本采集原則
1、足夠的隨機化,在不同的IP地址之間隨機采集。
2、足夠多的樣本,保證99.99%的正確率,至少需要采集數萬份的樣本。
3、足夠的時間,至少在不同的時間段采集3-7天的樣本。
4、盡量是正常流量,樣本沒有被**污染。
5、完整的數據,樣本包括全部的HTTP 請求頭和body。
所以從web日志里面來讀取樣本數據是有限的,最好用WAF實際部署方式來采集。對于SSL加密的樣本采集通常用反向代理方式采集,可以參考hihttps源碼https://github.com/qq4108863
四、總結
1、現在的網絡都基于邏輯漏洞進行APT,傳統的waf規則很難對付未知漏洞和未知。
2、讓機器像人一樣學習,具有一定智能自動對抗APT或許是唯一有效途徑。但***技術本身就是人類最頂尖智力的較量,WEB安全仍然任重而道遠,
3、幸好hihttps這類免費的應用防火墻在機器學習、自主對抗中開了很好一個頭,未來web安全很可能是特征工程+機器學習共同完成,筆者將在下一篇文章中介紹怎么從樣本中提取特征,自動生成對抗規則,未來WEB安全必然是AI的天下。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。