介绍几个网络攻击中溯源的实用工具
1、Rootkit 查杀:http://www.chkrootkit.org
Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息,比较多见到的是Rootkit一般都和木马、后门等其他恶意程序结合使用。
rootkit介绍Rootkit是一种奇特的程序,它具有隐身功能:无论静止时(作为文件存在),还是活动时,(作为进程存在),都不会被察觉。
换句话说,这种程序可能一直存在于我们的计算机中,但我们却浑然不知,这一功能正是许多人梦寐以求的——不论是计算机黑客,还是计算机取证人员。黑客可以在入侵后置入Rootkit,秘密地窥探敏感信息,或等待时机,伺机而动;取证人员也可以利用Rootkit实时监控嫌疑人员的不法行为,它不仅能搜集证据,还有利于及时采取行动!
rkhunter 查杀:http://rkhunter.sourceforge.net 中文名叫”Rootkit猎手”,
rkhunter是Linux系统平台下的一款开源入侵检测工具,具有非常全面的扫描范围,除了能够检测各种已知的rootkit特征码以外,还支持端口扫描、常用程序文件的变动情况检查。
rootkit主要有两种类型:文件级别和内核级别。
文件级别的rootkit: 一般是通过程序漏洞或者系统漏洞进入系统后,通过修改系统的重要文件来达到隐藏自己的目的。在系统遭受rootkit攻击后,合法的文件被木马程序替代,变成了外壳程序,而其内部是隐藏着的后门程序。通常容易被rootkit替换的系统程序有login、ls、ps、ifconfig、du、find、netstat等。文件级别的rootkit,对系统维护很大,目前最有效的防御方法是定期对系统重要文件的完整性进行检查,如Tripwire、aide等。
内核级rootkit: 是比文件级rootkit更高级的一种入侵方式,它可以使攻击者获得对系统底层的完全控制权,此时攻击者可以修改系统内核,进而截获运行程序向内核提交的命令,并将其重定向到入侵者所选择的程序并运行此程序。
内核级rootkit主要依附在内核上,它并不对系统文件做任何修改。以防范为主。
使用方法:
wget https://nchc.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz
tar -zxvfrkhunter-1.4.4.tar.gz
cdrkhunter-1.4.4
./installer.sh --install
rkhunter -c
CSDN使用教程 https://www.cnblogs.com/cp-miao/p/6141025.html
Clamav 查杀:http://www.clamav.net/download.html
Clam AntiVirus是一个Linux系统上使用的反病毒软件包。
主要应用于邮件服务器,采用多线程后台操作,可以自动升级病毒库。
yum安装
yum install -y clamav
freshclam 更新病毒库
clamscan -r / --bell -i 扫描所有文件并显示有问题文件的结果
clamscan -r / 扫面素有文件并显示所有文件的扫面结果
clamsacn -r --remove / 扫面并清除
#更新病毒库
freshclam
#扫描方法
clamscan -r/etc --max-dir-recursion=5-l/root/etcclamav.log
clamscan -r/bin --max-dir-recursion=5-l/root/binclamav.log
clamscan -r/usr --max-dir-recursion=5-l/root/usrclamav.log
#扫描并杀毒
clamscan -r --remove/usr/bin/bsd-port
clamscan -r --remove/usr/bin/
clamscan -r–remove/usr/local/zabbix/sbin
#查看日志发现
cat/root/usrclamav.log |grep FOUND
webshell 查杀
linux 版:
河马 webshell 查杀:
http://www.shellpub.com
深信服 Webshell 网站后门检测工具:
http://edr.sangfor.com.cn/backdoor_detection.html
RPM check 检查:
系统完整性可以通过 rpm 自带的 -Va 来校验检查所有的 rpm 软件包,查看哪些命令是否被替换了:
./rpm -Va > rpm.log
如果一切均校验正常将不会产生任何输出,如果有不一致的地方,就会显示出来,输出格式是 8 位长字符串,每个字符都用以表示文件与 RPM 数据库中一种属性的比较结果 ,如果是. (点) 则表示测试通过。
如果命令被替换了,如果还原回来:
文件提取还原案例:
rpm -qf /bin/ls 查询ls命令属于哪个软件包
mv /bin/ls /tmp 先把 ls 转移到 tmp 目录下,造成 ls 命令丢失的假象
rpm2cpio /mnt/cdrom/Packages/coreutils-8.4-19.el6.i686.rpm | cpio -idv ./bin/ls 提取 rpm 包中 ls 命令到当前目录的 /bin/ls 下
cp /root/bin/ls /bin/ 把 ls 命令复制到 /bin/ 目录 修复文件丢失