灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2677回复:0

一次疑似的Hacker攻击的处理

楼主#
更多 发布于:2012-11-14 11:23
中午在吃饭,手机响了,运维告诉我有一台内部系统的server的cpu负载达到了80%,一共两次,每次持续3分钟左右。
           我让运维先别慌,去server上取Apache的apache_access.log出来


           apache_access.log文件打开来一看,每次CPU负载狂飙的时候,都密集了出现了以下的http请求,3分钟内达到了4000次以上。

XX.XX.201.254 - - [16/Oct/2012:11:43:55 +0900] "GET /api/resizeimage.php?image=banner/08071002.png;width=320;height=100 HTTP/1.1"  
200 55703 "http://xxx.xxx.com/admin/image.php?"  
"Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2;  
.NET CLR 2.0.50727;  
.NET CLR 3.5.30729;  
.NET CLR 3.0.30729;  
Media Center PC 6.0; InfoPath.2; .NET4.0C; .NET4.0E)"  

            分析日志可以看到,XX.XX.201.254的客户端,在【http://xxx.xxx.com/admin/image.php?】的画面上,发送GET请求【/api/resizeimage.php?image=banner/08071002.png;width=320;height=100】到我们的server上。


             第一,我们这台server位于公司防火墙背后,运行的是名为[http://xxx.xxx.com/admin/]的公司内部系统。这个系统的域名也是公司内部DNS的域名,因此从外网直接发起攻击可能性不大。

             第二, image.php?这个画面上确实有调用【api/resizeimage.php】的接口,但是如此频繁的访问,绝对不可能是正常的画面操作。

             第三,api/resizeimage.php的代码的作用是将客户上传到server硬盘上的image文件读入内存,然后在CPU中进行计算,生成符合参数要求大小的缩小图,然后作为http响应返回回来。并且在内存中将缩小图释放掉。。。。。。。这么坑爹的代码,负载一上去,CPU肯定挂


             我先把注意力放在client的XX.XX.201.254上,经过调查,这台服务器是另一个项目组的一台公用server。。。。

             果然是高手,利用这台公用server作为跳板。


              这台肉鸡上发生的事情和调查还在进行中,汇总之后也想写出来。


              作为补救,我们先修改了resizeimage.php的代码逻辑,其次在Apache前方前置一个软件级别的防火墙,发现多次频繁同一IP请求则禁IP。


              结论: 不能以为是内部系统就可以放松系统安全的考量

喜欢0 评分0
游客

返回顶部