CTF综合测试:
知识点:
nmap扫描结果:nmap -A -v T4 IP
nikto扫描结果:注意有config.php\login.php\icons/README
dirb扫描结果:发现一个uploads上传文件目录。
有思路了,msf启动exploit/multi/handler监听,利用上传漏洞,上传反射shell文件,点击运行。
接下来分析扫描结果:
发现有ftp、ssh、http
先访问一下login.php
接下来,注意利用漏洞弱点:
登录界面是否存在SQL注入
敏感信息是否泄漏
已知漏洞:CMS\SMS\wordpress
backup.zip等备份文件,解压密码查询,解压后查看文件类型命令file
在登录界面, 一定要尝试弱口令123456、admin、root,toor等
在本例中,没有弱口令。
思路:查看页面源代码(特别要注意注释语句,script语句),之后利用burpsuite进行fuzz测试,绕过登录验证机制
再用web模糊测试字典,位置在/usr/share/wordlists/wfuzz
本例中:源代码有script,如下
分析上述脚本,发现没有sql注入过滤,而且用户名必须以@btrisk.com结尾
我的做法:是构造用户名[email protected],密码:' or '1=1 或者 ' or 1=1 -- ',均可以实现SQL注入
成功后看到的界面如下:有已交文件按钮
另外一种做法:
利用burpsuite,拦截用户名、密码,进行fuzz测试。
根据返回页面的不同,判断成功页面和失败页面,进而确定探测出正确密码。
本例中使用:/usr/share/wordlists/wfuzz/Injections/SQL.txt字典
首先开启浏览器的代理proxy
回到登录界面login.php,输入用户名btrisk.com,密码随便输入123456
确认burpsuite的proxy标签下,intercept is on,在登录界面点击登录按钮,此时burpsuite进行拦截
点击“ACTION”,选择“send to intruder”进行测试
在intruder标签下,选择“position”标签,定义变量;选择“payloads”标签,payloads type选择Runtime file ; “select file”设置为我们刚才选好的SQL.txt
都选好后,选择菜单“intruder”-》“开始攻击”
根据返回登录信息长度判断,有可能登录成功的信息,2900可能,2044,2203都是不能登录的。排序。通常认为,极少数的length值对应的是能够成功登录的。
选中相关信息,response->render,我的不成功。可以选择弹出菜单,在浏览器中浏览“show response inbrowser”,注意要先关闭proxy中的intercept off。如下图,出现了,“选择文件”按钮。
创建1.jpg、1.php,尝试在新绕过验证的界面中上传,发现php文件是不能够上传的。
这是需要进一步利用burpsuite进行截断
先把1.php文件,改成可以上传的文件格式如:shell1.jpg,此时要保证burpsuite的proxy的intercept off
在上传页面选择shell1.jpg上传。上传确定之前,要把burpsuite的proxy的intercept on
点击上传,此时,butpsuite可以截断数据包,在“proxy”下的“inception”标签下,把数据包中的file进行改名,改为shell1.php,点击forward,发送,回到浏览器,发现上传成功!!!!
到upload目录,验证是否上传成功
这是个思路。
生成木马shell,把php文件改名成jpg后上传,burpsuite截断,再改名上传
msfconsole启动监听,远程访问木马shell,建立连接。渗透成功!!!
常见操作如下:
在本例中,可以用nikto、dirb扫描到一个config.php的配置文件,渗透成功后,可以浏览该文件,看到mysql的用户名、密码和数据库。
mysql -u root -p -h localhost
deneme数据库:如下
可以看到带*的数据,猜测可能是密码。试一下asd123***,居然是root密码!!!!!!
全部搞定。