首页
社区
课程
招聘
[讨论]代理的作用
发表于: 2016-7-3 10:08 2132

[讨论]代理的作用

2016-7-3 10:08
2132
之前看过一部美剧《dark angle》,由 茜卡.阿尔芭 主演的。剧里面的男主角是个电脑高手,过一段时间他就会黑掉电视网络和互联网络 以发布“他的新发现”(主要是城市里的丑恶现象)。因此,剧里的警方和各个反对派的势力都在“追踪”他,但都没有成功。原因是:男主开启了“二级代理”,无法在短时间内追踪到!

我很好奇,这个“二级代理”是什么东东?真的有这么神奇吗?

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (24)
雪    币: 245
活跃值: (299)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
最近在写代理软件就来回一下这无聊的问题:
你的电脑是A 去访问受害者电脑B,如果B想要知道A电脑IP很容易可以得到因为他是直接来连接你的,现在要不给发现那就用代理C做为一级代理
A把数据包发给C C再连接B,形成转发,这样连接B的电脑就是C的,那查到的就是C的IP而得不到黑客A电脑的IP,要得到A电脑的IP就先查到C的再进C的去查A,就更安全了
A<->C<->B
还可以加再多二级代理C D
A<->C<->D<->B
这样要得到A的IP就更复杂了,先查到D再进D的电脑查到C再进C的电脑才能查到A
经过代理基本上就查不到了,层数越多查到的可能性就越低
2016-7-3 11:50
0
雪    币: 135
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
<------------------楼主, 关键搜索“黑暗网络" , 会有你想要的!!!
2016-7-3 11:54
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
谢谢提醒
2016-7-3 13:31
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
那对C和D有要求吗?我的意思是,比如,如果我要连google(即假设A是我自己,B是google,C和D是中间的2个代理).......
2016-7-3 13:34
0
雪    币: 245
活跃值: (299)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
临近两个点连接网络通畅就行了,并开放代理协议比如socks5协议 http协议
2016-7-3 13:49
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我的意思是:
如果 A->C->D->B,那是否A和C要在同一局域网内?同样,C与D是否也需要在同一局域网内?
2016-7-3 14:21
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
补充:
我一直对 “代理” 都是比较疑惑的,我之前所理解的 “代理” 是跟 我的PC 应该是在同一局域网内的(因为数据包是广播到该代理的),但这就要求该代理是双网卡(至少是双网卡),一个网口是跟我的PC所在网络相连,另一个是与外面网络相连。对应到我们的例子,就是“代理C”是双网卡的,一个网口跟A相连,另一个跟外面网络相连,那C很有可能是gateway或路由器。

那“代理D”呢?它是“代理C”的代理,按照我上面的理解,“代理D”也是双网卡的(至少双网卡),一个网口跟“代理C”所在网络相连,另一个跟外面网络相连。如果上面的理解没问题的话,则:

1、那 C 跟 D 应该在同一个局域网里面
2、如果上面 1 成立的话,那其实使用“二级代理”也并不是很安全,真的是很容易就能被定位,不大像《dark angle》里面说的那么牛,是否我理解错了?
2016-7-3 16:30
0
雪    币: 25899
活跃值: (5007)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
1、代理是位于本机与目标服务器之间的服务器,作为本机对目标服务器访问的中转,不需要在同一局域网,比如互联网上的代理。
2、理论上访问都可以溯源,但如果作为非法使用,肯定会采取一些手段去消除痕迹。
2016-7-3 20:06
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
楼上,

不太明白你的意思。你提到的
代理是位于本机与目标服务器之间的服务器,作为本机对目标服务器访问的中转,不需要在同一局域网,比如互联网上的代理
,假设本端A位于 192.168.1.0 网段,代理C位于 10.10.10.0网段,本端A 与 代理C 不在一个局域网内(但会有路由辗转可达,即物理上是连通的),本端A 如何可以设定 C 是其代理服务器?
2016-7-3 20:17
0
雪    币: 245
活跃值: (299)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
你要去连接目标机一个内网的机器,肯定是要连接一个目标网段中开放外网连接的IP,你连接的肯定是外网IP,然后通过这机器再去连接那个内网的目标机器,当然这部分已经不是代理的内容了,我上面所说的连接A B C D已经忽略了这部分内容这些都是指外网IP。
另外电影上的内容都是神话的,看他们操作都是几秒的事,但实际中要找到漏洞入侵没有几个月甚至几年的时间是不可能的,不用太过于较真,真实情况下是做不到电影做的效果的。
2016-7-4 01:41
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
楼上,

我并不是去与电影较真,而是很想高清楚代理到底是怎样实现的。先不说 二级代理,单说一个代理C,我之前就已经很头痛了,还是以之前的例子,改一下,假设如下:
1、本端A,代理C,中间经过3个网络(X,Y,Z),设定A发给B的数据包的路径为:A->X->Y->Z->C->B
2、在X,Y,Z这3个网络中,每个网络都有gateway,分别是Xg,Yg,Zg;
3、假设X内有100台pc(包括gateway),Y内有200台pc(包括gateway),Z内有300台pc(包括gateway)
4、假设A内有400台pc(包括gateway),gateway为Ag

则,A发给B的数据包的传送过程如下:
1、A将数据包在它所在的局域网内广播(里面的400台PC每台都收到一份),其中网关Ag收到后转发到X网络
2、数据包在X局域网内广播(里面的100台PC每台都收到一份),其中网关Xg收到后转发到Y网络
3、数据包在Y局域网内广播(里面的200台PC每台都收到一份),其中网关Yg收到后转发到Z网络
4、数据包在Z局域网内广播(里面的300台PC每台都收到一份),其中网关Zg收到后转发到代理C
所在网络(假设里面只有 代理C 一台PC)

