【渗透测试小白系列】之SQL注入
(本文仅为平时学习记录,若有错误请大佬指出,如果本文能帮到你那我也是很开心啦) 一、介绍 1.SQL注入漏洞的本质: 后端代码再执行过程中,将用户输入的数据也当作代码来执行,违背代码和数据相分离原则 2.注入的原因: 前端传递的参数可以随意控制,参数可控;后端对前端传递过来的数据没有过滤,或过滤不严谨,最终导致SQL注入 3.SQL注入漏洞有两个关键条件: 用户能控制输入的内容 Web应用把用户输入的内容带入到数据库中执行 4.危害: 数据泄露、脱库、篡改网站、破坏数据库、植入后门、getshell等等 5.分类: 请求方式: get post cookie 参数形式: 整型 字符型 搜索 反馈类型: 报错 union 布尔(时间或页面显示状态) 延时 数据库类型: access mssql mysql oracle nosql等等 利用技术: 布尔 报错 内联 堆叠 时间 联合、 二、常用的数据库函数以及常量 1.@@tmpdir 查看临时目录 2.@@datadir 数据存放的位置 3.@@basedir 数据库服务所在位置 4.@@version 查看版本号 5.@@hostname 查看当前用户名 6.ascii() 返回字符串str的最左字符的数值 7.user() 获取登陆用户名 8.version() 获取当前版本号 9.database() 获取当前数据库 10