目錄
??????? 滲透測試流程
常見端口
Nmap
SQL注入
SQL注入原理
SQL注入修復建議
SQL注入漏洞挖掘
SQL注入繞過方式
sqlmap使用
文件上傳漏洞
文件上傳漏洞原理
文件上傳漏洞修復建議
文件上傳繞過方式
文件包含漏洞
文件包含漏洞原理
文件包含四個PHP相關函數(shù)
文件包含利用
文件包含修復建議
XSS(跨站腳本攻擊)
XSS原理
XSS修復建議
!??!XSS與CSRF與SSRF漏洞區(qū)別
CSRF(跨站請求偽造)
CSRF原理
SSRF漏洞(服務端請求偽造)
SSRF漏洞原理
SSRF漏洞修復建議
XXE漏洞(XML文檔外部實體注入)
XXE漏洞原理
XXE漏洞修復建議
XXE危害
XXE觸發(fā)點
反序列化漏洞
反序列化漏洞原理
反序列化漏洞修復建議
Shiro反序列化漏洞
Fastjson反序列化漏洞
Log4j2 lookup 功能JNDI注入
中間件漏洞
解析漏洞
有反序列化漏洞的中間件Tomcat、Jboss、weblogic
Weblogic漏洞
??????? 內(nèi)網(wǎng)滲透
???????? 提權
Windows提權方式
Linux提權
內(nèi)網(wǎng)滲透工具
域信息收集
1、獲取域SID
2、查詢域內(nèi)用戶
3、查看域用戶的詳細信息
4、查詢域列表(假如存在多個域)
5、查看域內(nèi)主機信息
6、獲取所在指定域下的主機名
7、查看域內(nèi)計算機
8、查看域信任關系
9、查詢域密碼信息
10、查看域內(nèi)時間(時間服務器)
11、查看域內(nèi)用戶組列表
12、查看存在的用戶
13、域內(nèi)控制器的查找方式
14、查看域管理員組
流量分析
wireshark使用
菜刀特征
蟻劍特征
冰蝎
Web攻擊類的流量告警處置
發(fā)現(xiàn)一個SQL注入告警怎么判斷?
應急
應急響應的六個過程?
中了病毒(或者挖礦病毒)、木馬如何處置應急?
如果是Linux:
如果是Windows
/etc/passwd與/etc/shadow區(qū)別
入侵排查思路
Linux系統(tǒng)排查思路
Webshell查找
滲透測試流程
在拿到授權且與客戶溝通之后,拿到客戶提供的資產(chǎn)或者目標域名;
信息收集:主要使用nmap、御劍、fofa等工具,收集端口、同網(wǎng)段IP、子域名、相關服務、框架、使用的中間件等組件、各種版本信息、歷史漏洞信息等相關信息,收集到信息后可以檢索相關漏洞,再手動驗證
漏洞掃描:根據(jù)收集到的信息使用漏掃等工具進行掃描爆破等自動化探測,按照掃描結果進行漏洞驗證
手工漏洞挖掘:進行手工漏洞驗證和手工漏洞的挖掘
先將收集到的框架漏洞、組件漏洞進行手工驗證;
然后對主要功能點,比如登錄頁面、文件上傳頁面、信息查詢頁面、密碼重置頁面等,使用burpsuite等工具進行漏洞挖掘
提權:在客戶許可后,對拿到shell權限的漏洞點進一步提權或者內(nèi)網(wǎng)滲透
痕跡清除:清理滲透過程中留下的木馬、賬號等內(nèi)容
報告書寫:根據(jù)檢查出的漏洞及漏洞修復建議,寫漏洞報告
漏洞復測:在客戶修復完成之后,進行漏洞復測,檢查漏洞是否修復完成,完成閉環(huán)
常見端口
21 FTP
22 SSH
80 ? HTTP
443 HTTPS
445 ms17010漏洞利用端口
3389 遠程桌面
3306 MySQL數(shù)據(jù)庫
1433 SQLserver數(shù)據(jù)庫
1521 orcle數(shù)據(jù)庫
7001 weblogic中間件管理界面
8080 tomcat中間件管理界面
6379 redis數(shù)據(jù)庫
Nmap
nmap hostname/ip或者多個ip或者子網(wǎng)192.168.123.*
-iL ip.txt 掃描ip.txt的所有ip
-A 包含了-sV,-O,探測操作系統(tǒng)信息和路由跟蹤。一般不用,是激烈掃描
-O 探測操作系統(tǒng)信息
-sV 查找主機服務版本號
-sA 探測該主機是否使用了包過濾器或防火墻
-sS 半開掃描,一般不會記入日志,不過需要root權限。
-sT TCP connect()掃描,這種方式會在目標主機的日志中記錄大批的鏈接請求以及錯誤信息。
-sP ping掃描,加上這個參數(shù)會使用ping掃描,只有主機存活,nmap才會繼續(xù)掃描,一般最好不加,因為有的主機會禁止ping,卻實際存在。
-sN TCP空掃描
-F 快速掃描
-Pn 掃描之前不使用ping,適用于防火墻禁止ping,比較有用。
-p 指定端口/端口范圍
-oN 將報告寫入文件
-v 詳細信息
-T<0-5> 設定速度
?
SQL注入
SQL注入原理
未對客戶端輸入的內(nèi)容校驗,導致SQL語句傳入數(shù)據(jù)庫并執(zhí)行,而產(chǎn)生的一個漏洞
SQL注入修復建議
加waf可以有效緩解,可以作為臨時措施,根除的話需要修改源碼,一般需要嚴格對輸入?yún)?shù)進行SQL語句過濾,或者使用預編譯(就是把要查詢的語句先封裝編譯,后邊輸入的參數(shù)都會被作為字符串輸入)
SQL注入漏洞挖掘
SQL注入漏洞一般出現(xiàn)在有數(shù)據(jù)交互的地方,比如登錄頁面、數(shù)據(jù)查詢頁面、新聞頁面、數(shù)據(jù)新增頁面等
SQL注入繞過方式
- 使用大小寫混合;
- 使用內(nèi)聯(lián)注釋的方式繞過,就是用/*!12345 語句 ??*/
- 使用等價替換的方式,比如用like替換等號
- 使用16進制編碼表示字符串,繞過對庫名的過濾
sqlmap使用
-U USER 用來進行枚舉的數(shù)據(jù)庫用戶
-r 使用文件作為注入時提交的數(shù)據(jù)包內(nèi)容(可以結合burpsuite抓的流量包使用)
--dbms 指定數(shù)據(jù)庫或版本
–dbs 枚舉數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫
–tables 枚舉數(shù)據(jù)庫中的表
–columns 枚舉數(shù)據(jù)表中的列名
-D 庫名 要進行枚舉的數(shù)據(jù)庫名
-T 表名 要進行枚舉的數(shù)據(jù)庫表
-C 列名 要進行枚舉的數(shù)據(jù)庫列
--os-shell ???寫入webshell
--dump ?????拖庫
--tamper 使用自動化繞過腳本
常見的自動化腳本
?base64encode.py 轉為base64編碼
?charencode.py 使用url編碼
?chardoubleencode.py 雙URL編碼
?unmagicquotes.py 寬字節(jié)注入
?randomcomments.py 用/**/分割SQL關鍵字
文件上傳漏洞
文件上傳漏洞原理
因為對上傳文件校驗不夠完善,而導致的可執(zhí)行文件被上傳到服務器,從而產(chǎn)生的漏洞。
文件上傳漏洞修復建議
可以在服務端對文件后綴使用黑白名單結合的過濾方式,并且對文件內(nèi)容進行校驗,上傳之后對文件名進行重命名操作,也可以使用微服務保存上傳上來的文件。
文件上傳繞過方式
1.黑名單
?a.通過一些特殊后綴 .php5 、.phtml、.asa、.jap等
?b.上傳.htacess ??點h t 額可賽思
?c.大小寫pHp
?d.在數(shù)據(jù)包中 后文件綴名前加空格
?e.后綴名前加.
?f.加上::$DATA
?g.未循環(huán)驗證,可以使用x.php..類似的方法
2.白名單(一般需要配合其他漏洞一起利用)
?a.%00截斷
?b.圖片馬
?c.條件競爭
文件包含漏洞
文件包含漏洞原理
原理:文件包含本身是正常功能,如果客戶端可以干預被包含的文件名,導致包含了惡意文件,就會產(chǎn)生漏洞
文件包含四個PHP相關函數(shù)
1.include():使用此函數(shù),只有代碼執(zhí)行到此函數(shù)時才將文件包含進來,發(fā)生錯誤時只警告并繼續(xù)執(zhí)行。
2.inclue_once():功能和前者一樣,區(qū)別在于當重復調(diào)用同一文件時,程序只調(diào)用一次。
3.require():使用此函數(shù),只要程序執(zhí)行,立即調(diào)用此函數(shù)包含文件,發(fā)生錯誤時,會輸出錯誤信息并立即終止程序。
4.require_once():功能和前者一樣,區(qū)別在于當重復調(diào)用同一文件時,程序只調(diào)用一次。
文件包含利用
?1.讀取敏感文件 ??file:// ???偽協(xié)議
?2.遠程包含shell
?3.圖片上傳并包含圖片shell
?4.使用偽協(xié)議 ??php://input ??可以讀取post傳參的數(shù)據(jù),然后都當成PHP代碼執(zhí)行
?5.包含日志文件GetShell
?6.截斷包含 ?繞過
文件包含修復建議
修復:
- 設置PHP參數(shù)allow_url_include=off ??allow_url_fopen=off
- 對要包含的路徑進行嚴格校驗
XSS(跨站腳本攻擊)
XSS原理
原理: 中文名是跨站腳本攻擊,通過在客戶端和服務器的訪問過程中插入惡意腳本(一般
我們使用js代碼),實現(xiàn)對用戶瀏覽器的攻擊
XSS最大的特點就是能注入惡意的HTML/JavaScript代碼到用戶瀏覽的網(wǎng)頁上,是因WEB應用程序對用戶輸入過濾不嚴格而產(chǎn)生的,當用戶瀏覽這些網(wǎng)頁時,就會執(zhí)行其中的惡意代碼。由于HTML代碼和客戶端JavaScript腳本能在受害者主機上的瀏覽器任意執(zhí)行,這樣等同于完全控制了WEB客戶端的邏輯,在這個基礎上,黑客可以輕易地發(fā)起Cookie竊取,會話劫持,釣魚欺騙等各種各樣的攻擊。
XSS修復建議
- 對輸入的內(nèi)容進行過濾,比如過濾掉<> 參數(shù)
- 對將要輸出的內(nèi)容進行HTML編碼
- 對重要的cookie設置httpOnly參數(shù)??防止客戶端通過document.cookie讀取 cookie
!!!XSS與CSRF與SSRF漏洞區(qū)別
XSS是跨站腳本攻擊,攻擊的目標是客戶端,因為是腳本攻擊,所以JS腳本寫什么,客戶端就會做什么,比如竊取cookie利用方式比較靈活
CSRF是跨站請求偽造,攻擊的目標也是客戶端,利用時只能竊用cookie,只能利用存在csrf漏洞的功能點,局限性比XSS大
SSRF是服務端請求偽造,攻擊的是服務端,危害較大,可以造成內(nèi)網(wǎng)穿透、命令執(zhí)行、內(nèi)網(wǎng)信息泄露
CSRF(跨站請求偽造)
CSRF原理
原理:中文名跨站請求偽造,在用戶保持登錄狀態(tài)的情況下,攻擊者構造一個站點,誘導用戶訪問,用戶訪問后被惡意站點控制跳轉到存在CSRF漏洞的頁面,假如這個頁面是密碼修改頁面,在這個過程中,保持登錄狀態(tài)的cookie就會被竊用,造成密碼修改。
CSRF漏洞修復建議
- 在重要的功能點上,增加訪問來源的驗證,比如驗證referer頭
- 增加驗證碼驗證,增加token驗證
SSRF漏洞(服務端請求偽造)
SSRF漏洞原理
原理:本身是資源的引用,如果沒有進行校驗,會導致內(nèi)網(wǎng)不想讓別人訪問的資源或服務被人探測甚至攻擊到的一個漏洞。
SSRF漏洞修復建議
修復:
1.地址做白名單處理
2.域名識別IP 過濾內(nèi)部IP
3.校驗返回的內(nèi)容,對比一下是否與預期的內(nèi)容一致
?
?
XXE漏洞(XML文檔外部實體注入)
XXE漏洞原理
原理: 又叫XML外部實體注入,由于過濾不嚴格導致的,用戶傳入的惡意XML文檔被解析導致的漏洞
XXE漏洞修復建議
修復建議:
- 對用戶提交的XML數(shù)據(jù)進行過濾;
- 設置PHP參數(shù),禁用外部實體寫入;
XXE危害
當允許引用外部實體時,通過構造惡意內(nèi)容,可導致讀取任意文件、執(zhí)行系統(tǒng)命令、探測內(nèi)網(wǎng)端口、攻擊內(nèi)網(wǎng)網(wǎng)站等危害。
XXE觸發(fā)點
xxe漏洞觸發(fā)的點往往是可以上傳xml文件的位置,沒有對上傳的xml文件進行過濾,導致可上傳惡意xml文件
反序列化漏洞
反序列化漏洞原理
原理:序列化是指Java對象轉化為二進制文件的過程,反序列化指的是這個文件再轉化為Java對象的過程,本身是個正常過程,但如果被轉化的這個文件是個惡意的,轉化后的對象也是會是惡意的,由此可造成命令執(zhí)行等等威脅。
反序列化漏洞修復建議
一般我們遇到的反序列化漏洞,基本都是使用了具有反序列化漏洞的組件或者類造成的,一般我們打補丁或者升級到最新版本就可以防御。
Shiro反序列化漏洞
Shiro < 1.2.4版本會存在此漏洞,挖掘的時候刪除請求包中的rememberMe參數(shù),返回包中包含rememberMe=deleteMe字段。說明使用了shiro組件,可以嘗試此漏洞。
如果返回包無此字段,可以通過在發(fā)送數(shù)據(jù)包的cookie中增加字段:****rememberMe=,然后查看返回數(shù)據(jù)包中是否存在關鍵字
此漏洞有兩個版本利用方式,
SHIRO-550:
不需要提供秘鑰,使用默認秘鑰就可以利用
SHIRO-721反序列化漏洞
先爆破秘鑰,成功后可以進一步利用
Fastjson反序列化漏洞
Fastjson提供了反序列化功能,允許用戶在輸入JSON串時通過“@type”鍵對應的value指定任意反序列化類名,由此造成反序列化漏洞;
漏洞挖掘方式:如果請求包中出現(xiàn)http頭Accept:application/json,懷疑存在fastjson組件,構造報錯,返回包中出現(xiàn)fastjson時,確認使用了fastjson組件,可以嘗試此漏洞
Fastjson從1.2.24到1.2.67多個版本存在此漏洞,如果沒有回顯版本,可以將以下payload,挨個替換到請求內(nèi)容,嘗試是哪個版本的漏洞
{"@type":"java.net.InetSocketAddress"{"address":,"val":"aaa.dnslog.cn"}}
{"@type":"java.net.Inet4Address","val":"aaa.dnslog.cn"}
{"@type":"java.net.Inet6Address","val":"aaa.dnslog.cn"}
{"@type":"com.alibaba.fastjson.JSONObject",{"@type":"java.net.URL", "val":"http://aaa.dnslog.cn"}}""}
Set[{"@type":"java.net.URL","val":"http://aaa.dnslog.cn"}]
Set[{"@type":"java.net.URL","val":"http://aaa.dnslog.cn"}
{{"@type":"java.net.URL","val":"http://aaa.dnslog.cn"}:0
Log4j2 lookup 功能JNDI注入
原理:本身是Apache日志功能,他有個日志遍歷的功能,當碰到${jndi:// ?} ,會遍歷執(zhí)行,JNDI功能又可以使用ldap或者rmi來引入class文件,我們只需要在class文件中加入需要執(zhí)行的惡意代碼,就可以造成代碼注入
流量特征就是${jndi://ldap:// ?} ${jndi://rmi:// ?}
防御的話,升級版本,lookup參數(shù)設為yes
中間件漏洞
解析漏洞
Apache文件名解析
從后往前解析,如果解析文件a.php.abc,先解析abc,Apache發(fā)現(xiàn)不認識,就會往前,解析PHP,最終文件會以PHP方式解析
IIS解析漏洞
1、目錄解析:IIS從前往后解析,解析a.asp/a.jpg文件時,會先發(fā)現(xiàn)asp后綴,以為文件格式為asp,按照asp的方式解析
2、文件名解析:IIS從前往后解析,解析a.asp;.jpg文件時,會先發(fā)現(xiàn)asp后綴,以為文件格式為asp,按照asp的方式解析
Nginx 畸形文件名解析
解析文件a.jpg文件時,訪問a.jpg/.php,查找文件內(nèi)容時,.php不是完整文件名,因此從后往前找到a.jpg文件,確認文件類型時,nginx關注的是后綴,.php有完整的后綴,所以按照php去解析,因此a.jpg文件就會被解析成php
有反序列化漏洞的中間件Tomcat、Jboss、weblogic
Weblogic漏洞
發(fā)現(xiàn)端口7001則存在weblogic
未授權訪問、反序列化、ssrf漏洞、T3協(xié)議反序列化等
內(nèi)網(wǎng)滲透
提權
Windows提權方式
1、內(nèi)核提權,利用WinSystemHelper跑一下,給出適合的內(nèi)核漏洞編號,嘗試就可以了
2、數(shù)據(jù)庫提權,MySQL UDF提權,SQLserver使用xp_cmdshell提權
3、應用提權
4、中間人劫持等
Linux提權
- 內(nèi)核漏洞提權
- SUID提權 文件設置SUID 權限,會允許用戶執(zhí)行此文件時,以屬主的身份運行,如果此文件的屬主為root,則以root身份執(zhí)行
- sudo提權 ??sudo命令可以使任意用戶使用root權限執(zhí)行命令,此命令被濫用會造成提權
- 定時任務提權 ?利用crontab設置定時任務,會默認以root身份執(zhí)行
- curl提權 ??sudo curl file:///etc/shadow??會訪問存有所以用戶密碼哈希值的shadow文件,以此獲取到高權限用戶密碼
內(nèi)網(wǎng)滲透工具
mimikatz主要用做域滲透
域信息收集
域內(nèi)基礎信息收集
金票:黃金票據(jù),偽造TGT,相當于獲取域控權限
銀票:白銀票據(jù),偽造ST,登錄特定服務
1、獲取域SID
whoami /all
image.png
域SID主要是用來區(qū)分不同域,域用戶SID是用來區(qū)分域內(nèi)不同的用戶的,在后續(xù)票據(jù)傳遞中會使用到。
2、查詢域內(nèi)用戶
net user /domain
image.png
通過查詢域內(nèi)用戶就可以知道當前這個域內(nèi)所有的用戶名
3、查看域用戶的詳細信息
net user tom /domain
image.png
通過查看域用戶的詳細信息可以得到域用戶密碼的到期時間,所屬組以及上次登錄的時間等信息
4、查詢域列表(假如存在多個域)
net view /domain
image.png
通過查詢域列表可以看到,當前存在兩個域分別是:C1AY,SUB
5、查看域內(nèi)主機信息
net view
image.png
通過查詢域內(nèi)主機信息可以看到,當前域內(nèi)存在著3臺計算機。
6、獲取所在指定域下的主機名
net view /domain:C1ay
image.png
通過查詢指定域下的主機名也可以看到,當前域內(nèi)存在著3臺主機。
7、查看域內(nèi)計算機
net group "domain computers" /domain
image.png
通過查看域內(nèi)計算機可以看到,一共有2臺計算機加入了當前域。
8、查看域信任關系
nltest /domain_trusts
image.png
通過查看域信任關系可以判斷出當前域是否存在著林信任或是父子域信任,后續(xù)在跨域攻擊或者是跨林攻擊中會使用到。
9、查詢域密碼信息
net accounts /domain
image.png
通過查詢域密碼信息我們就可以知道當前域用戶多久修改?次密碼,密碼策略的是什么,就可以針對性的制定?份密碼字典,提高效率。
10、查看域內(nèi)時間(時間服務器)
net time /domain
image.png
通過查看域內(nèi)時間(時間服務器),我們得知了當前域的時間,我們就可以通過使用定時任務+IPC遠程連接的方式來運行?些bat文件,后續(xù)會詳細介紹,
11、查看域內(nèi)用戶組列表
net group /domain
image.png
Domain Admins:域管理員。
Domain Computers: 域內(nèi)機器。
Domain Controllers:域控制器。
Domain Guest: 域訪客,權限較低。
Domain Users: 域用戶。
Enterprise Admins: 企業(yè)系統(tǒng)管理員用戶。
在默認情況下,Domain Admins和Enterprise Admins對域內(nèi)所有域控制器有完全控制權限。
通過查看域的用戶組我們可以知道每個組具體是做什么的,比如說?些大型企業(yè)或者集團會有專門設有財務組、信息組、營銷組...等等,那么假設我們要針對于某個部門、某個組、在具體到某個人來進行滲透,那么搜集組信息就尤為關鍵了。
12、查看存在的用戶
dsquery user
image.png
常用的dsquery命令如下:image.png
13、域內(nèi)控制器的查找方式
1、通過nltest命令查找域控制器
nltest /dclist:hacker
image.png
可以看到當前域內(nèi)存在著兩臺域控制器,一臺為主控制器,一臺為輔域控制器。
2、通過查詢域內(nèi)時間
net time /domain
image.png
因為時間服務器一般為域控制器,我們也可以通過ping命令來獲取到域控制器的IP地址:
image.png
3、查看域控制器組
net group "Domain Controllers" /domain
image.png
4、查詢主域控制器
netdom query pdc
image.png
5、nslookup查詢
nslookup DC1.c1ay.lab
image.png
14、查看域管理員組
net localgroup administrators /domain
流量分析
wireshark使用
wireshark簡單的過濾規(guī)則
過濾 ip:
過濾源 ip 地址:ip.src==1.1.1.1;,目的 ip 地址:ip.dst==1.1.1.1;
過濾端口:
過濾 80 端口:tcp.port==80,源端口:tcp.srcport==80,目的端口:tcp.dstport==80
協(xié)議過濾:
直接輸入?yún)f(xié)議名即可,如 http 協(xié)議 http
http 模式過濾:
過濾 get/post 包 http.request.mothod=="GET/POST"
菜刀、蟻劍、冰蝎流量特征
菜刀特征
使用了base64的方式加密了發(fā)送給“菜刀馬”的指令,其中的兩個關鍵payload z1和z2,這個名字是可變的,請求中會有eval這個函數(shù)
蟻劍特征
默認的USER-agent請求頭 是 antsword xxx,但是 可以通過修改:/modules/request.js 文件中 請求UA繞過
其中流量最中明顯的特征為@ini_set("display_errors","0");這段代碼基本是所有WebShell客戶端鏈接PHP類WebShell都有的一種代碼
蟻劍混淆加密后還有一個比較明顯的特征,即為參數(shù)名大多以“_0x......=”這種形式(下劃線可替換),所以以_0x開頭的參數(shù)名也很可能就是惡意流量
冰蝎
看包沒有發(fā)現(xiàn)什么特征,但是可以發(fā)現(xiàn)它是POST請求的
1、Accept頭有application/xhtml+xmlapplication/xmlapplication/signed-exchange屬于弱特征(UA頭的瀏覽器版本很老)
2、特征分析Content-Type: application/octet-stream 這是一個強特征查閱資料可知octet-stream的意思是,只能提交二進制,而且只能提交一個二進制,如果提交文件的話,只能提交一個文件,后臺接收參數(shù)只能有一個,而且只能是流(或者字節(jié)數(shù)組);很少使用
#冰蝎2特征:
默認Accept字段的值很特殊,而且每個階段都一樣冰蝎內(nèi)置了十余種UserAgent ,每次連接 shell 會隨機選擇一個進行使用。但都是比較老的,r容易被檢測到,但是可以在burp中修改ua頭。
Content-Length: 16, 16就是冰蝎2連接的特征
#冰蝎3特征:
冰蝎3取消動態(tài)密鑰獲取,目前很多waf等設備都做了冰蝎2的流量特征分析,所以3取消了動態(tài)密 鑰獲??;php抓包看包沒有發(fā)現(xiàn)什么特征,但是可以發(fā)現(xiàn)它是POST請求的
1)Accept頭application/xhtml+xmlapplication/xmlapplication/signed- exchange屬于弱特征
2)ua頭該特征屬于弱特征。通過burp可以修改,冰蝎3.0內(nèi)置的默認16個userAgent都比較老。現(xiàn)實生活中很少有人使用,所以這個也可以作為waf規(guī)則特征
jsp抓包特征分析Content-Type: application/octet-stream 這是一個強特征查閱資料可知 octet-stream的意思是,只能提交二進制,而且只能提交一個二進制,如果提交文件的話,只能提交 一個文件,后臺接收參數(shù)只能有一個,而且只能是流(或者字節(jié)數(shù)組);很少使用。
Web攻擊類的流量告警處置
要按照不同的漏洞及危害程度進行研判和處置,一般方法是:
先看是不是攻擊,是的話,攻擊先封禁IP及端口,抑制攻擊繼續(xù)
再看有沒有成功,成功的話,確定造成的影響,進行恢復
如果是已經(jīng)淪陷的流量告警,如webshell通信(之前一定有webshell上傳)、源地址是內(nèi)網(wǎng)的攻擊(此主機可能已經(jīng)被攻擊拿下),需要進行溯源
發(fā)現(xiàn)一個SQL注入告警怎么判斷?
天眼告警頁面有一個詳情,可以打開具體的流量包,先看請求頭和請求體是否含有SQL注入常用的SQL語句,比如and 1=1 ,比如sleep,比如updatexml等,如果有的話,說明是攻擊,然后看響應,響應狀態(tài)碼為404這種情況,就是沒有利用成功,如果是響應碼是200,就看響應體內(nèi)容,看是否包含查詢出的預期結果,如果含有預期結果,則攻擊成功,處置的話,先申請封禁IP,然后向客戶申請對相關服務下架處理,然后對漏洞進行修復,如果被爆出了賬號,需要修改密碼。
應急
應急響應的六個過程?
準備 - 檢測 - 抑制 - 根除 - 恢復 - 跟蹤總結
中了病毒(或者挖礦病毒)、木馬如何處置應急?
得看是什么系統(tǒng),大體步驟都是差不多的
如果是Linux:
先隔離設備,然后登錄該主機
- 首先根據(jù)告警中的端口和域名排查出進程ID(PID),命令為netstat -ano
如果沒有端口或者通信ip信息,可以用top命令,列出當前cup占用率較大的可疑進程
- 根據(jù)查出的端口號定位文件后根據(jù)PID殺死進程
定位文件 ?ls -l /proc/端口號 ,結果中/proc/端口號/exe 鏈接到進程的執(zhí)行命令文件
殺死進程 ?kill -9 PID號
- 文件加密保存取證以后,刪除文件,使用殺軟掃描一下,看是否有殘余文件
- 找個文件沙箱(比如奇安信的TI系統(tǒng))跑一下提取到的病毒文件,看看會造成什么行為,根據(jù)行為進行修復
- 檢查是否留有可疑用戶、可疑文件、ssh登錄證書等后門,檢查定時任務
- 排查一下文件是如何被上傳的,大概率是web漏洞或ssh爆破上傳的
- 寫應急檢查報告
如果是Windows
1、首先根據(jù)告警中的端口和域名排查出進程ID(PID),命令為netstat -ano
如果沒有端口或者通信ip信息,可以用任務管理器,列出當前cup占用率較大的可疑進程
2、定位文件后根據(jù)PID殺死進程
定位文件 ?在任務管理器的詳細信息界面根據(jù)pid,右鍵打開文件位置
殺死進程 ?taskill /t /pid PID號
3、文件加密保存取證以后,刪除文件,使用殺軟掃描一下,看是否有殘余文件
4、找個文件沙箱(比如奇安信的TI系統(tǒng))跑一下提取到的病毒文件,看看會造成什么行為,根據(jù)行為進行修復
5、檢查是否留有可疑用戶、可疑文件、后門,檢查注冊表是否有殘余,檢查系統(tǒng)自啟動
6、排查一下文件是如何被上傳的
7、寫應急檢查報告
/etc/passwd與/etc/shadow區(qū)別
/etc/passwd 存賬戶信息一般不存密碼?
/etc/shadow主要用來存密碼
入侵排查思路
### 已經(jīng)被入侵
一、目的已經(jīng)達成,木馬,后門均已銷毀
1.既然知道被入侵,定位被入侵的時間點
2.如果這個服務器是云服務器,對其進行快照。(目的,封存內(nèi)存。)
3.當定位到時間點,查設備流量信息。找到木馬鏈接信息
4.查找系統(tǒng)內(nèi)對應的日志,找到相關線索
5.如果日志被刪除,因為機器快照已經(jīng)建立。使用Winhex對硬盤數(shù)據(jù)進行恢復
二、目的沒有達成,數(shù)據(jù)正在回傳。木馬,后門均在服務器上運行
1.下線服務器,封禁攻擊IP
2.Volatility 內(nèi)存取證 建立快照 提取內(nèi)存定位到shellcode找到他的IP
3.如果他們使用常見的C2的工具,我們可以根據(jù)流量分析出入侵者的意圖
4.關閉服務器,或者在防火墻上禁掉他們的IP。登錄服務器,對shellcode進行移除
5.重啟以后進入安全模式,排查注冊表 計劃任務 服務 放大鏡后門 shift后門
正在被入侵
可能入侵者在嘗試進行攻擊的時候,下線,然后對機器進行排查
比如:弱口令爆破
1.弱口令爆破會產(chǎn)生日志,日志一定要采用遠程日志系統(tǒng),例如Linux的rsyslog。開啟遠程日志系統(tǒng)的好處:不怕日志被攻擊者刪除
2.一定要找到入侵者的源IP,在防火墻下發(fā)阻斷策略
Linux系統(tǒng)排查思路
1、檢查用戶及密碼文件/etc/passwd、/etc/shadow 是否存在多余帳號,主要看一下帳號
后面是否是 nologin,如果沒有 nologin 就要注意;
2、通過 who 命令查看當前登錄用戶(tty 本地登陸 pts 遠程登錄)、w 命令查看系統(tǒng)
信息,想知道某一時刻用戶的行為、uptime查看登陸多久、多少用戶,負載;
3、修改/etc/profile的文件,在尾部添加相應顯示時間、日期、ip、命令腳本代碼,這樣輸入history命令就會詳細顯示攻擊者 ip、時間歷史命令等;
4、用 netstat -antlp|more命令分析可疑端口、IP、PID,查看下 pid 所對應的進程文件路徑,運行l(wèi)s -l /proc/$PID/exe 或 file /proc/$PID/exe($PID 為對應的pid 號);
5、使用ps命令,分析進程 ps aux | grep pid
6、使用 vi /etc/inittab 查看系統(tǒng)當前運行級別,通過運行級別找到/etc/rc.d/rc[0~6].d對應目錄是否存在可疑文件;
7、看一下crontab定時任務是否存在可疑啟用腳本;
8、使用chkconfig --list 查看是否存在可疑服務;
9、通過grep awk命令分析/var/log/secure安全日志里面是否存在攻擊痕跡;
10、chkrootkit、rkhunter、Clamav 病毒后門查殺工具對 Linux 系統(tǒng)文件查殺;
11、如果有 Web 站點,可通過 D 盾、河馬查殺工具進行查殺或者手工對代碼按腳本木馬關鍵字、關鍵涵數(shù)(evel、system、shell_ex
Webshell查找
Windows環(huán)境使用d盾
Linux環(huán)境使用河馬Linux
Cookie和Session的區(qū)別
cookie存放在本機,session存放在服務器文章來源:http://www.zghlxwxcb.cn/news/detail-476731.html
Cookie和Session都是用于跟蹤用戶的身份驗證和狀態(tài)的機制,但Cookie是在客戶端存儲數(shù)據(jù),而Session是在服務器端存儲數(shù)據(jù)文章來源地址http://www.zghlxwxcb.cn/news/detail-476731.html
到了這里,關于HVV面試問題整理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!