代理池工具測試和後續利用
文章來源|MS08067 Web漏洞挖掘班 第3期
本文作者: Cream (web漏洞挖掘班講師)
本文章僅當做教學和學習交流之用,請勿使用文中工具做非法測試!文中有不當之處,煩請指出,謝謝!
安全演練和某些特殊場景下均需要代理池來輔助測試,代理池可以理解多個代理IP的集合。代理池的目的是防止被封鎖,其基本的工作機制是從各大代理網站抓取免費IP或者以購買的方式獲取,將這些IP集合存放在數據庫或者文本中,後續的步驟就是測試有效性和後續利用。
文章中主要測試的工具是 proxy_pool ,其主要功能為定時採集網上發佈的免費代理驗證入庫,定時驗證入庫的代理保證代理的可用性,提供API和CLI兩種使用方式。其中CLI模式主要用於擴展代理源以增加代理池IP的質量和數量,API模式主要用於調用代理池的IP源,其返回值是JSON格式,後續使用需要處理。
工具鏈接:
https://proxy-pool.readthedocs.io/zh/latest/
測試使用:
#下載工具
git clone git@github.com:jhao104/proxy_pool.git #或者在releases 中下載均可。
cd proxy_pool
#安裝依賴:
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
#測試
python proxyPool.py -h
Bash
按需求修改配置文件setting.py
HOST = "0.0.0.0"
##這裏是當前監聽的主機IP,可直接使用0.0.0.0。
PORT = 5010
###監聽的端口,主機內不衝突就行。
DB_CONN = 'redis://:@127.0.0.1:6379/0'
##代理池使用的數據庫所在的位置,可支持Redis和ssdb,修改的方式如下:
######Redis: redis://:[email protected]:port/db
######Ssdb: ssdb://:[email protected]:port
###我本地Redis沒有設置密碼,不寫即可
# proxy table name
TABLE_NAME = 'use_proxy'
# ###### config the proxy fetch function ######
PROXY_FETCHER = [
"freeProxy01"
,"freeProxy02"
,"freeProxy03"
,"freeProxy04"
,"freeProxy05"
,"freeProxy06"
,"freeProxy07"
,"freeProxy08"
,"freeProxy09"
,"freeProxy10"
]
Bash
在github上也寫的很清楚,具體也參考 README.md
另外也可以使用docker來運行該環境:
docker pull jhao104/proxy_pool#拉取鏡像資源
docker run --env DB_CONN=redis://:password@ip:port/0 -p 5010:5010 jhao104/proxy_pool:2.4.0#運行環境,注意修改redis的信息
Bash
收集IP資源:python proxyPool.py schedule
注意在收集IP的時候要開啟Redis服務器。等獲取一段時間後可查看Redis數據保存情況。
調用代理池中IP:python proxyPool.py server
http://target_IP:5010,頁面顯示內容如下,其中使用不同的參數得到的處理結果。
另外在獲取代理IP時可以過濾掉HTTPS的代理:?type=https,具體的介紹不多説,可以參考reedme.md.
代理池測試:使用如下github提供的Python測試代碼(做了一點修改!)
# -*- coding: utf-8 -*-
from pip import main
import
requests
def get_proxy():
return requests.get("http://127.0.0.1:5010/get/").json()
def delete_proxy(proxy):
requests.get("http://127.0.0.1:5010/delete/?proxy={}".format(proxy))
# your spider code
def getHtml():
# ....
retry_count = 5
proxy = get_proxy().get("proxy")
while retry_count > 0:
try:
html = requests.get('http://1XXXXXXXX.48/', proxies={"http": "http://{}".format(proxy)})
print("使用"+proxy+"請求成功!!!")
# 使用代理訪問
return
htmlexcept Exception:
retry_count -= 1
# 刪除代理池中代理
delete_proxy(proxy)
return None
getHtml()
Python
注意:http://1XXXXXXXX.48/是VPS服務器,並開啟日記記錄功能。python proxy_test.py
可知當前的請求是113.125.152.179:8888,也即意味着當前的請求使用的IP是它。在API接口終端可以看到請求的記錄,如下所示。
打開apache 的日誌文件查看請求情況。
到這裏就可以感受到代理池的基本功能,好多網絡爬蟲就是使用代理池,在HVV中掃描目錄、SQLmap注入等場景下都需要使用代理池。瀏覽器中如果要使用代理池呢?需要一箇中間工具將代理池的IP再次代理到瀏覽器中,這裏大家使用或者測試的工具有A utoProxy 和JCRandomProxy。
Auto Proxy 是一個自動切換代理的一個瀏覽器插件, 專為測試人員使用,資源地址: https://github.com/cleverbao/AutoProxy
JCRandomProxy是配合proxy_pool項目開發的圖形化代理工具,目前支持Win、Linux和MAC,最新版本是3.3.6,資源地址: https://github.com/chroblert/JCRandomProxy
本次測試是第一個工具—Auto Proxy
下載該程序解壓並添加到瀏覽器中
設置代理池代理:
配置中心
代理池代理:將 http://127.0.0.1:5010/all/ 設置遠程地址中,並測試
配置成功之後,點擊面板中的“隨機代理”即可刷新使用的代理:
注意:收集過來的代理可能不是很穩定,如果無法使用可以點擊面板中的“刪除代理”。
其他項目:
https://github.com/iamhmx/MXProxyPool
https://github.com/jhao104/proxy_pool
https://github.com/xiaobeibei26/dynamic_ip_pool
https://github.com/henson/proxypool
擴展學習小建議:
測試文中提到的第二個工具;
思考如何將代理池如何應用到目錄掃描工具或者某些漏掃工具中(直接動手操作吧)?
Web漏洞挖掘第3期
1.27 號 開班報名中~
第三期,主要突出了學員最關心的“實戰打靶”練習,第三期我們新增加了快速打點方法+腳本思路、打靶機模擬實戰等內容,並配備了專門的“實戰靶場”以供同學們練習!
最新課程目錄3 .0版
*大綱僅作為參考,會根據當期進度有所變化(加客服獲取高清課程導圖)
課程費用
每期班定價 2499 , 新年價: 1999 ( 前30名送399元Web安全知識星球名額 )
每個報名學員都可享受一次後續任意一期課免費重聽權益 ,一次沒學懂就再來一遍,後續培訓可任選一期來聽。請有意參加培訓的學員抓緊報名!
凡是MS08067旗下任意星球學員或其他培訓課程學員,可享內部VIP價 17 99 ;
支持支付寶、信用卡、花唄分期,對公轉賬,可開發票!
第二期班部分學員作業
越權漏洞實戰之從越權到越軌
fastjson-cnvd-2017-02833漏洞復現
CVE-2020-2551攻擊實錄
逆向漏洞POC 一條龍
泛微 e-office v9.0任意文件上傳漏洞(CNVD-2021-49104)
聊一聊我是如何學習網絡安全的(入門階段)
使用burp插件captcha-killer識別圖片驗證碼(跳坑記)
Grafana 任意文件讀取漏洞
上課時間
開課時間1月27號 ,每週二天課,共8周21節課(42小時)
週四:19 : 30-21:30
週六: 14:00-18:00
如果無法準時參加直播課程,在線培訓的每節課程都會被錄製成視頻上傳到學員區,可隨時下載觀看。上課方式
的形式,無需等待,報名後立即進入“ Web安全 ”星球開始預習。

