网址:http://hackgame.blackbap.org/

第一关 突破客户端:无论输入什么密码都会提示“密码不能为空”,使用浏览器检查网页元素会发现提交时会触发 javascript 函数 chk_submit(),查看该函数的代码发现始终返回 false,于是我们在浏览器的 Console 中将函数的返回值改为 true,即输入 chk_submit=true,再在输入框中输入密码 password 就行了。

第二关 逆向解密

根据提示得到一串 PHP 代码(路径为/tip/nozend.php),有加密的函数但是没有解密的函数,根据加密的过程逆向推出解密的过程并写出代码就可以了

<?php

highlight_file( __FILE__ );

function notrealmd5code($string,$operation='ENCODE') {
if ($operation=='ENCODE'){
$OutTxt = "";
for ($x=0;$x<strlen($string);$x++) {
$nr = ord($string[$x]);
if ($nr < 128) {
$nr += 128;
}
elseif ($nr > 127) {
$nr -= 128;
}
$nr = 255 - $nr;
$OutTxt .= sprintf("%02x", $nr);
}
return $OutTxt;
} else {
/* DECODE MISS
* ord Return ASCII value of character
*/
$OutTxt = "";
$str = str_split($string, 2);
foreach ($str as $key => $value) {
$dec = hexdec($value);
$nr = 255 - $dec;
if ($nr > 128) {
$nr -= 128;
}
elseif ($nr < 127) {
$nr += 128;
}
$OutTxt .= chr($nr);
}
return $OutTxt;
}
}
echo notrealmd5code('1c10121a181e121a0f1016110b4d4d4d','DECODE'); ?>

运行解密函数后得到答案为 comegamepoint222

第三关 寻找Password

Windows 的密码存放路径和 Linux 的用户配置文件存放路径可以通过 Google 得到,分别是 c:\windows\system32\config\SAM/etc/passwd,这样可以得到两个口令,分别是

d18e760f2b15a239328274a447cd67f7
- > NTLM?

$1$1zUVF6AN$uHBYbOv4WW1Z9kkKFnJ2v.
- > MD5(UNIX)?

使用提供的工具(注意更改暴力攻击的选项)破解其中一个,便得到答案 *#!*

第四关 挖掘规则里面的漏洞:下载所给的 PDF 文件,用编辑器(VIM,Sublime Text 等)打开,根据所给的提示(做该题的时候发现链接失效了,于是根据论坛的提示做的),搜索“Action”字符串,发现后面的尖括号内有一串16进制代码 70617373776F72642069733A7064666973576964656C7921,根据提示,这是一个字符串的16进制 ASCII 码,因此我们将其转换为字符串,代码如下

#!/usr/bin/env python3
# Author: renzongxian s = '70617373776F72642069733A7064666973576964656C7921'
for i in range(0, len(s), 2):
print(chr(int(s[i:i+2], 16)), end = '')

运行得到“password is:pdfisWidely!”,答案是 pdfisWidely!

第五关 页面自身的缺陷:有一个输入框可以执行 JavaScript 语句,使用浏览器的检查元素功能发现,提交 JavaScript 语句时会触发一个 Javascript 函数 do_try(),找到该函数的源码发现还有一个 do_other() 函数,而且注释为 getpwd,显然这个函数跟获得密码有关,因此将提交时触发的函数更改为 onclick="do_other('getpwd');" 即可得到密码,答案是 URsoGreat

