登录页面渗透测试思路与总结
这应该算是面试中出现率很高的一个问题了吧,今天还大体过了一遍渗透测试报告书写流程,比较简单,整体框架基本都是一样的,只是测试出的漏洞内容不同罢了,建议修改规范也差不多是固定的,就不写总结了。
我们在进行渗透测试的时候,常常会遇到许多网站站点,而有的网站仅仅是基于一个登陆接口进行处理的。尤其是在内网环境的渗透测试中,客户常常丢给你一个登陆网站页面,没有测试账号,让你自己进行渗透测试,一开始经验不足的话,可能会无从下手。今天就来简单说一下如何在只有一个登陆页面的情况下,来进行渗透测试。
扫描器扫描
在条件允许的情况下,我们可以拿在渗透测试的开始之前拿出我们的扫描器来进行扫描,目前我们最常用的就是AWVS和Nessus,Appscan
SQL注入
万能密码
'or 1=1 –
"or “a”="a等
或者随便输入用户名密码验证码登录,抓包,放在记事本里,sqlmap -r跑一下,级别调高一点
明文传输/用户名可枚举/爆破弱口令
明文传输
可能是我们做渗透测试中,最常见的一种漏洞,实际上它并不能算得上是一种漏洞,仅仅只能说是一种不足之处而已,明文传输在网站上随处可见,除了银行网站,很有可能每一个密码都是经过特殊加密然后再进行传输的。
用户名可枚举
此漏洞存在主要是因为页面对所输入的账号密码进行的判断所回显的数据不一样,我们可以通过这点来进行用户名的枚举,然后通过枚举后的账户名来进行弱口令的爆破。防御手段的话仅需要将用户名与密码出错的回显变成一样即可,例如用户名或密码出错。
爆破弱口令
弱口令可以说是渗透测试中,最最常见,也是危害“最大”的一种漏洞,因为毫无技术性,毫无新意,但是却充满了“破坏性”,尤其是在内网环境中,弱口令更是无处不在。Web页面最常用的爆破工具为Burp,我们通常使用Nmap扫描也可能扫出其他端口存在,例如3389,SSH等。
工具
Bruter
Burp
定制化爆破
定制化生成字典: http://tools.mayter.cn/
关键位置扫描
目录扫描
我们可以多级别扫描,在枚举子目录的目录,很多时候可以找到突破口
DirSearch
https://github.com/maurosoria/dirsearch
7kbscan
破壳
御剑:https://github.com/52stu/-
JS扫描
JS文件我们在渗透测试中也是经常用到的东西,有时候我们可以在JS文件中找到我们平时看不到的东西,例如重置密码的JS,发送短信的JS,都是有可能未授权可访问的。
JS扫描的话推荐使用JSFind: https://github.com/Threezh1/JSFinder
也会提取页面中的URL
nmap扫描
获取网站的端口信息
端口对应信息需要熟记
在扫描目录与JS这块,要注意多次爆破,遍历访问多级域名的目录与JS
框架与中间件漏洞
寻找CMS,或者网页框架,以及某些厂商的服务存在漏洞
wappalyzer插件
致远A8-getshell: https://www.cnblogs.com/dgjnszf/p/11104594.html
Thinkphp: https://github.com/SkyBlueEternal/thinkphp-RCE-POC-Collection
Struts2: https://github.com/HatBoy/Struts2-Scan
weblogic: https://github.com/rabbitmask/WeblogicScan
以及各大Java反序列化漏洞等等
补充 refer一般用于文件下载处的安全防范