你距離大佬,只差一個決定
報名諮詢請聯繫小客服
掃描下方二維碼加入星球學習
加入後邀請你進入內部微信羣,內部微信羣永久有效!
來和5000+位同學一起加入星球學習吧!
- 五種免殺bypass火絨360姿勢橫向測評:哪款更適合你?
- 從火絨特徵碼識別到免殺的思考...
- Web漏洞挖掘班作業 | 輕鬆把玩越權訪問漏洞
- 漏洞賞金獵人成長系列(二) - 賞金獵人的獨特偵查方法
- 漏洞賞金獵人成長系列(一) - 賞金獵人的發展,前景,特點
- 代理池工具測試和後續利用
- 紅隊作業 | 社會工程學實踐 之 手把手教你釣魚
- 紅隊作業 | 免殺Meterpreter java馬
- 紅隊作業 | 收集xxx.com域名的所有子域名
- RunC漏洞導致容器逃逸(CVE-2021-30465)
- ⼀款新的C2攻擊⼯具-Link
- 安全練兵場Writeup(五) | ATT&CK實戰靶場
- fastjson-cnvd-2017-02833漏洞復現 | Web漏洞挖掘班作業
- 經驗分享 | 聊一聊我是如何學習網絡安全的(入門階段)~
- 紅隊作業 | MSF源碼級別免殺實錄
- 靶場Writeup(四) | 反序列化、命令執行、Tomcat、域滲透等漏洞組合到攻克域控
- VMware vCenter Server 任意文件上傳漏洞復現 CVE-2021-22005
- 最後上車的機會 | 今晚7點半準時發車
- 實戰ATT&CK攻擊鏈路--靶場Writeup(一)
- 阿青姐姐教你:微服務⽹關與devops在⽹絡滲透的運⽤