如何找到sql注入漏洞?

JD *_*cks 6 php security sql-injection

有没有办法找到SQL注入漏洞?

注意:我问如何在您控制的服务器上找到它们,以便您可以修复它们.我不是在询问如何在别人的服务器上检测它们来利用它们.

有没有办法找到每一个mysql_query()没有打开每一页并做一个ctrl+f

Lek*_*eyn 10

使用linux,您可以使用该grep实用程序.

find /dir/containing/files -type f -name '*.php'|xargs grep --color=auto "mysql_query"
Run Code Online (Sandbox Code Playgroud)
  • /dir/containing/files:包含PHP文件的目录,例如/home/user/domains/example.com/public_html
  • -type f:仅搜索文件(不是目录)
  • -name '*.php'匹配.php仅以结尾的文件.如果你想匹配其他文件,比如.inc使用它:( -name '*.php' -o -name '*.inc'匹配*.php OR*.inc)
  • |xargs grep 使用找到的文件的内容进行搜索
  • --color=auto 突出显示找到的部分
  • "mysql_query" 您的搜索字词


sha*_*mar 6

不,没有简单的方法.如果有,它不是万无一失的.

话虽这么说,你应该看看这个问题/答案线程并应用它们.

对于搜索mysql_query(),您可以使用文本编辑器的文件搜索功能.我使用Notepad ++,它search-in-files可以搜索任何字符串,如mysql_query目录和具有特定扩展名(在您的情况下为.php)文件的子目录.

有截图为记事本++写的教程在这里.