DDCTF2018 Java SSRF Web出题思路
0x00 说明这次DDCTF2018我出了一道Java Web题目“喝杯Java冷静下”,这里记录下一些出题思路和用到的技术。 0x01 出题思路和技术 通过任意文件下载漏洞,下载java配置文件和class字节码文件。 通过blind XXE进行SSRF攻击。 修改Struts2 POC,读写文件。 整个题目由3个Docker环境内联启动。Java程序基于开源项目quick4j开发,升级了相关可能存在风险的第三方Jar包。 很担心大家会走错思路使用shiro框架的反序列化漏洞进行攻击。 为防止搞事,tomcat启动使用gosu工具指定低权限用户www-data进行启动。 Java Blind XXE读文件,如果是多行会有问题,因此我将flag文件设置成了1行。试过ftp协议,可能是JDK ...
阅读更多
DDCTF 2017 writeup
0x00 前言官方题目下载链接: http://sec.didichuxing.com/static/upload/attachment//article//20170608/1496941331468739866.zip官方解答视频: http://v.youku.com/v_show/id_XMjgxOTkxNjQ4NA==.html?spm=a2h0k.8191407.0.0&from=s1.8-1-1.2 最近整理资料的时候,想起了当时DDCTF的事情,一直没有整理个writeup。今天我从当时发送题目writeup的邮件里面整理出来,记录一下。客观来讲,题目质量很好,当时让我学习到了很多东西,真的值得好好做一做。嗯为滴滴打call 0x01 Hello这题是Mac下的执行文 ...
阅读更多
CTF知识点记录
0x00 前言有半年没更新博客了,这次记录一下最近在ctf中学到的3个知识点,和其中一个详细的思路。 0x00 perl cgi特性pwnhub最新一期《胖哈勃归来》中,是SECCON 2017 Online CTF原题SqlSRF。但是,这次需要用到perl的语言特性来产生另一个解。这里记录一下我的思路和复现过程,很有意思~ 1. 原题解法源码如下: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061#!/usr/bin/perluse CGI;my $q = new CGI;use CGI::Session;my ...
阅读更多
SROP技术CTF案例
0x00 相关资料原始paperSigreturn Oriented Programming (SROP) Attack攻击原理linux系统调用表(system call table) 挺有意思的技术,我就记录一下了。 0x01 smallest题目案例真有意思的pwn题目,让我重新学习了一下pwn。objdump二进制文件,只有几行汇编代码: 123456700000000004000b0 <.text>: 4000b0: 48 31 c0 xor %rax,%rax 4000b3: ba 00 04 00 00 mov $0x400,%edx 4000b8: 48 89 e ...
阅读更多
0ctf2017 web题目总结
前言周末没来得及好好做做0ctf,现在整理学习一下~~ complicated xss题目介绍有两个网站,government.vip和admin.government.vip:8000。 漏洞也有两个: government.vip xss 没防护 admin.government.vip:8000网站cookie中的username可以xss。有个sandbox防护~ 最终需要有admin权限上传shell~ 设置子域cookie根据上面两个漏洞,可以得到大致思路:通过government.vip网站,设置admin.government.vip:8000中的usernamecookie(里面是我们构造好的Payload)。然后,让管理员转到admin.government.vip: ...
阅读更多
S2-046分析(CVE-2017-5638)
0x00 漏洞简介今天出现了新的S2-46漏洞,看了下和S2-045漏洞很相似。最终的利用函数也是一样的,具体请参考我之前的分析http://paper.seebug.org/241/。 这里,我记录下这个漏洞调试的几个点,和关键地方。 官方公告,请看http://struts.apache.org/docs/s2-046.html 仔细阅读漏洞描述: ProblemIt is possible to perform a RCE attack with a malicious Content-Disposition value or with improper Content-Length header. If the Content-Dispostion / Content-Length ...
阅读更多
Pwnhub知识总结
0x00 前言pwnhub的题目出的都挺好,强烈推荐网址:https://pwnhub.cn/。 基本都没做到最后,复现了一下。记录学习到的知识 0x01 另一份文件这题flag就在upload文件夹下。只是php的权限删不掉它。Glob是按字母顺序排序的,上传比flag文件名靠后的文件名。这样就能通过是否上传成功来判断Flag的文件名。 脚本: 123456789101112131415161718192021222324252627282930__author__ = 'angelwhu'import requestsimport stringdef getz(): ''' str_printable = string.printable print str_print ...
阅读更多
第七季极客大挑战writeup和swup web400
php is fun源码审计,感觉我还是比较喜欢做审计的题目,不用脑筋~~ 12345678910111213141516171819<?phpif(isset($_GET) && !empty($_GET)){ $url = $_GET['file']; $path = "upload/".$_GET['path'];}else{ show_source(__FILE__); exit();}if(strpos($path,'..') > -1){ die('SYCwaf!');}if(strpos($url,'http://127.0.0.1/') === 0){ ...
阅读更多
tomcat本地提权(CVE-2016-1240重现分析)
0x00 简单复现漏洞相关描述,请参考链接3。 tomcat本地提权漏洞,准确来说应该是Debian系统给的一个启动脚本有问题。这让我学习到了一种新的漏洞攻击形式。由于之前对shell脚本有所了解,决定通读一下漏洞POC。学习一下漏洞利用知识。 首先,用apt-get安装tomcat6(官方似乎没管tomcat6,依然存在漏洞) 安装并且给tomcat6用户赋予密码和bash: 123sudo usermod -s /bin/bash tomcat6passwd tomcat6su -l tomcat6 运行POC提权 运行链接3中给的POC。重启下tomcat服务,即可获得root shell。 1$ ./ tomcat_CVE-2016-1240.sh /var/lib/tomc ...
阅读更多
pwn 学习总结
0x00 记录下学习过程首先,安天实验室几个pwn专题的实验不错。学习了下,当做入门。 入门之后,找到了练手的好地方:http://pwnable.kr/,这个网站的题目真的很不错。先做简单的,一般都能从网上搜到思路。然后,自己分析写写exp。 接下来,我记录下pwnable.kr上的几个简单题目。 0x01 bof最简单的栈溢出,源码都给了: 123456789101112131415161718#include <stdio.h>#include <string.h>#include <stdlib.h>void func(int key){ char overflowme[32]; printf("overflow me : " ...
阅读更多