博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 字符串拼接 sql ,造成 sql 注入例子
阅读量:5344 次
发布时间:2019-06-15

本文共 846 字,大约阅读时间需要 2 分钟。

简单的 userinfo 表

1334255-20181212150401034-473704378.png
字符串拼接 sql

import pymysql# 测试环境的数据库连接conn = pymysql.connect(host='192.168.0.214', port=3306, user='root', passwd='123456', db='tmpdb')cursor = conn.cursor()# 字符串拼接sql,用户名和密码都是乱写sql = 'select username, password from userinfo where username="%s" and password="%s"'sql = sql %('yy" or 1=1 -- ', '11111')cursor.execute(sql)r = cursor.fetchone()print(r)cursor.close()conn.close()# 运行结果,正确取到数值('klvchen', '123456')

正常的写法

# __author__:"klvchen"# date: 2018/12/12import pymysqlconn = pymysql.connect(host='192.168.0.214', port=3306, user='root', passwd='123456', db='tmpdb')cursor = conn.cursor()cursor.execute('select username, password from userinfo where username=%s and password=%s', ('yy" or 1=1 -- ', '11111'))r = cursor.fetchone()print(r)cursor.close()conn.close()# 运行结果,没有取到数值None

转载于:https://www.cnblogs.com/klvchen/p/10108466.html

你可能感兴趣的文章
centos给文件夹改变所有关系
查看>>
Android LCD
查看>>
FreeRTOS之全配置项详解、裁剪(FreeRTOSConfig.h)
查看>>
ARM的启动代码(1):介绍(转)
查看>>
九度 1479:移位和旋转
查看>>
前后台交互,使用ajax传输参数,可是没有跳转到后台的路径中
查看>>
django 获取request请求对象及response响应对象中的各种属性值
查看>>
[2] 智能指针
查看>>
[cf557d]Vitaly and Cycle(黑白染色求奇环)
查看>>
【C#】#if DEBUG 与 如何更好更快的debug
查看>>
AngularJS中转换响应内容
查看>>
STM32学习笔记(四) RCC外设的学习和理解
查看>>
Android™ 1.5 android.R.drawable Icon Resources
查看>>
git ignore 添加忽略文件不生效解决办法
查看>>
CDH 6.0.1 集群搭建 「Process」
查看>>
谈一谈对MySQL InnoDB的认识及数据库事物处理的隔离级别
查看>>
如何写好一份测试用例
查看>>
[HDOJ5791]Two(DP)
查看>>
一个好的网站是如何打造的
查看>>
增加网站的用户体验度
查看>>