NineOnee

导航

 

bug

知识点

apache文件解析漏洞

多后缀名

php支持多种后缀名,如test.html.achc,由于不认识achc后缀,继续往前读,读到html,才知道这是html文件

罕见后缀

原来不仅php,就连phtml、pht、php3、php4和php5都是Apache和php认可的php程序的文件后缀

.htaccess

在.htaccess文件中写入

AddType application/x-httpd-php xxx

就成功地使该.htaccess文件所在目录及其子目录中的后缀为.xxx的文件被Apache当做php文件

在.htaccess文件中写入

  <FilesMatch "shell.jpg">
    SetHandler application/x-httpd-php
  </FilesMatch>

该语句会让Apache把shell.jpg文件解析为php文件。

做题

进去网站,先将所有的界面功能流程走一遍,知道具体的运行机制,然后对每个有表单的地方用sqlmap扫一下,发现没有sql注入漏洞。在manage界面提示不是admin,不能进去,看来是要我们成为admin,怎么成为admin呢,sql注入漏洞又没有,做到这就不会了

思路一

在findwp界面,我们可以通过bp发现分为两步

第一步是先对输入的信息进行验证,验证信息的方式是username和birthday和address在数据库中存在,然后才会进入第二步


第二步,显然username是要改密码的账户,newpwd是新密码,我们可以通过抓包,改包,将username改成admin,然后新密码我们又知道就可以登录admin用户了

思路二

我们在登录成功之后,服务器给我们返回了一个cookie,之后我们带着cookie去访问页面,服务器就能识别我们的身份了


我们尝试对cookie进行解密,这是个md5加密,解密后是5:123456

这不就是返回给我们的Uid加上用户名嘛,我们直接进行cookie伪造,1:admin,再md5加密,为什么是1(猜的),当然也可以用bp暴力破解,在payload proccess区域添加md5加密就行。

改cookie时也要把uid改成1,回显


然后我们再去改密码。登陆admin

登陆进去之后,manage页面,根据提示ip,加个x-forwarded-for,来绕过,然后再根据提示<!-- index.php?module=filemanage&do=???-->,访问。看来是要我们猜了,filemanage文件管理有什么内容呢,猜测upload,download,write,read等,在upload时猜对了,然后就是文件上传


管他三七二十一,直接把能改的全改掉,然后还是没有成功,就改后缀,改到php4和php5回显flag

总结

拿admin权限,又多了两种方法,除了爆数据库,还有cookie伪造,以及修改密码那里看有没有分两步进行,然后利用该漏洞
参考博客!https://blog.csdn.net/qq_32434307/article/details/79480316

posted on 2020-11-02 21:41  NineOne_E  阅读(94)  评论(0编辑  收藏  举报