HackGame2 writeup的更多相关文章

  1. 2016第七季极客大挑战Writeup

    第一次接触CTF,只会做杂项和一点点Web题--因为时间比较仓促,写的比较简略.以后再写下工具使用什么的. 纯新手,啥都不会.处于瑟瑟发抖的状态. 一.MISC 1.签到题 直接填入题目所给的SYC{ ...

  2. ISCC2016 WriteUp

    日期: 2016-05-01~ 注:隔了好久才发布这篇文章,还有两道Pwn的题没放,过一阵子放上.刚开始做这个题,后来恰巧赶上校内CTF比赛,就把重心放在了那个上面. 这是第一次做类似于CTF的题,在 ...

  3. 参加 Tokyo Westerns / MMA CTF 2nd 2016 经验与感悟 TWCTF 2016 WriteUp

    洒家近期参加了 Tokyo Westerns / MMA CTF 2nd 2016(TWCTF) 比赛,不得不说国际赛的玩法比国内赛更有玩头,有的题给洒家一种一看就知道怎么做,但是做出来还需要洒家拍一 ...

  4. 爱春秋之戏说春秋 Writeup

    爱春秋之戏说春秋 Writeup 第一关 图穷匕见 这一关关键是给了一个图片,将图片下载到本地后,打开以及查看属性均无任何发现,尝试把图片转换为.txt格式.在文本的最后发现这样一串有规律的代码: 形 ...

  5. 《安全智库》:48H急速夺旗大战通关writeup(通关策略)

    作者:ByStudent   题目名字 题目分值 地址 MallBuilder2 350 mall.anquanbao.com.cn MallBuilder1 200 mall.anquanbao.c ...

  6. iscc2016 pwn部分writeup

    一.pwn1 简单的32位栈溢出,定位溢出点后即可写exp gdb-peda$ r Starting program: /usr/iscc/pwn1 C'mon pwn me : AAA%AAsAAB ...

  7. We Chall-Training: Encodings I -Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  8. We Chall-Encodings: URL -Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

  9. We Chall-Training: ASCII—Writeup

    MarkdownPad Document html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,ab ...

随机推荐

  1. 2019 计蒜之道 初赛 第一场 商汤AI园区的n个路口(中等) (树形dp)

    北京市商汤科技开发有限公司建立了新的 AI 人工智能产业园,这个产业园区里有 nn 个路口,由 n - 1n−1 条道路连通.第 ii 条道路连接路口 u_iui​ 和 v_ivi​. 每个路口都布有 ...

  2. 七、ARM 指令集

    7.1 数据处理指令 7.1.1 数据传送类 MOV 类指令:核内寄存器间的数据传送 加载和存储指令(L/S):核内寄存器与挂在存储器总线上器件的数据传送 注意: 核内寄存器就是 R0-R15 外设寄 ...

  3. Python---进阶---文件操作---按需求打印文件的内容

    一. 编写一个程序,当用户输入文件名和行数的时候,将该文件的前N行内容打印到屏幕上 input 去接收一个文件名 input 去接收一个行数 ----------------------------- ...

  4. LeetCode--152--乘积最大子序列(python)

    给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数). 示例 1: 输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6.示例 2: 输 ...

  5. 处理后台传过来的json数据-显示到微信小程序的富文本里

    解析数据: JSON.parse(); 获取 加密的文章内容, 将解密文章内容, 将解密后的img标签的路径换成绝对地址(服务器) 调整图片的大小,

  6. CSS画心形和蛋形

    一.心形 使用transform-origin属性实现设置不同的点为原点 1.改变元素基点transform-origin(transform-origin是变形原点,原点就是元素绕着旋转或变形的点) ...

  7. CopyOnWrite 个人理解以及应用

    缘由 最近在看<Redis 设计与实现>,看到Redis的执行bgsave生成dump.rdb是根据CopyOnWrite的 之前也不是很懂为啥要有CopyOnWrite这个东西 翻看文章 ...

  8. Windows Server 2003 IIS 使用 Excel.Application

    在Server2003服务器系统中,配置ASP调用CreateObject("Excel.Application")对象 1.先在服务器中安装Microsoft Excel 2.打 ...

  9. 《SQL Server 2012 T-SQL基础》读书笔记 - 3.联接查询

    Chapter 3 Joins Cross Joins(交叉联接)就是返回两个表的笛卡尔积(m行的表cross join一个n行的表得到一个m * n行的结果),它有两种标准SQL语法,第一种: SE ...

  10. 北风设计模式课程---单一职责原则(Single Responsibility Principle)

    北风设计模式课程---单一职责原则(Single Responsibility Principle) 一.总结 一句话总结: 一个类应该有且只有一个变化的原因:单一职责原则(SRP:Single Re ...