• Stars
    star
    302
  • Rank 138,030 (Top 3 %)
  • Language
    JavaScript
  • Created over 5 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Proxy_Pool(代理资源池),一个小巧的代理ip抓取+评估+存储+展示的一体化的工具,包括了web展示和接口。

Proxy_Pool

Proxy_Pool,一个小巧的代理ip抓取+评估+存储+展示的一体化的工具,可自动化的搜集检测可用代理并进行评分,并添加了web展示和接口。

安装

1、从GitHub上脱下来,把代码放在web目录下。

git clone https://github.com/TideSec/Proxy_Pool

web服务器在unix/linux下可以用https://github.com/teddysun/lamp进行快速安装。

在windows下可以用phpstudy进行快速部署。

2、在mysql中新建数据库proxy,将proxy.sql文件导入,在include/config.inc.php中修改数据库密码。

3、此时本机访问http://ip:port,应该可以看到代理web展示界面

4、安装python2依赖库

pip install lxml
pip install requests
pip install pymysql

5、在py_proxy_task/config.py文件中配置数据库连接信息及其他参数。

使用

在py_proxy_task目录下有proxy_get.pyproxy_check.py两个程序,前者负责每天抓ip存进数据库,后者负责数据库中ip的清理和评估。

python proxy_get.py
# 等待上述程序抓取完结果后再运行评测程序
python proxy_check.py

之后按默认配置,这两个程序每天分别执行抓取和评估工作,放服务器上长期运行即可。

简介

原作者代码在这里:https://github.com/chungminglu/Proxy

我对部分代码进行了修改,完善了部分提取代理的解析代码,并加入了web展示和web接口,方便其他程序调用。

web页面我是从我的另外一个扫描器上改过来的https://github.com/TideSec/WDScanner/,里面可能有部分无用代码没有删除。

程序的几个功能:

1、每天从多个代理ip网站上抓下最新高匿ip数据。

2、经过筛选后的ip将存入数据库。

3、存入数据库的ip每天也要经过测试,存在剔除、评分机制,多次不合格的ip将被删除,每个ip都被评分,我们最终可以按得分排名获得稳定、低响应时间的优质ip。

web展示如下图所示:

web接口如下图所示:

参数设置

在py_proxy_task/config.py文件可进行代理评估参数的设置。

USELESS_TIME = 4   # 最大失效次数
SUCCESS_RATE = 0.8
TIME_OUT_PENALTY = 10  # 超时惩罚时间
CHECK_TIME_INTERVAL = 24*3600  # 每天更新一次

除数据库配置参数外,主要用到的几个参数说明如下:

  • USELESS_TIMESUCCESS_RATE是配合使用的,当某个ipUSELESS_TIME < 4 && SUCCESS_RATE < 0.8时(同时兼顾到ip短期和长期的检测表现),则剔除该ip。
  • TIME_OUT_PENALTY, 当某个ip在某次检测时失效,而又没有达到上一条的条件时(比如检测了100次后第一次出现超时),设置一个response_time的惩罚项,此处为10秒。
  • CHECK_TIME_INTERVAL, 检测周期。此处设置为每隔12小时检测一次数据库里每一个ip的可用性。

策略

  • 每天如下5个代理ip网站上抓下最新高匿ip数据:

    • mimi
    • 66ip
    • xici
    • cn-proxy
    • kuaidaili
  • N轮筛选

    • 收集到的ip集合将经过N轮,间隔为t的连接测试,对于每一个ip,必须全部通过这N轮测试才能最终进入数据库。如果当天进入数据库的ip较少,则暂停一段时间(一天)再抓。
  • 数据库中ip评价准则

    • 检测过程中累计超时次数>USELESS_TIME&&成功率<SUCCESS_RATE就被剔除。
      score = (success_rate + test_times / 500) / avg_response_time
      原来的考虑是score = success_rate / avg_response_time, 即:评分=成功率/平均响应时间, 考虑到检测合格过100次的老ip比新ip更有价值,检测次数也被引入评分。

关注我们

TideSec安全团队:

Tide安全团队正式成立于2019年1月,是以互联网攻防技术研究为目标的安全团队,目前聚集了十多位专业的安全攻防技术研究人员,专注于网络攻防、Web安全、移动终端、安全开发、IoT/物联网/工控安全等方向。

想了解更多Tide安全团队,请关注团队官网: http://www.TideSec.net 或关注公众号:

More Repositories

1

BypassAntiVirus

远控免杀系列文章及配套工具,汇总测试了互联网上的几十种免杀工具、113种白名单免杀方式、8种代码编译免杀、若干免杀实战技术,并对免杀效果进行了一一测试,为远控的免杀和杀软对抗免杀提供参考。
XSLT
3,720
star
2

WDScanner

WDScanner平台目前实现了如下功能:分布式web漏洞扫描、客户管理、漏洞定期扫描、子域名枚举、端口扫描、网站爬虫、暗链检测、坏链检测、网站指纹搜集、专项漏洞检测、代理搜集及部署等功能。
PHP
1,836
star
3

TideFinger

TideFinger——指纹识别小工具,汲取整合了多个web指纹库,结合了多种指纹检测方法,让指纹检测更快捷、准确。
Python
1,631
star
4

Mars

Mars(战神)——资产发现、子域名枚举、C段扫描、资产变更监测、端口变更监测、域名解析变更监测、Awvs扫描、POC检测、web指纹探测、端口指纹探测、CDN探测、操作系统指纹探测、泛解析探测、WAF探测、敏感信息检测等等
Ruby
1,087
star
5

FuzzScanner

一个主要用于信息搜集的工具集,主要是用于对网站子域名、开放端口、端口指纹、c段地址、敏感目录等信息进行批量搜集。
Ruby
936
star
6

GoBypassAV

整理了基于Go的16种API免杀测试、8种加密测试、反沙盒测试、编译混淆、加壳、资源修改等免杀技术,并搜集汇总了一些资料和工具。
Go
836
star
7

Tide

目前实现了网络空间资产探测、指纹检索、漏洞检测、漏洞全生命周期管理、poc定向检测、暗链检测、挂马监测、敏感字检测、DNS监测、网站可用性监测、漏洞库管理、安全预警等等~
773
star
8

Decrypt_Weblogic_Password

搜集了市面上绝大部分weblogic解密方式,整理了7种解密weblogic的方法及响应工具。
Java
690
star
9

web_pwd_common_crack

通用web弱口令破解脚本,旨在批量检测那些没有验证码的管理后台,可用于刷分~
Python
342
star
10

Peach_Fuzzing

在学习使用peach进行模糊测试时,搜集到的一些不错的资料,以及配套的一些软件或脚本。
C
271
star
11

Papers

近几年的一些文章和工具
147
star
12

Common_Spider

一个还算通用的爬虫脚本,可自己设定爬取的深度,可以把动态页面和外链单独分出来~
Python
57
star
13

TDScanner

自动化检测小工具,主要实现了域名枚举、链接爬取、注入检测、主机扫描、目录枚举、敏感信息检测等功能~
Python
54
star
14

TideWave

潮涌web漏洞自动化挖掘平台——自动化扫描全网或特定范围web资产,之后获取指纹信息、爬取页面url并提炼,最后进行特定payload测试。
47
star
15

TideInspire

移动端安全管控平台——移动应用基本信息检测、恶意行为检测、安全规范检测、渠道监测、钓鱼伪造监测、通报预警服务等
20
star
16

TideRadar

TideRadar工业互联网安全监测平台
10
star
17

TideSec

8
star