WEB网络渗透的基础知识
網(wǎng)絡(luò)滲透
1.什么是網(wǎng)絡(luò)滲透
網(wǎng)絡(luò)滲透是攻擊者常用的一種攻擊手段,也是一種綜合的高級(jí)攻擊技術(shù),同時(shí)網(wǎng)絡(luò)滲透也是安全工作者所研究的一個(gè)課題,在他們口中通常被稱為”滲透測試(Penetration Test)”。
網(wǎng)絡(luò)滲透的目的
無論是網(wǎng)絡(luò)滲透(Network Penetration)還是滲透測試(Penetration Test),其實(shí)際上所指的都是同一內(nèi)容,也就是研究如何一步步攻擊入侵某個(gè)大型網(wǎng)絡(luò)主機(jī)服務(wù)器群組。只不過從實(shí)施的角度上看,前者是攻擊者的惡意行為,而后者則是安全工作者模擬入侵攻擊測試,進(jìn)而尋找最佳安全防護(hù)方案的正當(dāng)手段。
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,在政府、電力、金融、教育、能源、通信、制造等行業(yè)的企業(yè)網(wǎng)絡(luò)應(yīng)用日趨普遍,規(guī)模也日漸擴(kuò)大。在各個(gè)公司企業(yè)網(wǎng)絡(luò)中,網(wǎng)絡(luò)結(jié)構(gòu)越來越復(fù)雜,各種網(wǎng)絡(luò)維護(hù)工作也極為重要,一旦網(wǎng)絡(luò)出現(xiàn)問題,將會(huì)影響公司或企業(yè)的正常運(yùn)作,并給公司或企業(yè)帶來極大的損失。
在各種網(wǎng)絡(luò)維護(hù)工作中,網(wǎng)絡(luò)安全維護(hù)更是重中之重。各種網(wǎng)絡(luò)安全事件頻頻發(fā)生,不時(shí)見諸于報(bào)紙頭條和網(wǎng)絡(luò)新聞,大型企業(yè)公司的網(wǎng)絡(luò)也逃不過被攻擊的命運(yùn)。網(wǎng)絡(luò)安全工作保障著網(wǎng)絡(luò)的正常運(yùn)行,避免因攻擊者入侵帶來的可怕?lián)p失。
為了保障網(wǎng)絡(luò)的安全,網(wǎng)絡(luò)管理員往往嚴(yán)格地規(guī)劃網(wǎng)絡(luò)的結(jié)構(gòu),區(qū)分內(nèi)部與外部網(wǎng)絡(luò)進(jìn)行網(wǎng)絡(luò)隔離,設(shè)置網(wǎng)絡(luò)防火墻,安裝殺毒軟件,并做好各種安全保護(hù)措施。然而絕對的安全是不存在的,潛在的危險(xiǎn)和漏洞總是相對存在的。
網(wǎng)絡(luò)滲透攻擊
面對越來越多的網(wǎng)絡(luò)攻擊事件,網(wǎng)絡(luò)管理員們采取了積極主動(dòng)的應(yīng)對措施,大大提高了網(wǎng)絡(luò)的安全性。惡意的入侵者想要直接攻擊一個(gè)安全防御到位的網(wǎng)絡(luò),看起來似乎是很困難的事情。于是,網(wǎng)絡(luò)滲透攻擊出現(xiàn)了。
對于大型的網(wǎng)絡(luò)主機(jī)服務(wù)器群組,攻擊者往往不會(huì)采取直接的攻擊手段,而是采用一些迂回漸進(jìn)式的攻擊方法,長期而有計(jì)劃地逐步滲透攻擊進(jìn)入網(wǎng)絡(luò),并完全控制整個(gè)網(wǎng)絡(luò),這就是”網(wǎng)絡(luò)滲透攻擊”。
蟻穴
攻擊者要直接通過設(shè)置森嚴(yán)的網(wǎng)絡(luò)關(guān)卡進(jìn)入網(wǎng)絡(luò)是不可能的,然而無論怎么樣設(shè)置網(wǎng)絡(luò),總會(huì)有一些或大或小的安全缺陷或漏洞。而攻擊者所做的,就是在一個(gè)看似安全的網(wǎng)絡(luò)上,找到一個(gè)小缺口,然后一步一步地將這些缺口擴(kuò)大,擴(kuò)大,再擴(kuò)大,最終導(dǎo)致整個(gè)網(wǎng)絡(luò)安全防線的失守,掌控整個(gè)網(wǎng)絡(luò)的權(quán)限。
對網(wǎng)絡(luò)管理員來說,網(wǎng)絡(luò)上的某個(gè)小小的安全缺陷,就好似一個(gè)微不足道的”蟻穴”,然而忽略了對它的重視,最終的結(jié)果將十分可怕,它將會(huì)引發(fā)整個(gè)網(wǎng)絡(luò)安全防御堤壩的全面崩塌。因此,作為網(wǎng)絡(luò)管理員,完全有必要了解甚至掌握網(wǎng)絡(luò)滲透入侵的技術(shù),這樣才能有針對性地進(jìn)行防御,真正保障網(wǎng)絡(luò)的安全。
普通攻擊與滲透攻擊
網(wǎng)絡(luò)滲透攻擊與普通攻擊的不同
網(wǎng)絡(luò)滲透攻擊與普通網(wǎng)絡(luò)攻擊的不同在于,普通的網(wǎng)絡(luò)攻擊只是單一類型的攻擊。
例如,在普通的網(wǎng)絡(luò)攻擊事件中,攻擊者可能僅僅是利用目標(biāo)網(wǎng)絡(luò)的Web服務(wù)器漏洞,入侵網(wǎng)站更改網(wǎng)頁,或者在網(wǎng)頁上掛馬。也就是說,這種攻擊是隨機(jī)的,而其目的也是單一而簡單的。
網(wǎng)絡(luò)滲透攻擊則與此不同,它是一種系統(tǒng)漸進(jìn)型的綜合攻擊方式,其攻擊目標(biāo)是明確的,攻擊目的往往不那么單一,危害性也非常嚴(yán)重。
例如,攻擊者會(huì)有針對性地對某個(gè)目標(biāo)網(wǎng)絡(luò)進(jìn)行攻擊,以獲取其內(nèi)部的商業(yè)資料,進(jìn)行網(wǎng)絡(luò)破壞等。因此,攻擊者實(shí)施攻擊的步驟是非常系統(tǒng)的,假設(shè)其獲取了目標(biāo)網(wǎng)絡(luò)中網(wǎng)站服務(wù)器的權(quán)限,則不會(huì)僅滿足于控制此臺(tái)服務(wù)器,而是會(huì)利用此臺(tái)服務(wù)器,繼續(xù)入侵目標(biāo)網(wǎng)絡(luò),獲取整個(gè)網(wǎng)絡(luò)中所有主機(jī)的權(quán)限。
為了實(shí)現(xiàn)滲透攻擊,攻擊者采用的攻擊方式絕不僅此于一種簡單的Web腳本漏洞攻擊。攻擊者會(huì)綜合運(yùn)用遠(yuǎn)程溢出、木馬攻擊、密碼破解、嗅探、ARP欺騙等多種攻擊方式,逐步控制網(wǎng)絡(luò)。
總體來說,與普通網(wǎng)絡(luò)攻擊相比,網(wǎng)絡(luò)滲透攻擊具有幾個(gè)特性:攻擊目的的明確性,攻擊步驟的逐步與漸進(jìn)性,攻擊手段的多樣性和綜合性。
1.如何進(jìn)行滲透?
一、信息收集
1,獲取域名的whois信息,獲取注冊者郵箱姓名電話等。
2,查詢服務(wù)器旁站以及子域名站點(diǎn),因?yàn)橹髡疽话惚容^難,所以先看看旁站有沒有通用性的cms或者其他漏洞。
3,查看服務(wù)器操作系統(tǒng)版本,web中間件,看看是否存在已知的漏洞,比如IIS,APACHE,NGINX的解析漏洞
4,查看IP,進(jìn)行IP地址端口掃描,對響應(yīng)的端口進(jìn)行漏洞探測,比如 rsync,心臟出血,mysql,ftp,ssh弱口令等。
5,掃描網(wǎng)站目錄結(jié)構(gòu),看看是否可以遍歷目錄,或者敏感文件泄漏,比如php探針
6,cookie hack google hack cookies edit 進(jìn)一步探測網(wǎng)站的信息,后臺(tái),敏感文件
備注:根據(jù)懸鏡安全團(tuán)隊(duì)多年的滲透測試實(shí)戰(zhàn)經(jīng)驗(yàn)得出:安全團(tuán)隊(duì)再進(jìn)行滲透測試的時(shí)候,收集完相關(guān)的信息后,通過自動(dòng)化的漏掃工具,進(jìn)行進(jìn)一步的問題發(fā)掘,然后通過掃描出來的漏洞以及自身的實(shí)戰(zhàn)項(xiàng)目經(jīng)驗(yàn)再進(jìn)行深層次的漏洞挖掘,這也是為什么滲透測試比漏掃工具發(fā)現(xiàn)問題的深度和攻擊面會(huì)更廣。
二、漏洞掃描
開始檢測漏洞,如XSS,XSRF,sql注入,代碼執(zhí)行,命令執(zhí)行,越權(quán)訪問,目錄讀取,任意文件讀取,下載,文件包含, 遠(yuǎn)程命令執(zhí)行,弱口令,上傳,編輯器漏洞,暴力破解等
三、漏洞利用
利用以上的方式拿到webshell,或者其他權(quán)限
四、權(quán)限提升
提權(quán)服務(wù)器,比如windows下mysql的udf提權(quán),serv-u提權(quán),windows低版本的漏洞,如iis6,pr,巴西烤肉, linux藏牛漏洞,linux內(nèi)核版本漏洞提權(quán),linux下的mysql system提權(quán)以及oracle低權(quán)限提權(quán)
五、 日志清理
日志清理是必要的工作
六、總結(jié)報(bào)告及修復(fù)方案
報(bào)告是安全漏洞結(jié)果展現(xiàn)形式之一,也是目前安全業(yè)內(nèi)最認(rèn)可的和常見的。每家安全團(tuán)隊(duì)在寫滲透測試報(bào)告的都不一樣,但大體展現(xiàn)的內(nèi)容是一樣的。那報(bào)告上都會(huì)有哪些內(nèi)容呢?小編就拿懸鏡安全團(tuán)隊(duì)做滲透測試的經(jīng)驗(yàn)以及實(shí)際交付給客戶的報(bào)告來分享下。
有的團(tuán)隊(duì),特別是專業(yè)的安全滲透測試團(tuán)隊(duì),報(bào)告首先有滲透測試人員產(chǎn)出,出來后由專業(yè)的文檔品控人員對文檔的質(zhì)量再進(jìn)行進(jìn)一步的檢查,這個(gè)過程不僅可以看出技術(shù)的專業(yè)度來,也可以看出團(tuán)隊(duì)文檔的品質(zhì)感。
那報(bào)告上都包括哪些內(nèi)容?
首先是對本次網(wǎng)站滲透測試的一個(gè)總概括,發(fā)現(xiàn)幾個(gè)漏洞,有幾個(gè)是高危的漏洞,幾個(gè)中危漏洞,幾個(gè)低危漏洞。
然后對漏洞進(jìn)行詳細(xì)的講解,比如是什么類型的漏洞,漏洞名稱,漏洞危害,漏洞具體展現(xiàn)方式,修復(fù)漏洞的方法。
01.sqlmap,怎么對一個(gè)注入點(diǎn)注入?
1.如果是get型號(hào),直接,sqlmap -u “諸如點(diǎn)網(wǎng)址”.
2. 如果是post型諸如點(diǎn),可以sqlmap -u “注入點(diǎn)網(wǎng)址” – data=”post的參數(shù)”
3.如果是cookie,X-Forwarded-For等,可以訪問的時(shí)候,用burpsuite抓包,注入處用*號(hào)替換,放到文件里,然后sqlmap -r “文件地址”
02.nmap,掃描的幾種方式
sql注入的幾種類型?
1.報(bào)錯(cuò)注入
2.bool型注入
3.延時(shí)注入
4.寬字節(jié)注入
03.盲注和延時(shí)注入的共同點(diǎn)?
都是一個(gè)字符一個(gè)字符的判斷
04.如何拿一個(gè)網(wǎng)站的webshell?
上傳,后臺(tái)編輯模板,sql注入寫文件,命令執(zhí)行,代碼執(zhí)行, 一些已經(jīng)爆出的cms漏洞,比如dedecms后臺(tái)可以直接建立腳本文件,wordpress上傳插件包含腳本文件zip壓縮包等
sql注入寫文件都有哪些函數(shù)?
select ‘一句話’ into outfile ‘路徑’
select ‘一句話’ into dumpfile ‘路徑’
select ” into dumpfile ‘d:wwwroothttp://baidu.co\nvhack.php’;
05.如何防止CSRF?
1,驗(yàn)證referer
2,驗(yàn)證token
詳細(xì):淺談cnode社區(qū)如何防止csrf攻擊 - CNode技術(shù)社區(qū)
06.owasp 漏洞都有哪些?
1、SQL注入防護(hù)方法:
2、失效的身份認(rèn)證和會(huì)話管理
3、跨站腳本攻擊XSS
4、直接引用不安全的對象
5、安全配置錯(cuò)誤
6、敏感信息泄露
7、缺少功能級(jí)的訪問控制
8、跨站請求偽造CSRF
9、使用含有已知漏洞的組件
10、未驗(yàn)證的重定向和轉(zhuǎn)發(fā)
07.SQL注入防護(hù)方法?
1、使用安全的API
2、對輸入的特殊字符進(jìn)行Escape轉(zhuǎn)義處理
3、使用白名單來規(guī)范化輸入驗(yàn)證方法
4、對客戶端輸入進(jìn)行控制,不允許輸入SQL注入相關(guān)的特殊字符
5、服務(wù)器端在提交數(shù)據(jù)庫進(jìn)行SQL查詢之前,對特殊字符進(jìn)行過濾、轉(zhuǎn)義、替換、刪除。
08.代碼執(zhí)行,文件讀取,命令執(zhí)行的函數(shù)都有哪些?
1,代碼執(zhí)行:eval,pregreplace+/e,assert,calluserfunc,calluserfuncarray,create_function
2,文件讀取:filegetcontents(),highlightfile(),fopen(),read file(),fread(),fgetss(), fgets(),parseinifile(),showsource(),file()等
3,命令執(zhí)行:system(), exec(), shellexec(), passthru() ,pcntlexec(), popen(),proc_open()
img標(biāo)簽除了onerror屬性外,還有其他獲取管理員路徑的辦法嗎?
src指定一個(gè)遠(yuǎn)程的腳本文件,獲取referer
img標(biāo)簽除了onerror屬性外,并且src屬性的后綴名,必須以.jpg結(jié)尾,怎么獲取管理員路徑。
09.繞過walf
1、關(guān)鍵字可以用%(只限IIS系列)。
比如select,可以sel%e%ct。
原理:網(wǎng)絡(luò)層waf對SEL%E%CT進(jìn)行url解碼后變成SEL%E%CT,匹配select失敗,而進(jìn)入asp.dll對SEL%E%CT進(jìn)行url解碼卻變成select。
IIS下的asp.dll文件在對asp文件后參數(shù)串進(jìn)行url解碼時(shí),會(huì)直接過濾掉09-0d(09是tab鍵,0d是回車)、20(空格)、%(后兩個(gè)字符有一個(gè)不是十六進(jìn)制)字符。xss也是同理。
2、編碼。這個(gè)方法對waf很有效果,因?yàn)橐话鉾af會(huì)解碼,但是我們利用這個(gè)特點(diǎn),進(jìn)行兩次編碼,他解了第一次但不會(huì)解第二次,就bypass了。騰訊waf、百度waf等等都可以這樣bypass的。
3、繞過策略一:偽造搜索引擎
4、360webscan腳本存在這個(gè)問題,就是判斷是否為admin dede install等目錄,如果是則不做攔截
5、multipart請求繞過,在POST請求中添加一個(gè)上傳文件,繞過了絕大多數(shù)WAF。
6、參數(shù)繞過,復(fù)制參數(shù),id=1&id=1
用一些特殊字符代替空格,比如在mysql中%0a是換行,可以代替空格,這個(gè)方法也可以部分繞過最新版本的安全狗,在sqlserver中可以用/**/代替空格
https://zhidao.baidu.com/question/181596711.html
總結(jié)
以上是生活随笔為你收集整理的WEB网络渗透的基础知识的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java基础题2从入门到放弃的第五天
- 下一篇: 云和恩墨数据库一体机助力天安人寿 zD