php 万能密码,网络安全系列之十 万能密码登录网站后台

2023-11-15

在登录网站后台时,有一个比较古老的“万能密码”漏洞,即利用一个我们精心构造的用户名,即使不用输入密码,也可以登录后台,其原理仍属于SQL注入的范畴。

假设数据库中存放用户信息的表是admin,其中存放用户名的字段是username,存放密码的字段是password,在用户验证页面中用来接收用户所输入的用户名和密码的变量也分别是username和password,当用户在用户验证页面输入用户名和密码后,会提交给如下的语句进行处理:

select * from admin where `username` = ‘$userrname’ and `password` = ‘$password’

这样,当用户输入用户名'or '' = '时,相应的语句就变成了

select * from admin where `username` = ‘’ or ‘’ =‘’and `password` = ‘’

在这个语句中,where后面所指定的条件永久成立,因而就可以绕过身份验证,也就成为了所谓的万能密码。

万能密码中开头和结尾的单引号,主要是为了将查询语句中引用变量的单引号闭合。因而掌握了这个特点之后,我们就可以来任意构造万能密码,比如下面的几种形式:

' or 'a'='a'or'a'='a

' or ‘a’ = ‘a’ or ‘

' or 1=1 or ‘

下面我们就搭建一个实验环境来验证万能密码

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

php 万能密码,网络安全系列之十 万能密码登录网站后台 的相关文章

  • LU分解,LDLT分解,Cholesky分解

    LU分解 如果方阵是非奇异的 即的行列式不为0 LU分解总是存在的 A LU 将系数矩阵A转变成等价的两个矩阵L和U的乘积 其中L和U分别是下三角和上三角矩阵 而且要求L的对角元素都是1 形式如下 本质上 LU分解是高斯消元的一种表达方式
  • 一个简单的chrome拓展程序开发

    最近突然觉得有些常用的功能可以写成浏览器插件 就不用把代码放到console控制台运行了 只要点击插件图标就可以自动运行 会方便很多 就去查了下chrome插件开发教程 本质上讲 chrome插件就是以一些特殊的方式运行一些特定的html
  • vant组件使用van-field解决邮箱校验问题

    需求 用户在返回到上一页的时候 保存用户的编辑资料 所以用户在输入邮箱的时候 校验是否正确 使用van field
  • Redis基础-命令梳理

    文章目录 一 Redis 客户端的基本语法 二 基础数据类型 字符串 String 三 基础数据类型 哈希 Hash 四 基础数据类型 列表 List 五 基础数据类型 集合 Set 六 基础数据类型 有序集合 Sorted set 一 R
  • 关于canvas画布上绘制多个(单个也一样)不规则多边形,用户点击这张画布时,判断点击的是哪个多边形

    首先来看看canvas效果图 上面是我在canvas上绘制了多个不规则多边形 如果不是很了解怎么绘制 可以看我上个博客canvas画图 盒子结构 div class imgBox div
  • Container With Most Water

    Given n non negative integers a1 a2 an where each represents a point at coordinate i ai n vertical lines are drawn such
  • 似然场模型初识

    slam 激光雷达的数学模型之似然场模型 光束模型的缺点 计算量大 每一个位姿需要进行N次raytracing N为每一帧激光的激光束数量 在非结构化环境中 比较杂乱的环境中 使用光束模型会导致当位姿发生微小变化时 得分从非常高一下改变为趋
  • 五人合伙最佳股份分配_有限责任公司与合伙企业傻傻分不清,纳税又有什么不同?...

    我们经常见到许多的公司类型 xx公司xx合伙等等 每种不同的形式纳税是不是有所不同 合伙企业分为 普通合伙企业和有限合伙企业 其中 普通合伙企业又包含特殊的普通合伙企业 1 普通合伙企业由2人以上的普通合伙人 没有上限规定 组成 普通合伙企
  • STL源代码剖析笔记----第一章STL概论与版本简介

    在现在这家公司半年了 虽说也学了不少东西 但是总觉得自己的技术还不够成熟 不过好处就是 有大把的时间可以自己支配 闲来无事便把侯捷先生的STL源代码剖析拿出来看了一下 在工作中用的最多的还是STL 自己也曾尝试些属于自己的一些算法 但是 结
  • easy mock本地部署和nuxt项目初始化

    easy mock本地部署和nuxt项目初始化 一 说明 easy mock和nuxt项目创建初始化用到的nodejs版本有差异 前者需要低版本 后者初始化需要高版本 所以需要nvm管理nodejs版本 安装nvm 下载地址https gi
  • nodejs17/18版本报错:digital envelope routines::unsupported

    一 临时方案 cmd或终端执行 export NODE OPTIONS openssl legacy provider 二 修改系统环境变量 新建一个系统环境变量配置 配置信息如下 NODE OPTIONS openssl legacy p
  • 系统U盘制作工具WinToUSB,也可以将系统安装到U盘

    WinToUSB 轻松将Windows WinPE安装到USB移动硬盘或者U盘 Hasleo WinToUSB是个免费的U盘安装系统工具 可以将操作系统ISO WIM ESD SWM文件或CD DVD光驱安装到U盘或者移动硬盘 Window
  • Hbase学习2:部署

    http dblab xmu edu cn blog install hbase HBASE 官网 https hbase apache org book html preface Use the following legend to i
  • 程序员分类

    程序员 前端 html css javascript bootstrap jQuery Node js Augular TypeScript ReactJS vue js 后端 Java Python Go C C Ruby Node js
  • LeetCode-1615. 最大网络秩【图】

    LeetCode 1615 最大网络秩 图 题目描述 解题思路一 简单暴力 用一个矩阵g记录每对点之间是否连通 如果连通g a b g b a 1 然后用一个一位数组cnt记录每一个点的度 最终答案是每对城市之间的最大网络秩即max cnt
  • 机器学习、深度学习常用专业术语

    主要记录一些深度学习中可能用到的专业术语 一般是碰到了不懂的才记录 所有没有按一定的规律记录 持续更新 1 梯度下降 gradient descent 2 学习速率 learning rate 学习率指每次迭代中 对成本函数的 最小化次数
  • 用 Python 快速追踪基金的收益情况(2022年4月更新)

    来源 Python数据之道 ID PyDataLab 作者 阳哥 大家好 我是阳哥 大家知道 近几年 不少同学都是经由基金进入到股市中的 至于股票和基金到底谁更好 这个仁者见仁智者见智 恐怕一时半会儿也说不清楚 2021年 阳哥曾经分享过
  • 机器学习课后题——贝叶斯

    第四章 贝叶斯分类器 1 简述朴素贝叶斯的优缺点 答 朴素贝叶斯的主要优点有 算法比较简单 易于实现 快速 易于训练 朴素贝叶斯模型有稳定的分类效率 对小规模的数据表现很好 能处理多分类任务 适合增量式训练 尤其是数据量超出内存时 可以一批
  • 今天是我的生日,也是我的离职日!

    前言 时间就是这么巧妙 今天是我的生日 也是我的离职日 职场中有人来 就有人走 本是件很平常的事 在这里祝自己生日快乐 江湖路远 后会有期 今天是我的生日 也是我的离职日 一 往昔 二 ZQ的人事物 三 离职建议 四 后会有期 一 往昔 记

