您好,欢迎访问本站博客!登录后台查看权限
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧
  • 网站所有资源均来自网络,如有侵权请联系站长删除!

打造安全PHP系统

随笔杂谈 NXY517 2018-07-23 114 次浏览 0个评论 百度未收录

web方面注入,xss啊 防不胜防,但是最终的结果是上传php木马到web服务器中,进行下载网页源代码,或者dump数据库。


注入和xss是网页代码的问题,不同的程序员水平和经验不一样,开发出来的安全性肯定不一样,那么我想到的方法是在上传木马上做文章。

扯了这么多,先给大家看一段代码


<?daolangecho "hello world";?>


打造安全PHP系统 随笔杂谈 第1张


这段代码是不是写错了?正常情况下应该不能跑的,但是在我的服务器中是正常运行的,恰恰正常代码不能在我服务器中跑。


<?echo "hello world";?>



打造安全PHP系统 随笔杂谈 第2张

打造安全PHP系统 随笔杂谈 第3张


那么我们怎么打造这样的安全php服务器啦?

第一步查找php关键标识符

这里我用Source Insight 4.0,搜索整个php源代码查找<?,排查后发现在Zend/zend_language_scanner.l这个文件中,


打造安全PHP系统 随笔杂谈 第4张


第二步 修改标识符

下面是我已经修改后的 


<INITIAL>"<?daolang"([ \t]|{NEWLINE}) {HANDLE_NEWLINE(yytext[yyleng-1]);BEGIN(ST_IN_SCRIPTING);RETURN_TOKEN(T_OPEN_TAG);}<INITIAL>"<?dl" {if (CG(short_tags)) {BEGIN(ST_IN_SCRIPTING);RETURN_TOKEN(T_OPEN_TAG);} else {goto inline_char_handler;}}


打造安全PHP系统 随笔杂谈 第5张


保存。

第三步 生成C文件

我们需要重新生成zend_language_scanner.c


re2c --no-generation-date --case-inverted -cbdF -o zend_language_scanner.c  zend_language_scanner.l

第四步 编译源代码


4.1 安装需求库


 apt-get install gcc  make automake autoconf libtool bison flex libxml2-dev apache2-dev re2c


4.2 开始编译代码


./configure --with-apxs2=/usr/bin/apxsmake


4.3配置php环境

4.3.1 安装apache2


apt-get install apache2


service apache2 start4.3.2 修改配置文件


打造安全PHP系统 随笔杂谈 第6张


4.3.3 重启apache2


service apache2 start


4.4 感慨


现在国家在大力推广ipv6,未来面对的机遇和挑战更多,大家准备好了吗?


打赏

已有 114 位网友参与,快来吐槽:

发表评论