Skip to content

Month: October 2016

HITCON 2016 WEB WRITEUP[2016.10.12已更新web500]

Posted in 每刻,知识分享

HITCON 2016 WEB writeup Are you rich && Are you rich2 这道题有两种解法,在token那里存在注入,可以注入得到flag,或者上网找一个大富豪的bitcoin账号,然后直接填进去就行了,这样两道题都能解出来。 Secure Posts 模板注入,{{config}},填到author那里即可。 Config {‘PREFERRED_URL_SCHEME’: ‘http’, ‘DEBUG’: False, ‘JSON_AS_ASCII’: True, ‘PROPAGATE_EXCEPTIONS’: None, ‘SESSION_COOKIE_SECURE’:…

LCTF 2016 WEB Writeup

Posted in 每刻,知识分享

WEB WEB50 签到题 首先登陆处有注入,报错盲打,猜了个表名和字段,就能得到密码。 登陆后要求你购买flag,抓包后修改flag数目为0,使用intruder爆破密码,即可得到最终flag WEB150 我控几不主我及几啦 这题现在访问不了,不过没啥好说的,sqlmap跑出来的 WEB200 睡过了 这题真是excited,看到key可以加这种有语病的句子,瞬间想到了前段时间的CVE,通过+号绕过正则过滤,通过伪造成员属性数目绕过wakeup方法。具体分析见http://paper.seebug.org/39/ 这样就能写一个文件获得webshell,进去后有open basedir的限制,在知识库上有一篇文章讲怎么绕过列目录的,在web根目录发现了flag(记得是) WEB250 苏打学姐的网站 Img.php通过正则过滤使你不能读源码,之前有一道一样的过滤可以绕过。 绕过方法见这篇文章:http://www.yqxiaojunjie.com/index.php/archives/27/ ps.txt了!得到下一个关口。 分析admin.php.txt可知,这是CBC翻转攻击,通过对已知的明文分组,再翻转特定的bit即可修改指定位。 对其中57和63位做修改即可。 <?php $enc=base64_decode(“cookie”);//一开始返回的cookie内容 $enc[57] = chr(ord($enc[57])…

鸡肋漏洞利用两则

Posted in 每刻,知识分享

放了好久的存稿了,慰藉长草的博客 仅仅存在一个php本地文件包含,并存在诸多限制的情况 这时候你可以读取的文件非常的有限,且url fopen wrappers被关闭的情况下,无法读取源码让人很头痛…感觉无法进行下一步,此时,可以利用文件包含去触发一个sigsegv。 php sigsegv信号的触发条件主要是溢出与非法内存访问,在sigsegv信号之后,php程序会异常终止。 我们要利用php程序的异常终止来切断一个正常的流程,我们想到了上传流程。 php可以接收上传文件,创建临时文件,经过相应的处理函数(move_uploaded_file())处理后,删除临时文件,最后退出php程序。 存在文件包含的地方不一定有move_uploaded_file(),但是上传文件一定会产生临时文件,我们如果能切断这个流程,让php在删除临时文件之前退出,我们也就能成功的向tmp目录下达成任意文件写入(具体默认临时文件目录随系统有所改变)。于是,一个鸡肋的本地文件包含就可以在最小条件下getshell。 那么如何触发sigsegv呢?我们构造一个溢出,递归包含自身,也就能中断正常的上传流程。 <?php include($_GET[‘file’]); ?> 从get参数中获取文件名,include进来,那么包含文件本身就会无限的去包含file参数,达到了我们的目的。 梳理一下步骤。 目标站点a.com/b.php的file参数存在lfi 构造上传页面为 <form enctype=”multipart/form-data” action=”http://a.com/b.php?file=b.php” METHOD=POST> <input name=”userfile” type=”file”>…