当前位置: 首页 > news >正文

sql学习

sql

1.在小皮搭建网站

搭建到phpstudy的根目录上

2.写数据库的密码

由于小皮的数据库密码改成了123456

所以这个文件也得改成123456

3.创建数据库

4.正式开始

mysql数据库:数据库(Database) 是表的容器,表(Table) 是数据的载体,字段(Column) 是表的属性(如用户名、密码),行(Row) 是单条完整数据记录,四者是“容器-载体-属性-记录”的递进关系

sql语句练习

1.判断是字符型还是数字型注入

若页面正常没报错说明是字符型注入

因为and需要前后两个条件同时为真才执行,若把1=2按数字处理是会报错的

或者id=2-1

观察id=2-1和id=1的响应是否相同

2.查看数据库有几列(注意id=1后面的分号和最后面的--+)

发现group by 1,2,3都行

但是4不行 说明这个security数据库有三列

order by 也行

3.判断闭合方式

输入id=1’

右上角响应是"1"

说明闭合方式是’

4.union联合查询以及判断可显位

若输入id=1,页面并无变换,无法判断可显位

那么就如上图一样,输入id=-1或id=0即可

可知第二行第三行为可显位

5.

database() 可知数据库的数据名

user() 当前数据库用户

version mysql版本

6.

id=0' :让原查询 WHERE id='0' 返回空结果,使 UNION 后的查询结果能显示。

-单引号 ' :闭合Less-1中字符型的参数引号,打破原SQL语法结构

group_concat(table_name) :核心函数,将 information_schema.tables 中查询到的所有 table_name (表名)拼接成一行字符串,用逗号分隔开(emails,referers,uagents,users )

from information_schema.tables where table_schema='security'

​从MySQL的系统库 information_schema 的 TABLES 表中查询,筛选出属于 security 数据库的表名。

​SQL注入漏洞基础认知

1. 漏洞产生原理

SQL注入的本质是程序未对用户输入参数进行有效过滤或转义,导致用户输入的恶意SQL语句被拼接至后台原始SQL中,最终被数据库执行,打破正常数据访问逻辑。

案例(登录接口):

后台原始SQL: SELECT * FROM users WHERE username='$name' AND password='$pwd';

用户恶意输入:用户名填 ' OR 1=1 -- ,密码任意

拼接后SQL: SELECT * FROM users WHERE username='' OR 1=1 -- ' AND password='$pwd';

逻辑解析: OR 1=1 使条件恒成立, -- 注释后续语句,直接绕过登录验证。

2 常见分类(按三类核心维度划分)

按注入点类型:字符型注入(需闭合引号)、数字型注入(无需闭合符号)、搜索型注入(常见于搜索框,需处理通配符)。

​ 按数据交互方式:GET注入(参数拼接在URL中)、POST注入(参数藏在请求体中)、Cookie注入(参数存储在Cookie中)。

​ 按执行结果反馈:基于报错注入(利用数据库报错信息提取数据)、联合查询注入(通过UNION拼接查询获取数据)、盲注(无直接结果反馈,需通过逻辑判断/时间延迟推断数据)

http://www.cnnetsun.cn/news/38415.html

相关文章:

  • 23、跨平台系统管理与自动化工具的构建与应用
  • Battery Toolkit:让你的Mac电池寿命延长3年的秘密武器
  • 5分钟掌握SeedVR2-7B:零门槛实现专业级视频修复的完整指南
  • 32、Django Web应用开发实战
  • Blueprint CSS跨浏览器兼容性:打造完美用户体验的终极方案
  • 34、Python 数据持久化:从简单到关系型序列化
  • AFLplusplus深度实战:解锁企业级模糊测试的终极配置
  • 5步掌握Expo项目架构:从零开始构建跨平台应用
  • 14、树莓派的多功能应用:从搭建服务器到控制机器人
  • Aviator预测系统实战指南:从新手到高手的5个关键步骤
  • 16、树莓派的相机应用与外星信号搜索指南
  • 掌握Langflow自定义组件开发与插件集成的完整攻略
  • 【C++】无序容器unordered_set和unordered_map的使用
  • 全面测试QtSql操作PostgreSQL数据库时戳字段的行为
  • 7、深入探索 NCurses 键盘交互:功能与应用
  • 13、NCurses绘图与屏幕数据存储功能详解
  • Apple Safari 26.2 发布 - macOS 专属浏览器 (独立安装包下载)
  • Microsoft System Center 2025 UR1 发布 - Windows 服务器管理软件
  • 从计划到报告:软件测试文档全流程精要
  • StarRocks 2.5.22 混合部署实战文档(CDH环境)
  • 14、深入探索RDF模板与树结构的应用
  • 20、数据到图形的转换:从 XSLT 到交互式可视化
  • Arkime YARA规则实战:构建企业级网络威胁检测体系
  • InfluxDbTemplate使用文档
  • Pyomo优化建模终极指南:从概念到实战应用
  • 开源客服系统终极指南:如何快速部署osTicket提升客户服务效率
  • Qsign签名API:Windows平台QQ机器人验证终极解决方案
  • 74.6%准确率刷新纪录:快手KAT-Dev-72B-Exp重构开源代码生成生态
  • jQuery Mobile滑块组件实战指南:解决移动端触控交互的5大痛点
  • 管家婆软件年结存后快马商城操作注意事项