POST/HEAD 注入

post传参与get传参的区别:

特性不同:Get请求是将数据添加到URL中并传递到服务器,通常利用一个问号“?”代表URL地址的结尾与数据参数的开端。Post请求数据是放在HTTP主体中的,其组织方式不只一种,有"&"连接方式,也有分割符方式,可隐藏参数,传递大批数据,比较方便。

传输方式不同:get方式把参数数据列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段分别对应,在URL中可以看到。post方式通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。

服务端获取数据方式不同:get方式是服务器端用Request.QueryString获取变量的值。post方式是务器端用Request.Form获取提交的数据。

传输数据量不同:get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般默认为不受限制。但实际上会因为服务器的不同有所差异。

安全性不同:由于get方式传递的参数可以在页面上看见,所以get安全性非常低。Psot方式传递的参数用户不可见,因此post安全性较高。

POST注入介绍:

注入的本质是把用户输入的数据当作代码执行

这里有两个条件:

  1. 用户可以控制
  2. 是原本程序需要执行的代码,拼接了用户输入的数据

POST注入就是使用POST进行传参注入,本质上跟GET注入没什么区别

POST注入高危点:

  1. 登录框
  2. 查询框
  3. 各种与数据库交互的框

最经典的POST注入无非于万能密码

'or 1=1 #

sqlmap跑POST注入

爆库
用Burp抓包,-r xxx/xxx/xxx/xxx -p n --dbs

注:-r表示加载一个文件,-p指定参数

其中出现了三次提示:

it looks like the back-end DBMS is ‘MySQL’. Do you want to skip test payloads specific for other DBMSes? [Y/n]
它看起来像后端DBMS是’MySQL’。 是否要跳过特定于其他DBMS的测试负载? [Y/n] 输入"Y"

for the remaining tests, do you want to include all tests for ‘MySQL’ extending provided level (1) and risk (1) values? [Y/n]
对于剩余的测试,您想要包括所有针对“MySQL”扩展提供的级别(1)和风险(1)值的测试吗? [Y/n] 输入"N"

POST parameter ‘n’ is vulnerable. Do you want to keep testing the others (if any)? [y/N]
POST参数’n’是脆弱的。 你想继续测试其他人(如果有的话)吗?[y/N] 输入"Y"

爆表
选择一个数据库,比如选fendo

-p n -D fendo --tables

爆列

-p n -D fendo -T user --columns

爆字段
-p n -D fendo -T user -C “username,password” --dump

HEAD注入

HEAD注入原理
HEAD注入顾名思义就是在传参的时候,将我们的数据构建在http头部。

HEAD注入的使用场景
为什么网站要记录你的ip或者请求头,是为了方便你的二次登陆,区分你的登陆地址和设备,可以更高的自适应。[所以~游客一般不会被记录,头注入一般都发生在登陆或者留言的地方比较多]

超全局变量
PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。

这些超全局变量是:

$_REQUEST (获取GET/POST/COOKIE) COOKIE在新版本已经无法获取了 $_POST (获取POST传参)
$_GET (获取GET的传参) $_COOKIE (获取COOKIE的值) $_SERVER
(包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组)
$_SERVER功能强大。 常用的: $_SERVER[‘HTTP_HOST’] 请求头信息中的Host内容,获取当前域名。
$_SERVER[“HTTP_USER_AGENT”] 获取用户相关信息,包括用户浏览器、操作系统等信息。
$_SERVER[“REMOTE_ADDR”] 浏览网页的用户ip。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值