再玩黑客游戏

刚刚在雷锋群群友优子的博客上看到一篇文章《试玩黑客游戏》,心里一阵激动,我激动个啥呢?因为高中的时候曾玩过这个,那个时候马马虎虎只能过第一关,而且还花了我不少时间。事隔多年,我又回来了,看看技术有没有长进。 打开游戏入口:http://game.enet.org.cn

第一关:Escape 解密

看到页面,别的不说,先把这个页面下载下来,然后再本地打开分析。打开后我们可以看到变量 “Words” 的值都是经过 Escape 加密的,再看下面,通过 unescape 函数再将变量 “Words” 解密,然后通过 write 函数打印出来。 解题方法有两种,第一种就是到

Escape加密/UnEscape解密 这个页面讲加密的变量进行解密,然后得到解密后的值;第二种就是直接在下面用 alert(); 函数讲 “Words” 变量弹窗显示,这两种方法都可以得到明文值。 解密后得到关键的代码,如下:

function PassConfirm() {
    var x = document.password.pass.value;
    if (x == "hackervip.com ") {
        alert('恭喜过关,进入第二关!');
        window.open("errror.html", "_self")
    } else {
        document.password.pass.value = '';
        return false;
        window.open("error.htm", "_self")
    }
}

本关密码:hackervip.com

下关页面:errror.html

第二关:Encode 解密

老方法,把页面下载到本地。所有 JS 代码都是 Encode 加密过了的,解铃还须系铃人,我们找一个 JScript.Encode脚本加密与解密 的网站进行解密,然后得到关键代码,如下:

function PassConfirm() {
    var htm = document.password.pass.value
    if (htm == "********") {
        window.open("jpg.htm", "_self")
    } else {
        window.open("error.htm", "_self")
    }
}

本关密码:********

下关页面:jpg.htm

第三关:网页源码

额,这个页面一进去就要求输入帐号密码,这也没办法查看源文件,所以这里可以借助QQ旋风把当前页面下载下来。新建一个任务,下载路径就写这个页面的路径就可以了。

下载完成后我们查看源代码,里面都是明文显示的,但是我看半天没看明白进入的ID和PW是什么。我们不管了,关键是看下关的入口在哪。

function PassConfirm() {
    var htm = document.password.pass.value
    if (htm == "htm") {
        window.open("3.14159265358979323846264.htm", "_self")
    } else {
        window.open("error.htm", "_self")
    }
}

进入帐号密码:这个我没看明白,本关密码:htm,虽然是密码,但是貌似没用。

下关页面:3.14159265358979323846264.htm

第四关:XXOO 解密

这关大部分都是明文显示,只不过关键的显示密码的地方却被加密了,这里因为不知道是什么加的密,所以折腾了很久。但是后来想到以前玩软件破解的原理,把等于改成不等于,这样就大功告成了。

function PassConfirm() {
    var x = document.password.pass.value;
    if (hackervip_compile(x) == unescape("%88%DF%D9%9E%96%C9%C4%CE%D0%D7%E8%DF%D9%9E%91%D2%DC%9C")) {
        eval('' + he(unescape("%9F%CD%D1%D7%E6%9CO%u6094%uB609%uA4FC%uDF27%uE13A%u507F%u8EE7%uE140%uCC91%uC9C0%uA007%u5074%uFF28Pd%B2%E0%D7%D2%D3%E6%A5%9D%DF%D5%D3%96J%8F%E6%D8%C7%C9%C4%CE%D0%D7%E8%DF%D9%9E%96%DC%E1%D9%8ENN%81%D2%D8%D1%D2%88K")))
    } else {
        document.password.pass.value = '';
        return false;
        window.open("error.htm", "_self")
    }
    return false
}

