首页 > 数据库 >SQL注入&HTTP 头XFF&COOKIE&POST请求

SQL注入&HTTP 头XFF&COOKIE&POST请求

时间:2024-06-13 20:28:16浏览次数:25  
标签:HTTP 请求 ip XFF COOKIE IP 演示 POST 注入

目录

#知识点:

#补充点:

案例演示1

数据请求方式涉及到的问题:

php

Java Spring

Python

案例演示2

手工注入

sqlmap注入

方式一

方式二

案例演示3

​编辑

案例演示4


#知识点:

1、数据请求方式-GET&POST&COOKIE等

2、常见功能点请求方式-用户登录&IP记录等

3、黑盒白盒注入测试要点-SQLMAP注入参数

#补充点:

黑盒测试:功能点分析

白盒测试:功能点分析&关键代码追踪

案例演示1

GET&POST&COOKIE&SERVER

数据请求方式涉及到的问题:

1、后台要记录操作访问IP

IP要进行代码的获取,获取到之后,IP会不会记录到数据库中呢?

IP会写到数据库,如果IP能够自定义数据,是不是就能尝试SQL注入啊

2、网站要根据用户的访问设备给予显示页面

接受访问的UA信息,进行判断

将各种UA进行数据库整理后,用户访问后对比数据库中的UA值来进行判断

3、网站要进行文件上传,用户登录 POST

由于上传的文件可大可小,采用GET不满足

用户登录,接受帐号密码后进行数据库查询后对比

php

<?php
header("Content-Type:text/html;charset=utf-8");

$get=$_GET['g'];                 //接受get
$post=$_POST['p'];              //接受post
$cookie=$_COOKIE['c'];          //接受cookie                         sever //接受用户环境变量
$request=$_REQUEST['r'];         //全部接受
$host=$_SERVER['HTTP HOST'];             //当前访问url地址         
$user agent=$_SERVER["HTTP USER AGENT"];     //浏览器信息
$ip=$_SERVER["HTTP X FORWARDED FOR"];      //8.8.8.8

echo $get."<hr>";
 echo $post."<hr>";
echo $cookie."<hr>";
echo $request."<hr>";
 echo $host."<hr>";
echo $user_agent."<hr>";
echo $ip;
?>

g以get请求输出

p以post请求输出

c以cookie方式发出请求

r不管是get,post,cookie都能接收

Java Spring

不同框架,不同写法

method=RequestMethod GET;

method=RequestMethod.POST;

request.getParameter("参数名").

可以直接获取get请求的参数key对应的value

也可以从请求体中获取参数的key对应的value

Python

method=RequestMethod GET;

method=RequestMethod.POST;

request.getParameter("参数名").

案例演示2

实例黑盒-后台表单登陆框-POST注入

用户登录注入        一般都是POST请求

手工注入

任意输入账户与密码,抓包

测得字段数为3

sqlmap注入

方式一

在xiaodi后加*,告诉sqlmap在此处

将数据包保存在sqlmap路径下的文本里

sqlmap注入

方式二

--data:以POST请求接收数据

案例演示3

实例白盒-ESPCMS-商品购买-COOKIE注入

产生注入的代码

案例演示4

实例白盒-ZZCMS-IP记录功能-HTTP头XFF注入

产生此注入原因的代码:

输入管理员,密码后会跳转到logincheck.php中验证admin. "· And pass='". $pass ." "

sql = "select * fromvzzcms_admin where admin= "".$admin."' And pass='".$pass."'"

含有POST注入

$ip=getip();       //获取IP地址
define('trytimes',5);//可尝试登录次数
define('jgsj',15*60);//间隔时间,秒
$sql="select * from zzcms login times where ip='$ip' and count>=".trytimes." and unix timestamp()-unix



$sqln="select *from zzcms login times where ip='$ip'"

对$ip没有过滤,产生头注

XFF可以伪造

可以在XFF处输入注入语句

标签:HTTP,请求,ip,XFF,COOKIE,IP,演示,POST,注入
From: https://blog.csdn.net/weixin_74275515/article/details/139636332