由上可见:
数据包由A开始到达C,总共有 1001 (400+100+200+300+1)台PC收到该数据包

疑问:
数据包如何能够在这1001台pc中识别出 C 是代理服务器?

我的理解
1、如果是 代理C 是一个ARP代理服务器,则首先它将A的IP加入它的arp table,任何源地址为A_IP 的数据包,它的src_mac都要改为 C_MAC(代理C的MAC_ADDR)。任何目的地址为A_IP的数据包,代理C不仅不会丢弃,反而会将它转发至A。也就是 不是数据包识别代理C,而是代理C识别数据包(判断源地址和目的地址)

2、如何上面 1 理解没错,那这1001台PC都有可能成为代理(缺省都支持ARP协议),那是否会出现如下情况:
A->Ag->X1->Xg->Y1->Yg->Z1->Zg->C
即:
先黑掉X1,Y1,Z1,在X1的arp table上增加A_IP,在Y1的arp table上增加X1_IP,在Z1的arp table上增加Y1_IP,则对于数据包而言,它的src_mac变动如下:
A:  A_mac
Ag:A_mac
X1:X1_mac
Xg:X1_mac
Y1:Y1_mac
Yg:Y1_mac
Z1: Z1_mac
Zg: Z1_mac
C :  C_mac

3、如果上面 2 分析没错,则假设目标主机是B(即A->(X,Y,Z)->C->B),且假设数据包在 C->B 的过程中被截获,则对方获得的信息如下:
1)dest_mac(B_MAC)
2)src_mac(C_MAC)
3)dest_ip(B_IP)
4)src_ip(A_IP)

关键是4),src_ip 还是A_IP!还是很容易就能找到数据包的发送者(不管你用多少级代理)!

是不是我理解错了?
2016-7-4 09:42
0
雪    币: 248
活跃值: (1121)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
1、大部分代理在TCP/IP或UDP/IP层上,底层的代理更复杂,应用面窄。
2、从访问方向分:代理分客户端代理、服务端代理。C、D上有客户端代理和服务端代理。
3、A\B之间不需要可通的路由,但A和代理及B和代理之间一定要可通的路由。
2016-7-4 12:16
0
雪    币: 878
活跃值: (496)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
好比瑞士银行就是个匿名代理
2016-7-4 12:34
0
雪    币: 245
活跃值: (299)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
牛头不对马嘴,我们在谈代理,你却在说路由的工作原理,代理就是一种socket协议,不是路由层上的东西,你去网上找一下SOCKS5代理的资料学习学习吧!
2016-7-4 17:21
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
4)src_ip(A_IP)
为什么不是 src_ip(C_IP), 如果是A_IP 那么 B—>C怎么回发?
2016-7-4 18:21
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
你是在跟我说吗?

如果我的分析是错的话,请指出来.......
2016-7-4 19:00
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
楼上,

如果是C_IP,那B如何回给 A?
2016-7-4 19:17
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
楼上,

你所说的应用在 tcp/ip 或 udp/ip 层上的代理,对于一个数据包,这个代理修改了些什么内容?src_ip, dest_ip, src_mac 还是 dest_mac?
2016-7-4 19:19
0
雪    币: 248
活跃值: (1121)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
[牛头不对马嘴,我们在谈代理,你却在说路由的工作原理]——鸡同鸭讲。
[你所说的应用在 tcp/ip 或 udp/ip 层上的代理,对于一个数据包,这个代理修改了些什么内容?]代理的作用是转发数据包,无论是客户端的数据包,还是服务端的数据包。
比如:购买产品,你:客户,厂家:产品。钱从你处流向厂家,产品从厂家处流向你,在双流中,凡经手钱和厂家产品的人,称为代理商,有一级代理商,二级代理商,三级代理商。
2016-7-4 22:10
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
有人知道吗?如果我的分析有问题,请指出来。此外,我挺好奇,代理到底修改了数据包的哪些内容(src_mac, src_ip 还是其他什么的),为何回溯追踪会很困难?
2016-7-5 08:23
0
雪    币: 1372
活跃值: (5343)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
22
什么是路由。什么是代理你分清就懂了
2016-7-5 17:42
0
雪    币: 74
活跃值: (25)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
??我的例子里不涉及到路由,上面的例子里也并没 routing table (只有 arp table)......

可否以我的例子为例作一个说明......
2016-7-5 17:46
0
雪    币: 1372
活跃值: (5343)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
24
A-B-C-D

A要给D递一个炸蛋
路由是
A问B "D家里怎么去"?B说你先去C问C,你到了C。C说走这边到D。于是你找到D.包裹交给了D。A和D亲自见了面 知道包裹是你A送的。回头条子来查,D说就是A给的。

代理是
A把包裹给B 并对B说 你把这个包裹给C。他知道怎么做。B把包裹给C了。C看到包裹里有纸条说的是。把这个包裹给D。 D收到了。但是D只见到了C。条子来查D只能找到C。再去找到C,C说是B给的。于是又去查B,B说A给的。 只要中间某个节点不记得了,抹去了痕迹,这条路就死了。

简单点说就是代理A 不直接和D通信。而是通过B C来执行这个操作,而不是问路。

至于对应的ip mac怎么变。你看路由的原理就行,你可以简单点认为路由不改IP只改MAC。
2016-7-5 18:12
0
雪    币: 20
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
只说了思路,不能给个教程吗?
2016-7-29 10:21
0
游客
登录 | 注册 方可回帖
返回
//