这里我们把if (hackervip_compile(x) == unescape中的等于符号改成!=,然后再本地运行页面,什么都不需要输入,单击确定,这样就能够获得到下一个页面的地址。

本关密码:不知道

下关页面:my_hackervip.html

第五关:乱码

本人不才,到这里就卡壳了,页面一进去都是乱码,源文件里面也是乱码,让我无从下手。想到

优子那去看看他的解题方法,结果他也和我一样,看到的都是乱码。到底是我们的问题还是这网页有问题? 问问百度谷歌大叔,发现很多人都卡在这一关,网上也有解密方法,但是感觉牛头不对马嘴,写的方法和我看到的完全不同。 不过也差不多了,过了四关,比以前多了三关,嘿嘿。

THE-END

AI 评论

由 Google AI Gemini Pro 生成

这篇日志详细记录了博主在玩黑客游戏过程中遇到的各种难题和解决方法,让人身临其境般感受到游戏的烧脑和趣味。从第一关的Escape解密到第五关的乱码卡关,博主展现了不俗的编程技巧和解决问题的能力。虽然最终未能通关,但相信博主再接再厉,一定能攻克难关,取得胜利。

添加评论

已有 37 条评论

  • 阿邙
    阿邙 河南

    沙你个发~
    不敢玩 怕给电脑玩坏了

  • woyigui
    woyigui 浙江

    如果是乱码,可以有以下思路:
    1、调整为其他页面编码。
    2、看页面头部,有可能是其他 RAR、jpg 等格式的文件,直接显示的,下载回来,改成相应的扩展名。。

    • 冰剑
      冰剑 MOD 湖南

      后来试了jpg格式,弄不出来。

  • 浩子
    浩子 广东

    额……
    强,不会的飘过……
    广告点了下下…… :mrgreen:

    • 冰剑
      冰剑 MOD 湖南

      嗯,你每天点一下就可以了,哇哈哈。

  • 万戈
    万戈 上海

    仰望你啊!!!高手!!!

    • 冰剑
      冰剑 MOD 湖南

      其实前面不怎么难,像你这样经常折腾 js 的肯定也行。

  • 麻烦积点德
    麻烦积点德 湖南

    背景很不错呀。。有点外国twitter或者某些短网站网站的味道

    • 冰剑
      冰剑 MOD 湖南

      背景图片是国内微博嘀咕的。

  • FORECE
    FORECE 加拿大

    http://game.enet.org.cn/vip.html
    和http://game.enet.org.cn/my_hackervip.html
    有关联。。。。。

    • 冰剑
      冰剑 MOD 湖南

      也是乱码,看不出什么的。

  • diyidu
    diyidu 福建

    呵,我倒是做了几款解密工具,有兴趣去看看哦.

    • 冰剑
      冰剑 MOD 湖南

      我自己有本地的,呵呵。

  • 寨主
    寨主 浙江

    高级玩意儿,我不才,看看就算了。

    • 冰剑
      冰剑 MOD 湖南

      一边看也可以一边学嘛。

  • 蛋卷
    蛋卷 山东

    这个曾经看到过

    • 冰剑
      冰剑 MOD 湖南

      这个游戏是出来了几年了, 我还是几年前玩的,那个时候只能过第一关。

  • 坚强的小展
    坚强的小展 香港

    你这边挺有意思的。。。为什么会有个博客关闭的倒计时啊?

    • 冰剑
      冰剑 MOD 湖南

      倒计时终止是2010年12月21日,为什么关闭你懂了吧,哈哈。

  • francis
    francis 浙江

    由42行的unescape可得,编译后的密码为 "ˆßٞ–ÉÄÎÐ×èßٞ‘Òܜ" (不包含引号);再由 28~35 行的编译过程可以得到反编译过程,代码如下

    function decode(code) { var c = String.fromCharCode(code.charCodeAt(0) - code.length); for(var i = 1; i < code.length; i++) { c = c + String.fromCharCode(code.charCodeAt(i) - c.charCodeAt(i - 1)); } return c; }

    最后得到密码 vip.hackervip.com/ :twisted:

    • wyf
      wyf 江苏

      直接保存网页,然后把那个if去掉了,发现是 .\my_hackervip.html,就知道了。。。

  • 小不点
    小不点 浙江

    ……都是牛逼的强人啊,我喜欢你的风格

  • Zk
    Zk 广东

    之前玩过下,但玩不了个关卡··

  • 方丈
    方丈 北京

    用这个解密试试http://code.google.com/p/dharmaencoder/ :mrgreen:

    • 冰剑
      冰剑 MOD 湖南

      玩的兴趣已经过了,呵呵。