走近科学:全面了解朝鲜Naenara(我的国家)浏览器

  Naenara浏览器是朝鲜红星(Red Star)操作系统中的浏览器,也是基于Firefox浏览器某个历史版本的修改版。众所周知,朝鲜牢牢控制着国民的通信和活动情况,想必也会牢牢控制着互联网。美国白帽实验室的Robert Hansen近日撰写了一篇博文,深入探究了这款朝鲜制造的浏览器。

  朝鲜版Firefox:Naenara浏览器

  Naenara(意为:我的国家)浏览器是朝鲜红星(Red Star)操作系统的内置浏览器,是朝鲜版本的Firefox。最近我试用了了Naenara浏览器3.5版本。我的第一印象是,这货就是Firefox的某个历史版本啊,Firefox在此之后应该已经有过6,7次重大更新了。从这款浏览器的菜单来看,我觉得这浏览器应该是5年之前的了。

  不过这也不算很奇怪,对于一个这么小的团队,要让他们一直更新浏览器的确有些强人所难,我知道他们肯定还有很多别的事要做。

  当我第一眼看到浏览器的图片的时候我震惊了,我发现它首次启动时是向http://10.76.1.11/发送的请求。如果你有点常识,就知道这是个局域网地址。

  朝鲜国家网络就是局域网

  局域网也就意味着朝鲜所有国家网络都在一个不可路由的IP段里。是的,他们的全国互联网就类似中小企业的局域网。朝鲜全国的网络是一个A类(16,777,216个IP地址)网络。我以为他们是假装拥有共有IP段,通过一份接入控制列表选择性地屏蔽出口浏览。显然我错了……

  然后我开始深入研究浏览器的配置,接着发现了以下这些宝贵信息:

  他们使用与Google相同的追踪系统,创建不同的Key。

  所有的浏览器崩溃报告都会被发送到10.76.1.1。所以每当浏览器崩溃时,他们就能够得到信息。这些信息对程序调试很有用,对于寻找Firefox漏洞也很有用,信息当然不会反馈给Mozilla。

  非常奇怪的是,当浏览器无法连接指定的网址时,它自动添加的后缀是“.com”而非“.com.kp”。这实在是太奇怪了,如果有人打错了网址,浏览器可能就会去连接国外的主机。

  很多地方指向了http://10.76.1.11站上的“.php”地址。这个站大部分的东西都应该是用PHP写的。

  我还发现了一个网址:http://10.76.1.11/naenarabrowser/%LOCALE%.www.mozilla.com/%LOCALE%/firefox/geolocation/。这是用户开启位置定位(geolocation)功能时的警告。但是如果你去掉前面那段朝鲜的URL,就剩下%LOCALE%.www.mozilla.com/%LOCALE%/firefox/geolocation/,然后你把%LOCALE%替换成“ko”,你上的就是Mozilla的韩语官网了。

  有没有可能http://10.76.1.11/naenarabrowser/的功能就是代理服务器呢?有没有可能朝鲜人民实际上是通过一个大型的代理服务器访问互联网?

  我还发现很多类似的网址,如:

  http://10.76.1.11/naenarabrowser/safebrowsing.clients.google.com/safebrowsing/diagnositc?client=%NAME%&hl=%LOCALE%&site=

  很明显浏览器可以安装部分拓展、插件和主题,但不清楚是能够安装全部的插件还是说只能安装部分他们自己的插件:

  http://10.76.1.11/naenarabrowser/%LOCALE%/%VERSION%/extensions/ http://10.76.1.11/naenarabrowser/%LOCALE%/%VERSION%/plugins/

  http://10.76.1.11/naenarabrowser/%LOCALE%/%VERSION%/themes/

  显然,所有发自朝鲜的邮件会经由10.76.1.11。这样的做法很奇怪,而且容易遭到中间人攻击,或者被嗅探,但我想可能朝鲜没人有秘密,有秘密也不会放在邮件里:http://10.76.1.11/naenarabrowser/mail/?To=%s。

  日历也是这样:http://10.76.1.11/naenarabrowser/webcal/?refer=ff&url=%s。

  Naenara没有默认Google搜索引擎

  更加离奇的是我发现Wifi位置索引的网址是https://www.google.com/loc/json。Google的Wifi小车从来没有开进过朝鲜,而且这个网址居然没有经过“代理”,网址还是HTTPS,难道朝鲜允许出口的HTTPS流量吗?

  Naenara的默认搜索引擎不是Google,我不知道这是不是又是一个代理。搜索字串的编码是UTF-8,而非什么BIG5、ISO-2022-KR或者SHIFT_JIS。搜索网址是http://10.76.1.11/se/search/?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&keyword=,通过比对我发现/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1实际上就是Google进行搜索时的参数。是不是10.76.1.11充当代理,把Google的搜索结果返回给用户呢?

  通过查看浏览器所支持的证书,我惊讶地发现浏览器只接受朝鲜政府发行的证书。

  浏览器可能被政府利用

  浏览器会自动更新,自动更新不能被关闭。可能不是为了保护用户,而是为了让政府在必要时向用户安装恶意软件。

  虽然整个互联网(可能)都通过了代理服务器,浏览器中还是有个默认的UserAgent:“Mozilla/5.0 (X11; U; Linux i686; ko-KP; rv: 19.1br) Gecko/20130508 Fedora/1.9.1-2.5.rs3.0 NaenaraBrowser/3.5b4″。

  尽管红星系统把很多功能禁掉了,它的文件管理器只能显示一部分目录,他们关闭了“打开”(Command O)功能,去除了omnibar,但还是有办法的。用户可以通过浏览器访问file:///来查看文件。

  系统默认安装了Snort入侵检测系统,可能是为了保证安全,也有可能是为了要监控网民的活动。

  “很奇怪,他们居然通过一个IP地址做那么多事,这会使访问变得很慢,”作者称,“我猜想朝鲜使用一个代理并且把各个核心功能通过URL分离,交由一个主机群处理。”

  最后附上福利:Red Star 3.0 桌面版 下载

  校验值:

  acf53d2b50ecb1391044b343502becf5 redstar_desktop3.0_sign.iso

  3eb7ca51105614f3716ceb7dad0ceda9ba0f906a redstar_desktop3.0_sign.iso

  895ad0e01ae0d35a65e9ac42dd34d0a1d685d6dfa331ce5b4f24bbc753439be3 redstar_desktop3.0_sign.iso

 

上一篇:智能无惧挑战 山石网科轰动RSA2015

下一篇:恶意软件新玩法:隐匿在Pastebin上的后门