0ctf2017 web题目总结 2017-03-23| CTF 前言周末没来得及好好做做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) 2017-03-21| 漏洞分析 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知识总结 2017-03-13| CTF 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 2016-11-03| CTF 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重现分析) 2016-11-01| 漏洞分析 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 学习总结 2016-10-28| 二进制 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 : " ...
阅读更多 wargame.kr 题目writeup 2016-10-20| CTF adm1nkyj链接: http://wargame.kr:8080/adm1nkyj/ 这题id和pw参数存在注入,关键在于不知道表的列名,如何绕过得到其中的pw和flag数据?
1234if(preg_match("/information|schema|user/i", $id) || substr_count($id,"(") > 1) exit("no hack");if(preg_match("/information|schema|user/i", $pw) || substr_count($pw,"(") > 1) exit("no hack");mysql_query("SELECT * FROM findflag_2 WHERE $id_column=' ...
阅读更多 java反序列化工具ysoserial分析 2016-10-17| java反序列化 0x00 前言由于乌云知识库暂时不能看了,把我之前投稿的文章在博客上发一下。 关于java反序列化漏洞的原理分析,基本都是在分析使用Apache Commons Collections这个库,造成的反序列化问题。然而,在下载老外的ysoserial工具并仔细看看后,我发现了许多值得学习的知识。 至少能学到如下内容:
不同反序列化payload玩法
灵活运用了反射机制和动态代理机制构造POC
java反序列化不仅是有Apache Commons Collections这样一种玩法。还有如下payload玩法:
CommonsBeanutilsCollectionsLogging1所需第三方库文件: commons-beanutils:1.9.2,commons-collections:3 ...
阅读更多 python urllib SSRF攻击Redis 2016-08-02| 漏洞分析 0x00 测试环境docker环境:
12redis_3.2.1:image: redis:3.2.1
容器内网ip为192.168.0.7,直接内网访问6379端口。
0x01 如何攻击Redis两种方案,具体看参考链接。原理都是一样的,写文件到目标目录。
1234CONFIG SET dir /tmpCONFIG SET dbfilename evil //这一步可以将db设置为/tmp/evil,可以控制文件里面的部分数据了。SET foo barSAVE
上述Redis命令可以使key-value数据保存在/tmp/evil文件中,也就是我们可以控制里面的部分内容:
0x02 Python urllib HTTP头注入简单使用一下代码测试访问url:
1234import url ...
阅读更多 CTF题目相关漏洞总结(CBC模式加密,opcache,LD_PRELOAD) 2016-07-02| CTF 0x00 php7 opcache执行 PHP 代码1. 环境配置文章介绍:http://drops.wooyun.org/web/15450http://blog.gosecure.ca/2016/04/27/binary-webshell-through-opcache-in-php-7/ 使用docker拉取php:7.0.8-apache镜像,配置使用opcache。php7默认安装了opcache,这里只需要修改下php.ini文件:
123456[opcache]zend_extension=/usr/local/lib/php/extensions/no-debug-non-zts-20151012/opcache.soopcache.enable=1opcache.valid ...
阅读更多