我正在学习SQL注入,我构建了一个没有SQL注入保护的Web应用程序(

PHP MYSQL(5.6)).

简而言之,我的Web应用程序使用

SELECT * FROM XXX.USER WHERE user_name='${USERNAME}' AND password='${PASSWORD}'

处理登录(如果该sql只返回1行,则登录成功).

一开始,我找到输入USERNAME Sayakiss’ – 然后我的SQL:

SELECT * FROM XXX.USER WHERE user_name='Sayakiss' -- ' AND password='${PASSWORD}'

通过这种方式,攻击者可以在没有密码的情况下以Sayakiss身份登录.

然后我发现更有趣的东西(select子句可以在if函数中) – 攻击者输入USERNAME为

Sayakiss' and if((select ascii(mid(z,p,1)) from x.y limit n,1)=c,1,0) --

这可以检查表x.y的列z的第n行的p位置字符的ascii是否等于c.

如果攻击者登录成功,那么他知道字符的ascii等于c.

因此,攻击者可以通过枚举获取我的数据库的所有内容!

现在我想知道,如何(如果可能的话)执行更新查询以类似方式编写数据库?

mysql where 中能否使用update_mysql – 可以在WHERE中执行UPDATE子句吗?相关推荐

  1. mysql按条件提取数据库_SQL中的where条件,在数据库中提取与应用浅析

    1        问题描述 一条SQL,在数据库中是如何执行的呢?相信很多人都会对这个问题比较感兴趣.当然,要完整描述一条SQL在数据库中的生命周期,这是一个非常巨大的问题,涵盖了SQL的词法解析.语 ...

  2. php输出mysql错误日志_PHP_PHP中把错误日志保存在系统日志中(Windows系统),【将错误记录到系统日志中】 - phpStudy...

    PHP中把错误日志保存在系统日志中(Windows系统) [将错误记录到系统日志中] 在 php.ini 中将 error_log 设置为: error_log = syslog 或者在运行时使用 i ...

  3. mysql四个对勾_Mysql like查询语句中,结果包含反斜杠 \ 字符的,需要替换成四个反斜杠 \\\\...

    如题,当SQL语句中使用Like查询,且期望匹配的结果中含有"\"的,应当把"\"替换为"\\\\". 比如数据库中text字段有以下三行: ...

  4. mysql驱动为什么自动加载_为什么JDBC中加载驱动要使用反射?

    原文链接:https://www.cnblogs.com/homejim/p/8076481.html 在JDBC详解系列(一)之流程中,我将数据库的连接分解成了六个步骤. JDBC流程: 第一步:加 ...

  5. mysql utf8转gbk cmd_转:在CMD中操作mysql数据库出现中文乱码解决方案

    百度了一下..有说将cmd字符编码用chcp命令改为65001(utf8字符编码),可这样之后根本无法输入中文,查询出的中问结果依旧乱码 其实,只要保证cmd客户端和MySQL两者编码一致即可. 但现 ...

  6. mysql 导入主键冲突_MySQL 处理插入过程中的主键唯一键重复值的解决方法

    本篇文章主要介绍在插入数据到表中遇到键重复避免插入重复值的处理方法,主要涉及到IGNORE,ON DUPLICATE KEY UPDATE,REPLACE:接下来就分别看看这三种方式的处理办法. IG ...

  7. 重新安装mysql5.7.21_linux 安装mysql 5.7.21详解以及安装过程中所遇问题解决

    在安装过程中所遇到的问题有: 1.my-default.cnf文件找不到 2.mysql启动报错 3.mysql临时密码无法登录 安装环境centos 6.0 下载数据库: [root@CLangua ...

  8. spark抽取mysql数据到hive_使用spark将内存中的数据写入到hive表中

    使用spark将内存中的数据写入到hive表中 hive-site.xml hive.metastore.uris thrift://master:9083 Thrift URI for the re ...

  9. mysql事务模式怎么查_Mysql InnoDB中的查询事务模式与锁定select ..for update

    在 InnoDB 的行锁中使用所谓的 next-key locking.这就意味着,除了索引记录外,InnoDB 还可以锁定该索引记录前部"间隙" ('gap') 以阻塞其它用户在 ...

  10. 如何更新mysql数据库字段_如何使用MySQL一个表中的字段更新另一个表中字段

    1,修改1列 update student s, city c set s.city_name = c.name where s.city_code = c.code; 2,修改多个列 update ...

最新文章

  1. 卧槽!华为工程师总结的5000页Java、LeetCode刷题笔记提供下载,太优秀了!
  2. 软件开发经验总结(五)读源代码的艺术
  3. circle函数用法 turtle_Turtle库与Time库基础知识分享(详细)
  4. Python基础——PyCharm版本——第八章、文件I/O(核心1)附件——Python os.chmod() 权限参照表
  5. 电子工程师应该掌握的20个模拟电路(转)
  6. 序列化与反序列化(记住密码)
  7. 吴恩达深度学习3.1笔记_Structuring Machine Learning Projects_机器学习策略(1)
  8. Dockerfile最佳实践(二)
  9. ADSL 定时断线重连bat文件
  10. 空气投影+生物识别,支付宝的“如影计划”还有多少硬仗要打?
  11. fedora安装字体
  12. java计算机毕业设计家教管理系统源码+mysql数据库+系统+lw文档+部署
  13. 元学习—MAML模型Pytorch实现
  14. 明源售楼系统技术解析 架构搭建(一)
  15. 情人节程序员用HTML网页表白【3D旋转木马相册】 HTML5七夕情人节表白网页源码 HTML+CSS+JavaScript
  16. win10如何新增ip地址
  17. Python开发App实战(一)-Kivy入门
  18. mongoDB地理位置检索
  19. 性能测试利器 — 全链路监控工具Pinpoint安装教程(非docker版本)
  20. 频繁收到小米发送的AC开头的短信的解决方案

热门文章

  1. java多线程tasks.add_Java多线程顺序执行
  2. mysql 优化union_mysql优化 - MySQL中使用UNION进行两表合并,去重导致效率低下,请问如何优化?...
  3. Spring Could+Ant Design Pro表格数据加载
  4. javascript自定义alert弹窗
  5. Gridview DetailView
  6. 如何在阿里云里申请并使用免费https证书SSL、nginx下配置https证书
  7. Linux学习---新建文件,查看文件,修改权限,删除
  8. 单例模式专集细节讲述
  9. java中的上传下载----ajaxFileUpload+struts2
  10. 安装 Dynamics AX 2012 Data Migration Framework