随机推荐

  • 【JavaScript面向对象详解】

    ES6之前的JavaScript面向对象比较不好理解 涉及到很多知识和思想 ES6增加了class和extends来实现类的封装和继承 但是通过babel转换成ES5之后还是之前的一套逻辑 这里 我打算用四篇文章 来讲解一下关于ES5中面向
  • k8s ingress配置wss编排模板

    前段时间遇到了一个k8s配置websocket的问题 需要配置一下 由于wss比较安全 结合tls证书才能配置成功 如果是ws则无法在https的网站上面直接使用 wss才行 下面给出配置文件 希望帮助到需要的伙伴 配置一个新的单独为所有w
  • 【学习笔记】——appium移动端自动化测试实战

    最近学习了appium移动端自动化测试 以qq登录模块的功能进行实战学习 主要涉及到的技术有 python appium unittest 数据驱动 weditor查看元素定位 断言 测试报告 最后以pom模式呈现效果 在学习过程中 除了元
  • java类的静态变量调用_Java学习笔记八---类的静态变量与静态方法的访问与调用方式...

    静态变量又称类变量 静态方法又称类方法 它们统称为静态成员或类成员 静态成员由static修饰 是属于整个类的 所有的对象共享这些静态成员 不需要创建任何对象 静态成员在类装载时就已初始化了 整个运行期间其内存位置不变 直到类卸载 鉴于静态
  • apache 插件开发之过滤器 (filter)

    过滤器 filter A filter is a process that is applied to data that is sent or received by the server Data sent by clients to
  • Unity实现Camera和Audio数据的低延迟RTMP推送技术探讨

    关于Unity实现RTMP直播推送技术方案 之前零散的写过几篇介绍 得到了好多开发者的关注 以Android平台为例 目前视频这块 我们demo实现的是Camera数据的采集 然后编码投递到底层 如果设备没有性能瓶颈 可达到高帧率 60帧
  • 自动化测试的类型​以及自动化测试的几个误区!

    有三种主要类型的自动化测试 一 自动化单元测试 编辑 自动化单元测试在代码级别上进行测试 bug是在开发人 员编写的函数 方法和例程中识别出来的 一些公司要求开发人员自己进行单元测试 而有些公司则雇用专门的测试自动化资源 这些资源可以访问源
  • 2021最新Apache漏洞分析

    漏洞简介 2021年9月16日 Apache官方发布了Apache httpd mod proxy SSRF漏洞CVE 2021 40438 影响v2 4 48及以下版本 该漏洞影响范围较广 危害较大 利用简单 不得不引起重视 漏洞搭建 d
  • R for data science 之 stringr包

    作者简介Introduction 邬书豪 车联网数据挖掘工程师 R语言中文社区专栏作者 微信ID wsh137552775 知乎专栏 https www zhihu com people wu shu hao 67 activities 往
  • C语言 —— 合并两个有序数组

    C语言解决数组相关问题 合并有序数组 一 问题描述 二 解题思路 三 图文描述 四 代码展示 一 问题描述 给定两个有序整形数组arr1 和 arr2 将arr1 与 arr2合并或者有序输出成为一个有序数组 二 解题思路 1 给定的是两个
  • 16_Nginx_http请求处理的11个阶段

    文章目录 http 请求处理时的11个阶段 11个阶段的顺序处理 http 请求处理时的11个阶段 post read realip server rewrite rewrite find config rewrite rewrite po
  • 动力节点王鹤SpringBoot3笔记——第五章 说说Web服务

    目录 第五章 说说Web服务 5 1 高效构建Web应用 5 1 1 html页面视图 5 1 2 JSON视图 5 1 3 给项目加favicon 5 2 Spring MVC 5 2 1 控制器Controller 5 2 1 1 匹配
  • Oracle的大字段Clob类型的查询,Clob转为varchar展示

    1 Oracle中将clob字段数据转化为字符串 借鉴学习地址 Oracle的CLOB大数据字段类型 Grand Jon 博客园 查询 将CLOB转成字符类型 采用 dbms lob substr 查询 将CLOB转成字符类型 SELECT
  • 亚稳态学习小结

    亚稳态学习小结 一 亚稳态是什么 要知道亚稳态的定义 首先要知道时钟上升沿采样中的建立时间 setup time 和保持时间 hold time 1 1 建立时间 Tsu 保持时间 Th 建立时间 在触发器时钟上升沿到来之前 数据需要保持稳
  • xssgame靶场通关记录

    文章目录 靶场地址 第一关 第二关 第三关 第四关 第五关 第六关 第七关 第八关 html编码绕过 第九关 href属性js伪协议 第十关 第十一关 第十二关 第十三关 第十四关 Angular JS 第十五关 url编码 靶场地址 国光
  • UI设计原则背后的认知心理学 优漫动游

    了解人的感官和大脑是如何工作的 去衡量及判断那些设计原则更靠谱 UI设计师需要确定哪个设计原则更适用于给定的环境 从而优选应用 UI设计师必须深思熟虑 而不是盲目的应用设计原则 应该理解其基本原则并有过应用经验的人来使用和诠释 UI设计原则
  • vue3中使用echarts实现自定义纹理3d地图

    效果图 npm下载echarts 在main文件中全局引入 npm install echarts S import as Echarts from echarts app config globalProperties Echarts E
  • 使用htmlWebpackPlugin添加代码版本信息

    不知道你是不是这样的场景哈 或者曾经是 你提交完代码 部署然后测试去测 测试说你这个bug改了吗 怎么还是一样 然后你就纳闷 改过了啊代码也提交了 然后你自己去点一遍验证提交的代码有没有部署上去 这是一个痛点 可能也都习惯了哈 其实 这里有
  • OrCAD Capture学习笔记

    1 OrCAD Capture文件类型 OrCAD Capture是Cadence公司用来进行原理图绘制的一个EDA软件 能用这个软件打开的常用的几个文件后缀名为 dsn opj olb lib net 这些文件后缀具体表示的意思如下 这些
  • php 万能密码,网络安全系列之十 万能密码登录网站后台

    在登录网站后台时 有一个比较古老的 万能密码 漏洞 即利用一个我们精心构造的用户名 即使不用输入密码 也可以登录后台 其原理仍属于SQL注入的范畴 假设数据库中存放用户信息的表是admin 其中存放用户名的字段是username 存放密码的