码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [b01lers2020]Welcome to Earth-1


    1、打开之后界面如下,查看源代码信息,发现chase文件,结果如下:

    2、访问chase文件会一直跳转到die界面,那就只能抓包进行查看,发现leftt文件,结果如下:

    3、访问leftt文件并查看源代码信息,发现shoot文件,结果如下:

    4、访问shoot文件并查看源代码信息,发现door文件,结果如下:

    5、访问door文件并查看源代码信息,发现check_door()函数和door.js文件,结果如下:

    door.js文件内容如下:

    6、在door.js文件中发现了open文件,访问open文件并查看源代码信息,发现open_sesame.js文件,结果如下:

    open_sesame.js文件内容如下:

    7、在open_sesame.js文件中发现fight文件,访问fight文件并查看源代码信息,发现fight.js文件,结果如下:

    fight.js文件信息内容如下:

    8、到这里就没有思路了,原以为是执行scramble函数获取flag值,但是执行了之后并未成功获取到flag值,那就只能手动的进行排列组合了,简单的分析下{hey肯定在第二个位置,ck!}肯定在最后一个位置,pctf应在实在第一个位置的,那就剩_boy、aaaa、s_im、_baa、aaaa五个进行排列组合,5*4*3*2*1=120中,也是无语了,这么多那肯定不是让手动组合的,然后就在网上查找了下发现都是采用这个代码来实现的,最终成功获取到flag值,代码信息如下:

    from itertools import permutations
    import re
    
    flag = ["{hey", "_boy", "aaaa", "s_im", "ck!}", "_baa", "aaaa", "pctf"]
    # 对flag字典里的内容进行排列组合
    item = permutations(flag)
    # 遍历
    for a in item:
        k = ''.join(list(a))
        # 匹配
        if re.search('^pctf\{hey_boys[a-zA-z_]+ck!\}$', k):
            print(k)

    可执行的scramble函数(但是未执行出来正确flag),代码如下:

    var flag = ["{hey", "_boy", "aaaa", "s_im", "ck!}", "_baa", "aaaa", "pctf"];
    var key = "Earth";//自己随便写的
    function scramble(flag,key) {
      for (var i = 0; i < key.length; i++) {
        let n = key.charCodeAt(i) % 8;
        let temp = flag[i];
        flag[i] = flag[n];
        flag[n] = temp;
      }
      return flag;
    }
    console.log(scramble(flag,key));
    document.write(scramble(flag,key));

    结果如下:

  • 相关阅读:
    人工智能基础知识
    JDK1.8新特性介绍+Lambda+函数接口+方法、构造方法和数组引用及Stream流
    leetcode刷题日记:160. Intersection of Two Linked Lists(相交链表)
    Hystrix熔断器整合 - Feign实现服务容错
    TensorFlow简介及下载地址
    [MySQL]-压力测试之Sysbench
    DEJA_VU3D - Cesium功能集 之 052-模拟卫星轨道(高空)效果
    ASL集睿致远 MIPI转LVDS芯片 CS5518规格书 PIN to PIN替代GM8775C 工业级标准
    代码随想录算法训练营第五十九天 | 动态规划 part 17 | 647. 回文子串、516.最长回文子序列
    只有程序员才能看懂的16张高端漫画
  • 原文地址:https://www.cnblogs.com/upfine/p/16542916.html
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号