| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 网安学习——web漏洞(上) -> 正文阅读 |
|
[大数据]网安学习——web漏洞(上) |
🌟🌟笔记来源📒:11.WEB漏洞——SQL注入之必懂知识点 · 语雀(这个博主笔记写的太详细了,看他的比看我自己的还有用,借用方便日后复习) 一、web漏洞必懂知识点1、常见web漏洞的危害??(1)、sql注入????????????????? (2)、xss????????? (3)、xxe🌟????????? (4)、文件上传?? ? ?? (5)、文件包含????????(6)、文件读取???????? (7)、csrf(用户请求伪造)???????????????? (8)、ssrf(服务器端请求伪造)???????? (9)、反序列化????????(10)、代码执行???????? (11)、逻辑漏洞???????? (12)、未授权访问? ? ? ? 敏感信息泄漏 (13)、命令执行????????? (14)、目录遍历???????? 2、等级划分(1)高危漏洞:????????SQL注入、文件上传、文件包含、代码执行、未授权访问、命令执行。 ? ? ? ? 影响:直接影响到网站权限和数据库权限,能够获取数据或者网站的敏感文件。涉及到数据安全和权限的丢失都为高危漏洞。 (2)中危漏洞????????反序列化、逻辑安全。 (3)低危漏洞????????XSS跨站、目录遍历、文件读取 ? ? ? ? 影响:网站的源码,网站部分账号密码 3、应用? ? ? ?( pikachu漏洞练习平台,gihub下载源码,phpstudy搭建) ????????CTF:SQL注入、文件上传、反序列化、代码执行; ????????SRC:图片上漏洞都能出现,逻辑安全出现比较多; ????????红蓝对抗:涉及的高危漏洞,文件上传、文件包含、代码执行、命令执行。 二、sql注入????????1、简要sql注入(1)sql注入产生原理:? ? ? ? 1)对用户输入的参数没有进行严格过滤(如过滤单双引号 尖括号等),就被带到数据库执行,造成了SQL注入; ? ? ? ? 2)使用了字符串拼接的方式构造SQL语句。 (2)sql注入分类:? ? ? ? 1)按注入手法分类可以分为:联合查询注入、报错型注入、布尔型注入、延时注入、堆叠注入 ? ? ? ? 2)按数据类型上可以分为:字符型(即输入的输入使用符号进行过滤)、数值型(即输入的输入未使用符号进行过滤) ? ? ? ? 3)从注入位置可以分类为:GET数据(提交数据方式为GET,大多存在地址栏)、POST数据(提交数据方式为POST,大多存在输入框中)、HTTP头部(提交数据方式为HTTP头部)、cookie数据(提交数据方式为cookie) (3)sql注入危害:???????? (4)前置知识? ? ? ? 1)在MYSQL5.0以上版本中,MYSQL存在一个自带数据库名为information_schema,它是一个存储记录有所有数据库名,表名,列名的数据库,也相当于可以通过查询它获取指定数据库下面的表名或者列名信息。 ? ? ? ? 2)数据库中符号"."代表下一级,如xiaodi.user表示xiaodi数据库下的user表名。 ? ? ? ? 3)参数: ????????????????information_schema.tables:记录所有表名信息的表 ????????????????information_schema.columns:记录所有列名信息的表 ????????????????table_name:表名 ????????????????column_name:列名 ????????????????table_schema:数据库名 ????????????????user()??查看当前MySQL登录的用户名 ????????????????database() 查看当前使用MySQL数据库名 ????????????????version() 查看当前MySQL版本 (5)注入点判断???????? (6)sql注入步骤:???????? ? ? ? ? 1)注入语句 ???????? ? ? ? ? 2)sqlmap利用???????? ? ? ? ? ? ? ? ? a)获取数据库名 ????????get型:python sqlmap.py -u "url" --cookie="" --dbs --batch? ????????post型:? python sqlmap.py -u "url" --cookie="" --data="payload值" --dbs --batch? ? ? ? ????????? ? ? ? ? ? ? ? ?b)获取表名 ????????get型:python sqlmap.py -u "url" --cookie="" -D 数据库名 --tables --batch ????????post型:python sqlmap.py -u "url" --cookie="" --data="payload值" -D 数据库名 --tables --batch ? ? ? ? ? ? ? ?c)获取表内信息 ????????get型:python sqlmap.py -u "url" --cookie="" -D 数据库名 --tables -T 表名 --dump --batch ????????post型:python sqlmap.py -u "url" --cookie="" --data="payload值" -D 数据库名 --tables -T 表名 --dump --batch (7)演示? ? ? ? (推荐sqlilabs平台练习,专门的sql注入练习平台) ? ? ? ? 法一、sql注入语句 ? ? ? ? 1)测试: ???????????????? ???????????????? ? ? ?????????? ?//输入特殊字符网页出现错误,说明带数据库查询有注入点,存在sql注入漏洞,经过尝试,发现单引号可将语句闭合,网页对#进行url转义,使用%23代替,注释掉后面的语句 ???????????????? ? ? ? ? 2)order by查询列数: ? ? ? ? ? ? ? ? 3列不报错,4列报错,所以有3列 ????????????????? ? ? ? ? ? ? ? ???????????????? ? ? ? ? ? ? ? ? ? 3)联合查询,查询数据库名称(使用联合查询,需要将前面查询的内容改为不可能情况):
????????????????? ? ? ? ? ? ? ? ? 第一列不显示,因此在2或3列查询数据库名称:
????????????????? ? ? ? ? 4)联合查询数据库表名
????????????????? ? ? ? ? 5)查询表中敏感列信息:
????????????????? ? ? ? ? ?6)进一步查询列中敏感信息,如username、password
????????????????? 2、mysql注入3、类型及提交注入4、oracle、mangodb注入等5、查询方式及报错盲注6、二次、加解密、dns等注入7、堆叠及waf绕过注入8、sqlmap绕过waf三、文件上传? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 11:43:02- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |