这里有一个渗透测试辅助工具资源库

这是一个提供渗透测试辅助工具(pentest-tool)、资源文件的一个项目。

这里有一个渗透测试辅助工具资源库

辅助工具

提供轻量级的易扩展的工具,可以快速编写exploit、添加漏洞验证/扫描规则、添加指纹规则、爆破规则等;包含以下功能:

  • Exploit系统。易扩展的exploit系统,能够使用API快速编写exploit,能够批量执行exploit
  • 子域名爆破。爆破子域名,使用域传送、DNS爆破、GoogleHacking进行子域名爆破
  • C段扫描。C段扫描,支持生成html格式输出文件
  • 服务端应用识别。识别CMS类型、Web服务器、操作系统、WEB中间件等
  • URI敏感资源爆破。爆破WEB敏感文件,整站备份、配置备份、敏感文件等
  • 社工密码字典生成。根据社工信息生成密码爆破字典
  • Google Hacking。GoogleHacking,生成URL字典
  • 编解码等功能。支持非常丰富的编解码方式,方便做payload编码

资源文件

各种渗透测试常用的资源文件,包括各种爆破字典exploitwebshell攻击payload等。

安装

pentestdb中提供的渗透测试资源可以直接使用,但pentest-tool需要安装到系统中。安装过程如下:

pentestdb支持Windows/Linux/MacOS,需使用python 2.6.x 或 2.7.x运行

注:

在一些系统中,安装lxml会出现编译错误,此时可到这里下载安装包,通过手动安装方式安装。

解决nmap依赖

项目中的C段扫描依赖于nmap扫描器

这里下载nmap相应版本

在windows下需要设置环境变量,让系统能够找到nmap.exe。

使用

项目中的python-tool工具提供用有用的渗透辅助功能。

Exploit系统

pentest-toolexploit子命令提供了exploit模块相关操作,exploit模块是一个轻量级的exploit框架,可以编写各种web漏洞的exploit:

  • 搜索exploit信息
  • 增加、删除、修改exploit信息
  • 执行某个exploit
  • 搜索并批量执行exploit

exploit保存在项目根目录下的exploit目录下

例如:

注:有关exploit模块的详细信息请参考exploit/readme.md

服务端应用识别

pentest-toolservice子命令提供了服务端应用识别的功能,能够识别服务器信息,包括:

例如:

社工密码字典生成

pentest-toolpassword子命令提供了根据社工信息生成密码字典的功能,能够设置不同关键字生成密码字典

该模块可通过以下要素组合生成密码:

  • 全名,--fullname,名字中各个字中间加空格,例如"lin zhi ling"
  • 昵称,--nickname
  • 英文名称,--englishname
  • 伴侣名字,--partnername
  • 生日,--birthday
  • 手机号,--phone
  • QQ号,--qq
  • 公司名称,--company
  • 域名,--domian
  • 老密码,--oldpasswd
  • 关键字,--keyword
  • 关键数字,--keynumbers

例如:

URI敏感文件爆破

pentest-tooluribrute子命令提供了URI敏感文件爆破,URI爆破字典生成的功能

例如:

Google Hacking功能

pentest-toolsearch子命令提供了Google Hacking的功能,目前支持以下搜索引擎:

  • bing
  • google
  • baidu

例如:

注意,由于百度关闭了 localsearch 功能,因此目前 baidu 方式目前暂不可用。

子域名爆破

pentest-tooldomain子命令提供了子域名爆破功能:

该模块使用3种技术进行子域名爆破:

  • 域传送漏洞检测、利用
  • DNS字典爆破
  • Google Hacking搜索

注:支持输出到html文件,使用*-o xxx.html*做为输出文件即可

例如:

C段扫描

pentest-toolsubnet子命令提供了C段扫描功能。

注:支持输出到html文件,使用*-o xxx.html*做为输出文件即可

例如:

编码

pentest-toolencode子命令提供了编码的功能

编码方式*-t/--type*支持:

url url-all hex decimal unicode unicode-all md5 sha base64 base32 html html-all php-chr utf7 utf7-all

其中**-all编码会编码所有字符包括非特殊字符

非ASCII编码*-m/--method*支持:

utf8 gbk gb2312 big5 utf16 utf7 等所有python支持的编码方式,具体请参考如下链接:python支持的编解码格式

例如:

解码

pentest-tooldecode子命令提供了解码的功能,并提供非ASCII编码编码推测功能

解码方式*-t/--type*支持:

auto(默认) hex url unicode decimal base64 base32 html php-chr utf7

其中auto方式会自动检测url类型、hex类型的字符串并进行解码

非ASCII编码*-m/--method*支持:

utf8 gbk gb2312 big5 utf16 utf7 等所有python支持的编码方式,具体请参考如下链接:python支持的编解码格式

例如:

文件处理功能

pentest-toolfile子命令提供了常用的文件操作,包括:文件查看、文件编码推断、文件类型转换、文件hash计算、文件图片隐藏(制作php图片木马)

使用*--list*查看支持的文件编码转换格式:

utf-32le utf-32le-bom utf-32 utf-32-bom utf-32be utf-32be-bom utf-16be utf-16be-bom utf-8 utf-8-bom utf-16 utf-16-bom utf-16le utf-16le-bom gbk gb2312 big5 ...

例如:

Mail账户验证/爆破

pentest-tool中的pen-mail提供简单的Mail账户验证、爆破功能:

例如:

字典维护

pentest-tool中的pen-wordlist提供了字典文件维护的功能,包括:

  • 将多个字典文件merge到数据库中
  • 对每个字典项进行打分计算
  • 按照评分高低导出字典文件

例如:

user-passwd字典

  • password:目录包含密码字典文件
  • user:目录包含用户名字典文件
  • dns字典:dns爆破字典
  • directory字典:web目录爆破字典,详见相关目录readme.md文件
  • attack-payload:各种攻击payload字典,详见相关目录readme.md文件
  • webshell:webshell收集,详见相关目录readme.md文件
  • script:常用脚本
  • exploit:一些有用的exploit,详见相关目录readme.md文件
  • N/A