當前位置:
首頁 > 新聞 > 滲透技巧——PPTP口令的獲取與爆破

滲透技巧——PPTP口令的獲取與爆破

0x00 前言

PPTP(即點對點隧道協議)可以使遠程用戶通過撥入ISP訪問企業內網。

在滲透測試中,如果獲得了用戶的PPTP口令,就能遠程撥入內網,做進一步滲透。

本文將要介紹命令行下導出PPTP配置信息和口令的方法,開源PPTP口令爆破的腳本。

0x01 簡介

本文將要介紹以下內容:

·Windows系統命令行下PPTP配置信息和口令的獲取

·Windows系統命令行開啟和關閉VPN連接

·Windows系統連接PPTP的方法和細節

·Kali系統連接PPTP的方法和細節

·PPTP口令爆破的腳本細節

0x02 Windows系統命令行下PPTP配置信息和口令的獲取

1、獲取PPTP配置信息

Windows系統撥號和寬頻連接的配置信息存儲在固定位置,路徑如下:

%APPDATA%MicrosoftNetworkConnectionsPbk
asphone.pbk

查看該文件即可獲得PPTP連接的配置信息,包括伺服器IP,不包含連接用戶名和口令

VPN連接的名稱為VPN Connection,如下圖:

PhoneNumber表示連接的伺服器IP,如下圖:

2、獲得內網IP

ipconfig

獲得內網IP,如下圖

3、獲得PPTP口令

使用工具mimiaktz,命令如下:

mimikatz.exe privilege::debug token::elevate lsadump::secrets exit

獲得連接用戶名和口令,如下圖:

4、命令行下連接VPN

rasdial "VPN Connection" zhaodg oZ7iFk25

如下圖:

5、命令行關閉VPN連接

rasphone -h "VPN Connection"

0x03 Windows系統PPTP連接的方法和細節

1.如下圖所示:

2.如下圖所示:

3.如下圖所示:

4.選擇創建新連接

5.填入伺服器IP,選中稍後連接

6.填入用戶名口令

7.點擊連接後,選擇跳過

接下來修改VPN屬性,Security->Type of VPN,選擇Point to Point Tunneling Protocol(PPTP)

註:創建成功後,指定Point to Point Tunneling Protocol(PPTP)可縮短連接等待的時間

8.連接

0x04 Kali系統PPTP連接的方法和細節

方法1:通過界面

1.安裝

apt-get install network-manager-pptp network-manager-pptp-gnome

2.Settings->Network->VPN

3.Identity->Advanced...

去掉PAP,CHAP,EAP

選擇Use Point-to-Point encryption(MPPE)

註:如果無法連接,修改文件/etc/NetworkManager/NetworkManager.conf

managed=false修改成managed=true

重啟系統

方法2:通過pptpsetup

1.連接

遠程IP為192.168.0.1,如下圖

2.修改路由表

將默認路由表修改為遠程IP

route del defaultroute add default gw 192.168.0.1

0x05 PPTP口令爆破

PPTP伺服器默認開放1723埠

1、PPTP brute forcer

源代碼:

https://github.com/BlackArch/thc-pptp-bruter

kali默認支持

通過字典爆破的命令如下:

cat wordlist | thc-pptp-bruter -u zhaodg

如下圖

註:PPTP搭建於centos

2、編寫python腳本實現

有些設備的PPTP無法使用PPTP brute forcer進行爆破

於是嘗試使用python調用pptpsetup實現

通過os.popen執行命令,測試代碼如下:

測試過程中出現bug:

如果登錄成功,進程pptp不會退出,導致腳本阻塞,無法獲得回顯。

只有結束進程pptp後,才能獲得回顯。

所以這裡需要使用子進程的方式實現:子進程執行pptpsetup命令,父進程不等待。

隨之產生新的問題:如何獲得子進程的結果,判斷是否登錄成功。

這裡選擇一個簡單直接的方法:等待10秒,然後執行ifconfig,如果登錄成功,會產生新的網卡設備ppp0,否則,當前用戶名口令錯誤。

登錄成功後,選擇清理進程,執行命令:

pkill pptp

清除連接信息:

pptpsetup --delete testvpn

完整代碼可參考:

https://github.com/3gstudent/Homework-of-Python/blob/master/pptp_password_hack.py

代碼會讀取文件wordlist,獲得口令字典,對指定IP嘗試連接,連接成功後記錄口令,清除進程和連接

測試如下圖:

0x06 小結

本文介紹了命令行下導出PPTP配置信息和口令的方法,通過命令行能夠實現開啟和關閉VPN連接。

實例演示了Windows和Kali系統連接PPTP的方法,最後開源了調用pptpsetup實現PPTP口令爆破的腳本,分析腳本實現細節。


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

美國政府最新技術警報:警惕朝鮮黑客組織Hidden Cobra正在使用的兩款RAT和蠕蟲病毒
利用機器學習&AI判定未知惡意程序

TAG:嘶吼RoarTalk |