相关文章

  • Windows Server 2012 R2部署网站后IIS,只要访问网址应用程序池就自动停止,浏览器页面提
     解决方案:1.查看windows日志通过文件资源管理器查看:打开文件资源管理器,找到“我的电脑”。右键点击“管理”。在弹出的窗口中,点击“事件查看器”。在事件查看器中,点击“Windows日志”即可查看各种日志信息 2.找到错误信息......
  • netcore HTTP Error 500.30 - ASP.NET Core app failed to start
    netcoreHTTPError500.30-ASP.NETCoreappfailedtostart 错误解释:HTTPError500.30表示在尝试启动ASP.NETCore应用程序时发生了错误。这通常是因为应用程序无法找到或无法正确加载.NETCore运行时或应用程序的相关依赖项。解决方法:确认.NETCore运行时已安装:检查......
  • HTTP1.x HTTP2 HTTP3 的简单对比
    协议简要描述比喻HTTP1.0短连接,一次数据通信,结束后就断开一次性道路,简单暴力通过。HTTP1.1长连接,连接可以被复用,但需要按照资源顺序复用。单向单车道,婚礼车队,不能逆序。HTTP2连接复用,增加了http头部压缩和帧传输,连接可以被异步服用,服务器端可以主动推送资源......
  • ab压测 ab会模拟10个并发用户向网站发送总共100个HTTP GET请求
    ab-n100-c10https://yiyan.baidu.com/-n100:指定总共要发送的请求数,这里是100个请求。-c10:指定并发用户数,即同时有多少个用户(或连接)在发送请求,这里是10个并发用户。https://www.163.com/:要测试的HTTPS服务器的URL。执行这个命令后,ab会模拟10个并发用户向https://w......
  • httpclient,轻量级idea集成测试工具
    优点:不用新开一个网页,具有测试数据保存功能,不需要配置即用(对比swagger)   不会特别占内存(对比postman) 使用方法:idea中安装插件controller方法中点击 选择对应action 即可自动生成测试,点击左侧三角即可测试。但是数据内容需要自己填写如下:###分页查询POST{......
  • HTTP和HTTPS的区别
    目录HTTP和HTTPS的区别1)什么是HTTP2)什么是HTTPS3)HTTP与HTTPS的区别4)HTTP的工作原理5)HTTPS的工作原理HTTP和HTTPS的区别1)什么是HTTPHTTP(HyperTextTransferProtocol:超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议。它是一种请求-响应协议,在客户端用户代......
  • 利用cJSON库解析http返回参数
    利用cJSON库解析http返回参数在C语言中,使用cJSON库来解析HTTP响应返回的JSON参数通常涉及几个步骤:发送HTTP请求(可以利用soket库进行http请求)接收HTTP响应的数据将接收到的数据作为字符串传递给cJSON库进行解析使用cJSONAPI访问和提取JSON数据以下是一个示例,展示了如何使......
  • 从零手写实现 nginx-19-HTTP CORS(Cross-Origin Resource Sharing,跨源资源共享)介绍+解
    前言大家好,我是老马。很高兴遇到你。我们为java开发者实现了java版本的nginxhttps://github.com/houbb/nginx4j如果你想知道servlet如何处理的,可以参考我的另一个项目:手写从零实现简易版tomcatminicat手写nginx系列如果你对nginx原理感兴趣,可以阅读:从零......
  • 高效管理JMeter中的Cookies:测试工程师的全面指南
    前言在性能测试和自动化测试中,Cookie管理是一个至关重要的环节。ApacheJMeter提供了强大的Cookie管理器,帮助测试工程师在模拟用户会话和维持状态时更加方便。本指南将详细介绍如何在JMeter中配置和使用Cookie管理器。什么是Cookie及其重要性Cookie是一种由服务器发送并存储在......
  • c#编写一个简单的http服务器
    C#代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Net;usingSystem.IO;namespaceConsoleApplication1{classProgram{staticvoidMain(string[]args){usin......