一、环境搭建
apache环境创建Authorzation Basic验证目录
mkdir /admin
echo "this is admin web" > /admin/index.html
chown -R apache:apache /admin
ln -s /admin /var/www/html
修改apache配置文件/etc/httpd/conf/httpd.conf
Alias /admin/ "/var/www/html/admin/"
<Directory "/var/www/html/admin">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
authtype basic
authname "admin_web"
authuserfile /etc/httpd/conf/passwd.secret
require valid-user
</Directory>
使用htpasswd命令修改添加/etc/httpd/conf/passwd.secret文件,添加valid-user
[root@localhost ~]# htpasswd -c /etc/httpd/conf/passwd.secret bob
New password:
Re-type new password:
Adding password for user bob
[root@localhost ~]# cat /etc/httpd/conf/passwd.secret
bob:bo8Dqpvt3wnb.
访问页面,成功弹窗,名字为admin_web
二、burp抓包
随意输入一组密码抓包
将密文发送到Decoder,再用base64解密,发现密码是username:password的格式
再将上面的报文发送至Intruder,设置密文为变量
在Payloads选项卡中导入一组字典,如
j2deployer:j2deployer
ovwebusr:OvW*busr1
cxsdk:kdsxc
root:owaspbwa
ADMIN:ADMIN
xampp:xampp
tomcat:s3cret
QCC:QLogic66
admin:vagrant
tom:123456
bob:123456
mum:kdjkfjsk
cate:kjkndif
导入字典,添加base64加密,取消url-encode勾选
Intruder->Start attack跑出最终结果
再次发送至Decoder做base64解密得出密码
最后登录页面,进行验证
登录成功
三、一些思考
这个实验很像windows加密凭证登录的Pass The Hash的过程,主要通过将密码加密后传递给后端,从而进行身份认证,这种逻辑我们搞渗透测试必须熟记于心。Burpsuite给了我们很好的解决方案,这种情况会在很多环境中遇到,比如tomcat的页面爆破,因此需要熟练掌握。