欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 建筑 > JAVA-Exploit编写(5)--http-request库使用

JAVA-Exploit编写(5)--http-request库使用

2025/1/19 5:41:56 来源:https://blog.csdn.net/weixin_72543266/article/details/145179206  浏览:    关键词:JAVA-Exploit编写(5)--http-request库使用

目录

1.http-request简介

2. 依赖导入

3. GET请求方式

3.1 test.php

3.2 基本使用代码实现

 3.2 请求时请求参数URL编码实现

 3.3 携带多参数请求

3. Post请求方式

3.1 基本使用

3.2 携带单个参数请求 

3.3 携带多个参数请求

4. 设置代理请求 

4.1 方式一

4.2 方式二

1.http-request简介

        http-request 是一个库 里面提供很多方法,使得很容易就可以构造http请求,相比于之前使用的标准库类等要简单使用很多,目前通过此库来编写EXP较多.

2. 依赖导入

<dependency><groupId>com.github.kevinsawicki</groupId><artifactId>http-request</artifactId><version>5.6</version>
</dependency>

3. GET请求方式

3.1 test.php

<?php
var_dump($_REQUEST);

3.2 基本使用代码实现

        相比于之前,实现是不是简单了很多

package com.deger.HttpRequest;import com.github.kevinsawicki.http.HttpRequest;public class HttpRequestTest {public static void main(String[] args) {//发送一个GET请求HttpRequest httpRequest = HttpRequest.get("http://127.0.0.1/test1.php?username=admin");//打印响应内容System.out.println(httpRequest.toString());//打印响应码System.out.println(httpRequest.code());//打印响应体// System.out.println(httpRequest.body());}
}

 3.2 请求时请求参数URL编码实现

//没有编码请求HttpRequest httpRequest = HttpRequest.get("http://127.0.0.1/test1.php?username=小鱼");
//url编码  在参数后增加一个true
HttpRequest httpRequest = HttpRequest.get("http://127.0.0.1/test.php?username=小鱼", true);

没有编码情况 

编码情况下:

 3.3 携带多参数请求

只需要在请求后添加参数即可

HttpRequest httpRequest = HttpRequest.get("http://127.0.0.1/test.php?username=小鱼", true,"age","21");

3. Post请求方式

3.1 基本使用

只改变了调用的方法为post

HttpRequest httpRequest = HttpRequest.post("http://127.0.0.1/test.php?username=小鱼");

3.2 携带单个参数请求 

HttpRequest httpRequest = HttpRequest.post("http://127.0.0.1/test.php").form("username","admin");

3.3 携带多个参数请求

 Map<String,String> data = new HashMap<>();data.put("sex","男");data.put("age","21");data.put("username","小鱼");HttpRequest httpRequest = HttpRequest.post("http://127.0.0.1/test.php").form(data);

4. 设置代理请求 

4.1 方式一

        通过下面这种方式在我自己的电脑使用是没有用的,同规格burp无法抓到包,目前没有发现原因,可以尝试使用一下.

System.setProperty("proxyHost","127.0.0.1");
System.setProperty("proxyPort","8888");//http头信息HttpRequest httpRequest = HttpRequest.post("http://127.0.0.1/test.php").connectTimeout(5*1000).readTimeout(5*1000).form(data);

4.2 方式二

通过在另一种方式找到解决方案,设置.useProxy("127.0.0.1", 9999)属性

注意:.form(data);需要放到所有的参数后,不然会出现报错

//http头信息
HttpRequest httpRequest = HttpRequest.post("http://127.0.0.1/test.php").useProxy("127.0.0.1", 9999).connectTimeout(5*1000).readTimeout(5*1000).header("User-Agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3").form(data);

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com