百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 编程网 > 正文

第12篇:给任意java程序挂Socks5代理方法

yuyutoo 2024-11-22 23:24 1 浏览 0 评论

Part1 前言

在内网横向过程中,经常会用frp、狗洞、nps等工具,在内网环境中搭建一个反向socks5代理,方便红队人员开展内网渗透工作。于是,红对人员需要对各种渗透工具挂上Socks5代理,使用proxifier这个工具挂全局s5代理是非常方便的,但是有的渗透工具是使用java写的,而且作者并没有编写Socks5代理功能,用proxifier挂java.exe进程的时候总会出现各种各样的问题,这种情况下可以用java自带的命令行功能解决。

本文章的各种命令都经过ABC_123的严格测试,同时仔细阅读了官方的Oracle的手册,也纠正一下网上各种文章的错误。

技术研究过程

  • 命令行挂Socks5代理

启动Socks5代理命令如下:

java -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=1080 -jar webscan.jar

其中socksProxyHost是Socks5代理的IP地址,socksProxyPort是Socks5代理的端口号。socksProxyVersion版本号是5或者是4,默认是5版本,也就是Socks5代理,这里也可以指定。

如果socks5代理需要用户名及密码时,网上的文章介绍的方法是:

java -DsocksProxyHost=10.1.1.2 -DsocksProxyPort=8877 -Djava.net.socks.username=alibaba -Djava.net.socks.password=secret(此方法亲测无效,目前我也没找到命令行下设置S5代理用户名及密码的方法)

其中,java.net.socks.username是Socks5代理认证的用户名,java.net.socks.password是Socks5代理认证的密码。但是我java命令行接上述两个参数,怎么都弄不成功,总是提示Socks认证失败,如下图所示:

  • 命令行挂HTTP代理

如果想对一个Java程序设置HTTP代理,或者想用burpsuite对一个java程序进行抓包,那就按如下所示设置:

Java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttps.proxyHost=127.0.0.1 -Dhttps.proxyPort=8080 -Dhttp.nonProxyHosts="*.example.com|localhost" -jar webscan.jar

这里重点纠正一下网上各种文章的错误:

如果想使用代理访问HTTP的URL,则必须使用http.proxyHost,http.proxyPort。如果想用代理访问HTTPS的URL,则必须使用https.proxyHost,https.proxyPort。如果想同时抓HTTP、HTTPS的url访问的话,以上4项是必须设置的,缺一不可!

具体命令解释如下:

http.proxyHost是HTTP代理的IP地址,http.proxyPort是HTTP代理的端口,https.proxyHost是HTTPS代理的IP地址,https.proxyPort是HTTPS代理的端口

http.nonProxyHosts(经过我测试,此选项对于http/https型URL均适用),用于指定哪些IP地址可以直连网络,不走HTTP/HTTPS代理,*是IP地址的通配符,按照|分割每个IP段,前后加上双引号包裹起来。

如果HTTP代理需要用户名密码的话,则按照如下设置(以下命令摘抄自网络,本地没有带用户名密码的http代理环境,所以没测试):

Java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8080 -Dhttp.proxyUser=username -Dhttp.proxyPassword=password -Dhttp.nonProxyHosts="*.example.com|localhost|10.*.*.*" -jar webscan.jar

http.proxyUser是HTTP代理的用户名,http.proxyPassword是HTTP代理的密码,如果没有设置用户名密码认证,就不用设置这两项。

HTTPS代理设置如下:

java -Dhttps.proxyHost=host -Dhttps.proxyPort=port -Dhttps.proxyUser=user -Dhttps.proxyPassword="password" -Djavax.net.ssl.trustStore=c:/cacerts -Djavax.net.ssl.trustStorePassword=changeit -jar webscan.jar

  • 如果使用系统代理的话

java -Djava.net.useSystemProxies=true -jar webscan.jar

那么webscan.jar程序将会走IE浏览器设置的代理,也就是系统代理。然后打开IE浏览器,在“代理服务器”选项卡下设置一个代理IP即可:

  • Java代码编写中设置代理

我在编写各种Java工具时,一开始总是为写HTTP代理、Socks5代理头疼,因为太麻烦了。后续发现了一个简单有效的方法,可以在代码中直接添加System.setProperty设置,非常好用。

设置HTTP/HTTPS代理如下:

设置Socks5代理代码如下:



ProxyAuth类编写如下:


总结

