sql注入一点小心得
$sql = "select * from users where username = '$username' and password = '$password'";
对于这种sql,对应一个万能密码和用户名:
$sql = select * from users where username = '$username' and password = ' xx' or 1=''
不解释,瞬间破解
同样,上面是在sql语句中查询字段后的输入值加了单引号,有些时候尤其是初级程序员经常对变量不加单引号:
$sql = "select * from users where username = $username and password = $password";
这时mysql解释会被当做数字型字段来匹配
select * from users where username = 11 union select * from users/* and password = 54
$keyword = addslashes($keyword);
$keword = str_replace("%","\$",$kwyword);
插入注入
insert into users(username,password,grade) values('frank','','');
insert into users(username,password,grade) values('frank','','')/*,'1';


$sql = "select * from users where username=? and password=?";
//创建一个pdo对象
$mypdo = new PDO("mysql:host=localhost;port=3306;dbname=xx","root","123456");
//设置编码
$mypdo->exec("set names utf8"); //预处理$sql
$pdostatement = $mypdo->prepare(%sql);
//将用户名和密码填入sql
$pdostatement->execute(array($username,$password)); //得到查询结果
$result = $pdostatement->fetch(); if(empty($result)) ...
.png)

sql注入一点小心得的更多相关文章
- SQL语句一点小心得
在Sqlserver中 if 语句后面的语句加begin end 括起来 问题:执行速度问题,在存储过程中没有加begin end 执行速度很慢,加了begin end执行速度加快 ALTER PRO ...
- BUI Webapp用于项目中的一点小心得
接触BUI也有一段时间,也用在了移动端的项目开发中,总的来说,该框架用起来也挺灵活的,控件可以自由定制,前提是自己能认真地学习该框架的api,因为api里面说的东西比较详细,如果没有仔细看的,可能有些 ...
- ASP.NET MVC Autofac依赖注入的一点小心得(包含特性注入)
前言 IOC的重要性 大家都清楚..便利也都知道..新的ASP.NET Core也大量使用了这种手法.. 一直憋着没写ASP.NET Core的文章..还是怕误导大家.. 今天这篇也不是讲Core的 ...
- Qt使用com组件的一点小心得(使用Qt自带的工具dumpcpp生成.h和.cpp文件)
这几天工作中要用到Qt调用com组件,主要用到的类型有dll和ocx,使用他们的方法很简单:1.将com组件注册到系统中.2.使用Qt自带的工具dumpcpp将com组件生成cpp和头文件.3.然后就 ...
- python+tesseract验证码识别的一点小心得
由于公司需要,最近开始学习验证码的识别 我选用的是tesseract-ocr进行识别,据说以前是惠普公司开发的排名前三的,现在开源了.到目前为止已经出到3.0.2了 当然了,前期我们还是需要对验证码进 ...
- 学习KMP算法的一点小心得
KMP算法应用于 在一篇有n个字母的文档中 查找某个想要查找的长度为m的单词:暴力枚举:从文档的前m个字母和单词对比,然后是第2到m+1个,然后是第3到m+2个:这样算法复杂度最坏就达到了O(m*n) ...
- 近日使用Taro框架的一点小心得
1.yarn npm安装的包,跟权限问题有关,与网络也有关 2.Vue框架首先,是解决了view-model的问题,解放开发的双手,使得显示和数据和控制分开 3.当你觉得最近没有技术文章看时,就看收藏 ...
- jquery框架一点小心得
下面的小事例 主要实现了 一和按ID查找,并获取元素的 value 或 标签内容和一个去字符串空格的小功能能 假设元素id=“myid”: 获取标签内容$("myid").html ...
- 学习R语言的一点小心得
1.目前R 语言处于入门阶段吧,能够执行一些简单的模型了,还是有收获的. 但是在跑模型的时候经常遇到各种各样的错误,最常见的错误就是数据带入模型之后,数据的类型不对,因此模型跑不下去,因此说,利用he ...
随机推荐
- Qt 学习之路 2(68):访问网络(4)
Home / Qt 学习之路 2 / Qt 学习之路 2(68):访问网络(4) Qt 学习之路 2(68):访问网络(4) 豆子 2013年11月7日 Qt 学习之路 2 19条评论 前面几章我们了 ...
- c# 委托访问listbox多线程操作
c# 委托访问listbox多线程操作 using System;using System.Collections.Generic;using System.ComponentModel;using ...
- BZOJ - 4066 KD树 范围计数 暴力重构
题意:单点更新,大矩阵(\(n*n,n≤10^5\))求和 二维的KD树能使最坏情况不高于\(O(N\sqrt{N})\) 核心在于query时判断当前子树维护的区间是否有交集/当前子节点是否在块中, ...
- WAMP下Apache配置Vhost (2
发布网站添加虚拟机"/usr/local/apache/conf/extra/httpd-vhost.conf"的最下面: <VirtualHost *:80> Ser ...
- 【Python】struts2-045批量检测
0x00 环境 存在struts2-045漏洞的war包 apache-tomcat 0x01 脚本 #coding:utf-8 import re import urllib import ...
- 如何在新导入的python项目中一次性生成依赖的第三方库
requirements.txt用来记录项目所有的依赖包和版本号,只需要一个简单的pip命令就能完成. pip freeze >requirements.txt 然后就可以用 pip insta ...
- PIE SDK专题制图切换模板
1. 功能简介 专题图是突出且较完备的表示一种或几种自然或社会经济现象,从而使地图起到专门化的作用.与普通地图不同,专题图的表示内容丰富多彩,多种多样.在实际业务应用中经常会用同一张地图出很多个 ...
- rabbitmq 事务消息
事务消息主要用在发送方 在connection上加上事务属性, 发送方感知到本地事务执行失败, 需要通知broker将先前已经接收到的消息rollback,不要发给后面的消费者, 满足强一致性的要求 ...
- HTML5之WebSocket && https://zhuanlan.zhihu.com/p/23467317
在认识websocket之前,我们必须了解的是websocket有什么用? 他能解决我们遇到的什么问题? 如果没用,那么我们就么有使用它的必要的. websocket就是建立起全双工协议的,提高了效率 ...
- 更改CMD默认的初始路径
一直用CMD开启本地服务,每一次都得切换路径,有点尴尬.记录一下,修改CMD默认路径 1.打开注册表编辑器(WIN+R打开运行.输入regedit,或者直接找到路径,双击打开C:\Windows\re ...