找回密码
 注册帐号
查看: 2241|回复: 0

使用Python编写您的第一个简单的SQL注入检查漏洞

[复制链接]

1400

主题

46

回帖

6880

积分

版主

发表于 2017-5-27 23:07:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册帐号

×
今天我们正在制作一个Python MySQL SQL注入检查工具。 这就是为什么我们命名它用Python it代码您的第一个简单的SQL注入检查漏洞

它将仅在使用网站的GET参数上工作。
你将需要:
- Python 3.4
- 网络连接
- 一个脆弱的网站
- 具有Windows或Linux的计算机
如果您还没有安装Python,请从以下链接下载:
Python基础知识
Python是用C编写的,它是黑客工具最简单的编程语言之一,它包含很多非常有用的lib,今天我们将使用其中的1个,
查找网站进行测试
您可以使用简单的SQLi dorks(如inurl:“index.php?cat_id =”)轻松找到一个用于测试的网站。 您可以在网络上找到易受攻击的网站转储。
一步一步使用Python编写您的第一个简单的SQLi检查漏洞:
在开始编码之前,制作一个新的.py文件。
导入主库
这一次我们将使用sys,urllib和urllib.request模块,因此通过使用import sys,urllib,urllib.requestimport sys导入这些模块,在新行中导入urllib导入urllib.request
说明: 'import'用于导入库,如urllib或os,system。
选择输入类型
现在我们需要选择输入类型,第一个是很简单的,另一个更难。 这一次我们将使用第一个,但它不会影响其他代码行。
1)使用输入(“”)命令获取用户输入。 这一次将是:
fullurl = input(“请指定完整的易受攻击的URL:”)
说明:' variable = input(“Input:”)'将var'变量'设置为用户输入,“Input:”是用户在输入行看到的文本。
2)使用参数指定数据:
在sys.argv中的carg:
如果carg ==“-w”:
argnum = sys.argv.index(carg)
argnum + = 1
fullurl = sys.argv [argnum]
说明: '如果'是一个众所周知的宏观景象。 现在,我们使用它来确定curent arg,其他行 - 表示第二个参数'in' - 检查字符串中是否有指定的文本。
编写程序以进行Web请求
这是最重要的部分。
resp = urllib.request.urlopen(fullurl +“= 1 \'或\'1 \'= \'1 \”'“)
body = resp.read()
fullbody = body.decode('utf-8')
说明: resp变量设置为请求响应,身体 - 响应文本,全部 - 解码的请求文本,'+'是Python上的加法变量,\是转义字符。
使程序检查目标是否易受攻击
现在,一旦得到响应,我们必须检查它是否包含SQL错误。
我们将使用这个代码:
如果“您的SQL语法中有错误”在fullbody中:
print(“网站是经典的SQL注入易受攻击”)
其他:
print(“网站不是经典的SQL注入易受攻击”)
说明:我们使用'if'宏来检查响应中是否有指定的文本。
扫描仪具有第一种类型的获取用户输入
与第二类型
那是啊,就是这样!
保存文件,打开cmd并运行'python filename.py'并输入请求的信息,如果您使用第二种方法,请使用'python filenamy.py -w网站'。 它将检查该网站的脆弱性
复制的代码可能无法正常工作,请将其重写为文件🙂
如果您的语法错误
当选项卡出现问题时,会出现意外的缩进
语法问题大多出现在宏问题上。 如果发生此错误,请检查您的宏有效性。
如何防止简单的SQL注入
如果非常简单,防止SQLi ON MYSQL。 只需使用mysql_real_escape字符串进行查询,例如:
$ query = sprintf(“SELECT * FROM users where user ='%s'AND password ='%s',
mysql_real_escape_string($用户名)
mysql_real_escape_string($密码)

哎...今天够累的,签到来了1...
您需要登录后才可以回帖 登录 | 注册帐号

本版积分规则

Archiver|sitemap|小黑屋|手机版原版|安全之家

GMT+8, 2025-4-11 05:32 , Processed in 0.029947 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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