好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

在日志中隐藏自己后门-利404错误产生迷惑、不可

以前发现的一个技巧性的东西,由于一般的webserver都会记录日志,而且在目前的后期后门以及漏洞追踪中主要的证据都是日志,如果有可能让日志变得不可信,我们就有可能成功了。

 

访问shell.php,会得到日志:

 

<?php

phpinfo();

?>

稍微改变下后门,添加header一句代码之后就会是

 

<?php

header('HTTP/1.1 404');

ob_start();

phpinfo();

ob_end_clean();

?>

127.0.0.1 - - [20/Oct/2012:22:21:54 +0800] "GET /shell.php HTTP/1.1" 404 -

标准的一次扫描结果,它无法说明任何问题了

 

:)

 

网友评论:

 

 

学习了,这招不错,下次必须连404都要看

 

 

 

 

@Mujj 404就没意义了 因为无法区分是解析器层导致的404还是前端webserver上导致的404 事实上随着架构的越来越复杂,日志越来越会不可信了

 

 

 

 

@xsser 日志分析结合本地文件名和关键词分析呢,这样不就查到了么

 

 

 

 

@Mujj 往往事成之后本地都没有文件了.....

 

 

 

 

太猥琐了,睡觉去看来,webserver有必要记录访客行为了,比如访问了啥,提交了啥,一搜索全部列出来

 

 

 

 

日志分析如果采取手工的话,这种伪装还是有点勉强啊,因为最大的特征源ip是不可伪造的(虽然可代理),那么就可以依ip构造出一个完整的证据链。

而自动化日志分析,这种错误码会被当作异常来归类,那么只要有人对异常敏感,那也是逃不过的.....总体来讲,有点勉强.....

 

 

 

 

@Mujj 假如这个提交是更改密码,那么就等于免费送给 黑客 一个密码记录器了——你还别说,有程序真这么做的,结果.....

 

 

 

 

@horseluke 在找到ip之前往往先应该分析出哪个文件被异常访问

 

 

 

 

有点yd,不过第一次在日志没找到东东,往往会再check一次,增加了排查的成本

 

 

 

 

@xsser 异常访问?!修改时间呢,再涂鸦掉日志记录

 

 

 

 

@horseluke @xsser 可以搞完了再用工具全站爬行一遍,有可能逃过IP的检查,被当作扫描器

 

 

 

 

还是不错的,因为一般在最先分析的是web日志,分析web日志第一看到就是源IP,然后就是这个源IP的动作了;放在公网上的WEB,难免有很多被扫描及访问时产生的404错误的页面,对于这些404相信很多人也不怎么会关心的。还是能骗过一部分人的。

 

 

 

 

@xsser 这个技巧太猥琐了...@also 有些日志你是没办法涂的.在你触发时.管理员就知道了.如远程日志服务器

@horseluke "那么就可以依ip构造出一个完整的证据链" 靠这个太不可靠... xsser说通过异常访问这个比较来排除这个相对靠谱.一般都是排查的第一链.另外可以在 系统 分级分层次设置多链警报日志

 

 

 对于新手,一帮人都建议直接全清,而后者则挑选伪造。前者就是告诉人家你日了他,后者则扰乱管理员思维。

  嘿嘿,我觉得WEB日志还是比较好清理的,只清自己的访问记录呗、或者把自己的IP改成别人的。。 windows 的登陆日志和系统日志很难收拾。。

 

 

 

 

不太懂php,如果

 

ob_start();

phpinfo();

ob_end_clean(); HdhCmsTest2cto测试数据

这样,是不是把输出缓存在服务端了,不会输出到客户端,所以是

 

[22/Oct/2012:08:28:49 +0800] "GET /11.php HTTP/1.1" 404 -

 

但是如果不用ob

 

phpinfo();

 

可以输出结果到客户端,但是日志是

 

[22/Oct/2012:08:29:46 +0800] "GET /11.php HTTP/1.1" 404 57669 "-"

 

其中有字节数,一般服务器的404页面字节数应该是固定的吧?你如何伪造那个字节数呢?

 

 

 

 

@popok 字节数是由webserver控制的 想伪造也很简单 clean输出缓冲区之后自己再伪造一个固定字节的

 

 

 

 

一般后门目的就是要和客户端有数据传输吧?只要有输出到客户端的数据,日志里就会有字节数记录吧?

 

不知道说的对不对

 

 

 

 

@xsser php不太懂,clean能把缓冲区内容输出到客户端么?我本地测试客户端根本没数据,后门目的不就是需要在客户端输出吗?

 

 

 

 

@cnrstar 直接清日志... 很多时候日志不仅是在你进入的机器. 如果管理员经验丰富点.无论是直接清,还是伪装日志...都是吃力不讨好的差事..因为管理员直接diff..啥都出来了.. 最好的做法是.做些肤浅的动作.满足一下管理员的虚荣.这样你的另外一个部署也许能藏得久些. 话说回来.这个404的技巧..确实淫荡..一不注意就pass了...

查看更多关于在日志中隐藏自己后门-利404错误产生迷惑、不可的详细内容...

  阅读:46次