对于HTTP代理的设置,命令行格式如下: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代理,务必指定`http.proxyHost`和`http.proxy...
java程序中代理服务器的设置问题?
在内网渗透工作中,搭建反向socks5代理是常用手段之一,红队人员需将各种渗透工具连接至代理。然而,对于使用Java编写的工具,往往不具备socks5代理功能,导致使用proxifier挂载Java程序时出现各种问题。本文将介绍如何通过命令行解决这一难题,并纠正网上关于Java中socks5代理设置方法的错误。
启动socks5代理的命令格式为:
java -DsocksProxyHost=127.0.0.1 -DsocksProxyPort=1080 -jar webscan.jar
其中,`socksProxyHost`为socks5代理的IP地址,`socksProxyPort`为代理的端口号。若需要设置认证,网上文章提供的方法(如`java.net.socks.username`和`java.net.socks.password`)并不适用于命令行环境。实际测试中,此方法无效。
对于HTTP代理的设置,命令行格式如下:
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代理,务必指定`http.proxyHost`和`http.proxyPort`;若需设置HTTPS代理,则指定`https.proxyHost`和`https.proxyPort`。同时,`http.nonProxyHosts`选项用于指定不走代理的URL。
在Java代码中直接添加`System.setProperty`设置代理更为简便。以下为设置HTTP/HTTPS代理的示例代码:
设置代理的代码示例如下:
设置Socks5代理的代码示例如下:
代理认证的代码编写如下:
总结而言,针对Java程序的代理设置,命令行方式提供了一种直接且有效的方法。官方手册是查找Java网络设置方法的重要资源。公众号致力于分享网络安全技术,包括APT分析、红队攻防等知识,每周更新原创内容,欢迎关注。2024-11-03