1. 看官网手册挺重要的,更多的java命令行的网络设置方法,可以看Oracle官方的手册

https://docs.oracle.com/javase/8/docs/technotes/guides/net/properties.html

https://docs.oracle.com/javase/10/docs/api/java/net/doc-files/net-properties.html

2. 这种方法对于一些特殊框架编写的Java应用无效,这只是极少数的情况,我在具体渗透过程中,还没有遇到。

专注于红队、蓝队技术分享

每周一篇,敬请关注

相关推荐

史上最全的浏览器兼容性问题和解决方案

微信ID:WEB_wysj(点击关注)◎◎◎◎◎◎◎◎◎一┳═┻︻▄(页底留言开放,欢迎来吐槽)●●●...

平面设计基础知识_平面设计基础知识实验收获与总结
平面设计基础知识_平面设计基础知识实验收获与总结

CSS构造颜色,背景与图像1.使用span更好的控制文本中局部区域的文本:文本;2.使用display属性提供区块转变:display:inline(是内联的...

2025-02-21 16:01 yuyutoo

写作排版简单三步就行-工具篇_作文排版模板

和我们工作中日常word排版内部交流不同,这篇教程介绍的写作排版主要是用于“微信公众号、头条号”网络展示。写作展现的是我的思考,排版是让写作在网格上更好地展现。在写作上花费时间是有累积复利优势的,在排...

写一个2048的游戏_2048小游戏功能实现

1.创建HTML文件1.打开一个文本编辑器,例如Notepad++、SublimeText、VisualStudioCode等。2.将以下HTML代码复制并粘贴到文本编辑器中:html...

今天你穿“短袖”了吗?青岛最高23℃!接下来几天气温更刺激……

  最近的天气暖和得让很多小伙伴们喊“热”!!!  昨天的气温到底升得有多高呢?你家有没有榜上有名?...

CSS不规则卡片,纯CSS制作优惠券样式,CSS实现锯齿样式

之前也有写过CSS优惠券样式《CSS3径向渐变实现优惠券波浪造型》,这次再来温习一遍,并且将更为详细的讲解,从布局到具体样式说明,最后定义CSS变量,自定义主题颜色。布局...

柠檬科技肖勃飞:大数据风控助力信用社会建设

...

你的自我界限够强大吗?_你的自我界限够强大吗英文

我的结果:A、该设立新的界限...

行内元素与块级元素,以及区别_行内元素和块级元素有什么区别?

行内元素与块级元素首先,CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值,分别为块级(block)、行内(inline)。块级元素:(以下列举比较常...

让“成都速度”跑得潇潇洒洒,地上地下共享轨交繁华
让“成都速度”跑得潇潇洒洒,地上地下共享轨交繁华

去年的两会期间,习近平总书记在参加人大会议四川代表团审议时,对治蜀兴川提出了明确要求,指明了前行方向,并带来了“祝四川人民的生活越来越安逸”的美好祝福。又是一年...

2025-02-21 16:00 yuyutoo

今年国家综合性消防救援队伍计划招录消防员15000名

记者24日从应急管理部获悉,国家综合性消防救援队伍2023年消防员招录工作已正式启动。今年共计划招录消防员15000名,其中高校应届毕业生5000名、退役士兵5000名、社会青年5000名。本次招录的...

一起盘点最新 Chrome v133 的5大主流特性 ?

1.CSS的高级attr()方法CSSattr()函数是CSSLevel5中用于检索DOM元素的属性值并将其用于CSS属性值,类似于var()函数替换自定义属性值的方式。...

竞走团体世锦赛5月太仓举行 世界冠军杨家玉担任形象大使

style="text-align:center;"data-mce-style="text-align:...

学物理能做什么?_学物理能做什么 卢昌海

作者:曹则贤中国科学院物理研究所原标题:《物理学:ASourceofPowerforMan》在2006年中央电视台《对话》栏目的某期节目中,主持人问过我一个的问题:“学物理的人,如果日后不...

你不知道的关于这只眯眼兔的6个小秘密
你不知道的关于这只眯眼兔的6个小秘密

在你们忙着给熊本君做表情包的时候,要知道,最先在网络上引起轰动的可是这只脸上只有两条缝的兔子——兔斯基。今年,它更是迎来了自己的10岁生日。①关于德艺双馨“老艺...

2025-02-21 16:00 yuyutoo

取消回复欢迎 发表评论: