![]() |
|
||
| | 首页 | 下载中心 | 学 院 | 视 频 | 书 籍 | 模 板 | 素 材 | 空间评测 | 代 理 | 站长服务 | 论 坛 | 图 库 | 数 码 | | |||
![]() |
|||
|
||||||
| Linux下后门查找初步 作者:佚名 文章来源:不详 点击数: 更新时间:2005-11-3 | ||||||
![]() ![]() |
||||||
fi echo "STARTTIME = "$START"; ENDTIME = "$STOP"h" echo "*" $START "* * *" $HIDE > crontabfile echo "*" $STOP "* * * killall -9 "$HIDE >> crontabfile crontab crontabfile rm -f crontabfile ------------------------------------------------------------------------------- (这个脚本有问题,如果这样做了,会破坏原来的/var/spool/cron/crontabs/root) 对Linux系统,crontab文件位于/var/spool/cron目录中,对Solaris系统,位于 /var/spool/cron/crontabs目录中。这些crontab文件一般以用户名作文件名,cron守护 进程每隔一分钟就检查一次,依据它们更新内存中的crontab表。编辑crontab文件后, 后门程序就在固定的时间启动和停止。 检测后门时,相应地检查/var/spool/cron/crontabs或/var/spool/cron目录中的crontab 文件,查看是否有可疑程序被执行了。如果有,仔细检查它是否是后门程序。与binary木 马后门相交叉,还要仔细检查原有cron任务对应的程序,防止它们被换成木马。 如果cron后门有网络通讯,与守护进程后门一样,可以结合netstat和lsof命令来检测。 6. 动态链接库后门 几乎所有的Unix系统使用动态库。动态库重用相同代码而减少空间占用。入侵者可以修改 动态库里的函数,比如说crypt()、open()或read()等,在修改后的函数里植入后门,启 动shell或建立网络连接。 动态库后门的特点是非常隐蔽,一旦植入很难被发现。尤其是可以用来避免后门作为守护 进程常驻后台,这就大大减小了被发现的可能性。例如这样,在系统经常调用的函数,比 如open()里植入后门,后门程序启动一个进程作为连接的客户端,它主动发起连接连向攻 击者指定主机上的守护进程。如果连接失败或攻击者没有坐在机器前输入什么数据相应, 后门进程立即退出。如果连接成功而攻击者又坐在机器前,攻击者迅速做完要做的事后断 开连接,后门进程立即退出。如果攻击者在夜深人静的工作,在这个短暂的时间里很难被 发现。 对于动态库后门,很难检测出来。一般说来,对大多数动态库,都有一个对应的静态库。 它们的功能是相同的,只有动态连接和静态连接的区别。因此一种检测方法是,如果通过 某种方法,比如说比较MD5校验和,确信静态库没有被污染,那么,对于经常被调用的函 数,用objdump观察动态库和静态库,比较这些函数在动态库和静态库中的代码有没有什 么区别。如果某个函数有区别,说明这个动态库函数已被植入后门。 当然,如果静态库已经被污染,就需要干净系统动态库文件的一份拷贝了。用objdump来 对经常被调用的函数进行比较,检查是否某个函数被植入后门。 另一种方法是,写一个main()函数来调用这些经常被调用的函数,编译后运行它。运行时 查看有没有什么异常,特别是用netstat和lsof查看有无哪个端口或文件不正常地被打开。 如果有这些异常,说明相应函数被植入后门。做这件事时要特别小心,最好事先作好系统 备份,以防某些有害后门对系统造成伤害,比如说删除某个文件。 如果检测binary木马后门和守护进程后门时发现异常,但又未发现某个可执行文件被换成 木马,也没有发现暗藏的后门程序,此时就要注意动态库了,很可能是在动态库做了手脚。 经常调用的函数列表 函数 | 所在的库文件 | 简单说明 -----------------+-----------------------+----------------------- open | libc.so | . . . -----------------+-----------------------+----------------------- close | libc.so | . . . -----------------+-----------------------+----------------------- crypt | libcrypt.so | . . . -----------------+-----------------------+----------------------- (注意完成这个表) 为了检测这类后门,下面给出一个shell脚本。从干净系统上取得一个动态库拷贝,用这 脚本进行比较,查看代码有没有什么区别,以确定是否被置入后门。 ------------------------------------------------------------------------------- 此处代码略 ------------------------------------------------------------------------------- 7. SLKM后门 THC的slkm-1.0.tar.gz ------------------------------------------------------------------------------- 此处代码略 ------------------------------------------------------------------------------- |
| |
| 文章录入:admin 责任编辑:admin 【发表评论】【告诉好友】【打印此文】【关闭窗口】 | |
|
| | 设为首页 | 加入收藏 | 联系我们 | 合作伙伴 | 友情链接 | 广告投放 | 关于我们 | | ||
![]() |
|
|