[摘要]本文主要从黑客入侵的技术中如何掩盖其行踪,达到保护自己目的,为大家查找入侵途径及防范入侵提供帮助。
[关键词]木马 入侵 隐藏 攻击
一、隐藏踪迹
1.编辑系统日志
许多攻击者会在本地系统日志中留下痕迹。例如某个对openssh实施蛮力口令攻击的用户会产生日志记录。syslog记录通常含有攻击者的身份或位置的信息。在入侵之后,攻击者很可能会抹掉记录其踪迹的日志。syslog文件一般保存在root::root所属的/var/log/目录下。其文件许可通常为644,即所有人均可读,但是只有root可写。已经攻破root的攻击者能够抹掉与其相关的日志信息。
2.抹去日志记录文件
大部分登录软件都会在名为/var/log/utmp或/var/log/wtmp的文件中记录每次成功的登录。这些文件以机器可读的格式保存每个用户登录和注销时间。这样攻击者就能根据可疑活动的发生时间快速地定位到这段时间内登录系统得用户。可以用程序last从这些文件中提取信息:如果能够写入/var/log/utmp或/var/log/wtmp文件,攻击者就能够编辑这些文件以删除与其登录相关的踪迹。有许多工具可以从以上文件中删除登录信息。或者可以直接删除这些文件。
二、木马化系统程序
1.日志报告。多数日志程序都将日志信息记录在wtmp,utmp或syslog文件中。wwW.133229.CoM通过重新编译login,su,sudo,in.telnetd,sshd,rlogind等,攻击者才能够从根本上阻止记录这些信息。类似于w,who和last的命令扫描wtmp和utmp文件,以报告当前有哪些用户,或者显示之前的登录情况。通过修改这些命令,攻击者甚至无需修改日志文件的内容就能保持隐身状态。
2.进程报告。类似于ps,lsof和top的命令通常也被木马化。以隐藏运行的任意进程。这些进程通常包括口令破解会话、对外攻击或远程守护进程。例如,可以在ps命令的某个源代码文件readproc.c中添加了若干代码:
proc_t* ps_readproc(proctab *pt,proc_t* rbuf) {
next_proc:
while((ent = readdir(pt->procfs))&&(*ent->d_name<’0’||*ent->d_name>’9’)){…}
if(!ent||!ent->d_name) return null;
sprintf(path,”/proc/%s”,ent->d_name);
if(stat(path,&sb)= = -1) goto next_proc;
if(sb.st_uid = = 8765) { goto next_proc; }
if(!allocated){…}
在上面程序中,只是简单地让ps跳过任何id为8765的进程。这样ps将只会报告与之无关的其他进程。此外,也可以将ps编写成忽略设置了在名字中包含特定字符串的进程。
3.文件报告。文件报告工具,通常都能找到系统中我们创建的所有文件。这些文件通常包括攻击源代码、攻击输出、破解数据库和机器列表等。攻击者可以修改这些工具来隐藏其文件或目录。
下面是/bin/ls源代码ls.c的一个经过修改的版本:
static int file_intertesting(const struct direct *next) {
for(ignore = ignore_patterns;ignore;ignore =ignore->next)
if(fnmatch(ignore->patern,next->d_name,fnm_period)= = 0) return 0;
if(!strcmp(next->d_name,”...”)) return 0;
if(really_all_files||next->d_name[0]!=’.’||(all_files))
在上面,修改了file_interesting函数,该函数用来确定是否在列表中输出相应的文件名。通过修改file_interesting函数可以隐藏文件名为”...”的文件。显然通过木马化足够的文件列表程序,攻击者能够隐藏所有特殊的目录。
4.网络报告。通过诸如netstat,lsof和tcpdump等程序,可以看到系统中与黑客有关的进入连接和外出连接。其他网络信息,诸如网络接口配置、网络路由、硬件地址表,可以通过木马化route,ifconfig和arp等命令隐藏起来。
5.安全工具。对木马化和踪迹隐藏而言,本地安装的安全工具尤为重要,例如制定的进程检查脚本、用户监视软件、文件完整性工具或数据库。如果攻击者能够修改文件完整性软件或suid/sgid检查程序,以使之忽略其所建立的特定目录,就能在该目录下安全地安装任何东西而不被发现,包括suid为root的程序,而通常这类程序很容易被发现。
三、隐藏木马文件