CTF-辨别细菌

  • 题目描述:try your best to find the flag.
  1. 进入靶场后发现是一个游戏,需要全部答对才可以得到最后的flag

  2. 查看了一下源码,发现有一个答案模板的模块

  3. 尝试解释一下代码

html 复制代码
<!-- 答案模版 -->
<script id="template_game_pic" type="text/html">
<div class="gameTip" data-key="${data.key}">
    ${data.name}
</div>
<div class="gameAnswer">
    <a data-key="${arr1.key}" href="javascript:;" class="answer1"><img src="${arr1.pic}" /><em class="tip1"></em></a>
    <a data-key="${arr2.key}" href="javascript:;" class="answer1"><img src="${arr2.pic}" /><em class="tip1"></em></a>
    <a data-key="${arr3.key}" href="javascript:;" class="answer1"><img src="${arr3.pic}" /><em class="tip1"></em></a>
    <a data-key="${arr4.key}" href="javascript:;" class="answer1"><img src="${arr4.pic}" /><em class="tip1"></em></a>
</div>
<div class="clear"></div>
</script>
<script id="template_game_nam" type="text/html">
    <div class="gameTip" data-key="${data.key}">
        <img src="${data.pic}" />
    </div>
    <div class="gameAnswer">
        <a data-key="${arr1.key}" href="javascript:;" class="answer2"><span class="atext">${arr1.name}</span><em class="tip2"></em></a>
        <a data-key="${arr2.key}" href="javascript:;" class="answer2"><span class="atext">${arr2.name}</span><em class="tip2"></em></a>
        <a data-key="${arr3.key}" href="javascript:;" class="answer2"><span class="atext">${arr3.name}</span><em class="tip2"></em></a>
        <a data-key="${arr4.key}" href="javascript:;" class="answer2"><span class="atext">${arr4.name}</span><em class="tip2"></em></a>
    </div>
    <div class="clear"></div>
</script>
<!-- END 答案模版 -->
  • 第一个模板 "template_game_pic" 用于展示游戏图片:
    • 在一个 div 元素中展示游戏提示,其中data-key 属性的值为 ${data.key} 变量的值,${data.name} 表示游戏名称。
    • 在另一个 div 元素中展示游戏答案,包含四个带有不同数据的 a 元素。每个 a 元素代表一个答案选项,data-key 属性存储着相应的key 值,图片来源通过 ${arr1.pic}${arr2.pic}${arr3.pic}${arr4.pic} 四个变量来指定。
    • 每个答案选项都包含一个图片和一个空置的 em 元素。
  • 第二个模板 "template_game_nam" 用于展示游戏名称:
    • 同样在一个 div 元素中展示游戏提示,其中 data-key 属性的值为 ${data.key} 变量的值,${data.pic} 表示游戏图片。
    • 在另一个 div 元素中展示游戏答案 ,包含四个带有不同数据的 a 元素。每个 a 元素代表一个答案选项,data-key 属性存储着相应的 key 值,玩家名称通过 ${arr1.name}${arr2.name}${arr3.name}${arr4.name} 四个变量来指定。
    • 每个答案选项都包含一个玩家名称和一个空置的 em 元素。
  1. 看不懂没有关系,在答题的时候用审查元素查看一下代码试试

  2. 使用审查元素选中后查看源代码发现了有意思的东西,问题处的data-key的值与答案处的data-key的值有一样的,那那个选项会不会是答案呢?

  3. 根据源代码的提示后选择答案,发现是正确的,那么接下来就很简单了,只需要一直这样对下去

  4. 直到最后出现一个弹窗

  5. 根据要求输入名字,随便一个都可以

  6. 恭喜我们获得flag,但是要寻找

  7. 获得萌新称号

  8. 以为会跳出flag来,结果没有,找了半天,在控制台处找到

相关推荐
九硕智慧建筑一体化厂家5 小时前
直流智能照明|一站式低碳照明解决方案,安全、节能、降本、全场景适配
安全
admin and root10 小时前
「移动安全」安卓APP 反编译&frida脱壳技巧分享
android·开发语言·python·web安全·微信小程序·移动安全·攻防演练
小程故事多_8010 小时前
算力工厂与安全沙箱,企业AI规模化落地的两条核心生命线
人工智能·安全
云水一下10 小时前
零基础玩转bWAPP靶场(十四):SQL 注入(GET/选择型)
web安全·sql注入·bwapp
牛马工作号11 小时前
Zigbee 专业详解:从协议到排障
网络·物联网·安全
延凡科技11 小时前
智慧燃气解决方案:管道煤气监管应用管理系统(三维GIS+IoT+大数据落地实战)
大数据·人工智能·科技·物联网·安全
spear80012 小时前
高压绝缘测试安全指南:击穿保护、燃弧定位、快速放电、抗干扰滤波详解
安全·绝缘电阻·三级承装承修承试资质公司设备·电缆绝缘电阻
sbjdhjd13 小时前
SQL 注入零基础详解:原理、手工注入流程与 Sqli-Labs 靶场实战1~5关和第9关思路
数据库·sql·计算机网络·web安全·网络安全·网络攻击模型·安全架构
liukuang11013 小时前
Zara“夺命裤”风波,白晨铭的安全大考
安全
Android小码家13 小时前
OWASP 移动应用安全之授权(MASTG-DEMO-0090)
android·安全·frida