博文

目前显示的是 三月, 2019的博文

从0CTF的一道Web题看LD_PRELOAD在绕过php disable_functions的应用

图片
天临警告 本文存在大量不规范引用或者你可以直接叫做抄袭,转载请勿用于商业用途以免被喷被黑被起诉 0x00写在前面的话          上周参加了个什么0ctf,毫无意外地一道没做出来,想想看自己参加的比赛次数比自己在比赛时做出的题还多,果然我还是那么菜呢嘤嘤嘤。这篇博文会综合几篇技术文章/writeup写成,但是质量上绝对不如任何我引用的文章,看到这里如果不想看了退出本文可以避免5分钟时间的浪费。 0x01题面          题目的地址为 http://111.186.63.208:31340/          源码如下 <?php $dir = "/ tmp /" . md5 ( " $_SERVER [REMOTE_ADDR] " ); mkdir ( $dir ); ini_set ( ' open_basedir ' , ' /var/www/html: ' . $dir ); ? > <!DOCTYPE html>< html >< head >< style > .pre { word-break : break-all ; max-width : 500 px ; white-space : pre-wrap ;} </ style ></ head >< body > < pre class = " pre " >< code >Imagick is a awesome library for hackers to break `disable_functions`. So I installed php-imagick in the server, opened a `backdoor` for you. Let's try to execute `/readflag` to get the flag. Open basedir: <?php echo ini_get ( ' open_basedir ' ); ? >

入侵钓鱼站并溯源

图片
0x00 写在前面的话          本文所写的内容基本真实,但有些渗透溯源的过程为了描述的精简被修改删除。一些无关紧要的事情也被略去,但对渗透至关重要的大思路和小细节我都没放过。同时在渗透的时候我没有留下截图,很多图是我后来补上的。转载请注明出处。 0x01 引子         事情要从一周前说起。         深夜,寝室,我照例空虚寂寞百无聊赖地刷群。         突然看到D █ 小姐姐在群里面说她用了N线程给钓鱼网站交了大量垃圾信息,最后卡爆了服务器,颇为得意。         当晚我正好闲着没事,就决定小小地得罪一下这个钓鱼网站,故事就这样开始了 0x02 入侵         首先是基础的信息搜集,但是当我查询whois和微步在线之后却没有任何结果,显示的是这些注册信息被保护了,毫无结果。最后只知道同一台服务器上运行 了很多相同的钓鱼站。         好在D █ 小姐姐的垃圾数据并没有给服务器造成太大影响,很快服务器就恢复了并显示如下界面           现在的钓鱼网站的制作者都很良心,界面弄得跟官方的非常相似,可不像当年那些随便画个框框就等着要密码的,毕竟时代在进步嘛。但这也不是完美的,密码那里弄成小写qq的了。         翻看钓鱼网址http://timea.icu/Ru_op/newwap.html的源码,我们可以看到作者用了 document.write(unescape('   来掩饰网页源码,应该是用来防止被基于关键字拦截的防诈骗软件拦截?         而且网页里面还引用了个有趣的JS code 区域 window.onload = function () { var date_time='2019-4-2 18:00:59'; var time = Date.parse(new Date()); var date1 = Date.parse(new Date(date_time.replace(/-/g, '/'))); if (date1 < time) { top.location.href= '/expire.html'

CSRF 原理 利用 防御

图片
引子     最近呢挖到某站的一个CSRF。鉴于这个站点的所有者性质有些特殊,是可以随时记过开除我的那种特殊,我就不点名是哪个站也不披露太多细节,讲讲我最近学到的一些CSRF相关的东西代替吧。 CSRF是什么   CSRF是洋文Cross-Site Request Forgery的缩写,意思是跨站请求伪造。   通常的攻击过程是受害者先登录正常网站,再被攻击者骗去访问攻击者控制的服务器,最后攻击者通过HTML/JS代码使受害者浏览器带着Cookies向正常网站发包,执行了违背受害者意愿的操作。 CSRF和XSS   好像总是听到有面试题问什么“CSRF和SSRF的区别”这个问题。说实话这个问题好像没什么好说的,这就像问知网和知乎网的区别一样。我接触到的朋友好像更难分清楚XSS和CSRF的区别,毕竟都是点一个链接就被搞了。但实际上他们区别还是很明显的,XSS是跨站脚本执行,能够以被攻击的正常网站的“身份”在受害者浏览器上面执行JS代码,一般除了需要输密码才能干的事情以外能以受害者身份在该网站上干任何事情。然而CSRF只是让受害者的浏览器发几个包,并不能操纵正常网站上的JS代码,能干的事情一般比XSS少。 CSRF的几种类型  GET型的CSRF    GET型的CSRF只需要让受害者发GET型的包就可以了    攻击者可以用以下方式使受害者浏览器发出该包 <img src="http://website" >        普通的POST型的CSRF    许多开发者一厢情愿地认为自己的敏感操作换成POST就不会被有事了,但这个观点被证明是错的。这里就讲几个不同的CSRF POST payload    首先,一个普通的攻击者可以用BURP自带的CSRF POC生成一个POC <html> <!-- CSRF PoC - generated by Burp Suite Professional --> <body> <form action="http://127.0.0.1/dvwa-TOM/login.php" method="POST"> &l