安全运维笔记


linux系统应急响应

<h4>linux系统应急响应</h4> <h4>1.1账号安全</h4> <p>1、用户信息文件 <strong>cat /etc/passwd</strong> 用户名:密码:用户ID:组ID:用户说明:家目录:登陆之后shell</p> <h4>2、入侵排查</h4> <p><strong>1、查询特权用户特权用户(uid 为0)</strong> [root@localhost ~]# <strong>awk -F: '$3==0{print $1}' /etc/passwd </strong> <strong>2、查询可以远程登录的帐号信息</strong> [root@localhost ~]# <strong>awk '/\$1|\$6/{print $1}' /etc/shadow </strong> <strong>3、除root帐号外,其他帐号是否存在sudo权限。如非管理需要,普通帐号应删除sudo权限</strong> [root@localhost ~]#<strong> more /etc/sudoers | grep -v &quot;^#|^$&quot; | grep &quot;ALL=(ALL)&quot;</strong> 4、禁用或删除多余及可疑的帐号   usermod -L user  <br /> 禁用帐号,帐号无法登录,/etc/shadow第二栏为!开头 userdel user       删除user用户 userdel -r user   将删除user用户,并且将/home目录下的user目录一并删除</p> <h4>3、查看历史命令</h4> <p><strong>cat .bash_history cat .bash_history &gt;&gt; history.txt</strong></p> <h4>4、查看PID得文件路径</h4> <p><strong>ls -l /proc/PID/exe</strong> lsof -p +进程 netstat -natp|grep 156.240.104.189 <strong>ps -aux | grep pid</strong></p> <h4>5、启动项文件</h4> <p><strong>more /etc/rc.local /etc/rc.d/rc[0~6].d ls -l /etc/rc.d/rc3.d/</strong> </p> <h4>6、检查定时任务</h4> <p><strong>crontab -l</strong></p> <h4>7、敏感目录检查</h4> <p>*<em>/var/spool/cron/</em> /etc/crontab /etc/cron.d/<em> /etc/cron.daily/</em><br /> /etc/cron.hourly/<em><br /> /etc/cron.monthly/</em> /etc/cron.weekly/ /etc/anacrontab /var/spool/anacron/<em> 小技巧: cd /etc/cron.daily/</em> 查看目录下所有文件 *</p> <h4>*</h4> <h4><em>8、查看已安装的服务</em></h4> <p><strong>chkconfig --list 查看服务自启动状态</strong>,可以看到所有的RPM包安装的服务 ps aux | grep crond 查看当前服务 </p> <h4>9、检查异常文件</h4> <p>可以使用find命令来查找,如 *<em>find /opt -iname &quot;</em>&quot; -atime 1 -type f** 找出 /opt 下一天前访问过的文件 </p> <h4>10、系统日志分析</h4> <p><strong>1、定位有多少IP在爆破主机的root帐号</strong>:<br /> grep &quot;Failed password for root&quot; /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more <strong>定位有哪些IP在爆破: </strong> grep &quot;Failed password&quot; /var/log/secure|grep -E -o &quot;(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4] [0-9]|[01]?[0-9][0-9]?)&quot;|uniq -c </p> <p><strong>爆破用户名字典是什么? </strong> grep &quot;Failed password&quot; /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print &quot;$1\n&quot;;}'|uniq -c|sort -nr<br /> <strong>2、登录成功的IP有哪些</strong>: grep &quot;Accepted &quot; /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more <strong>登录成功的日期、用户名、IP:</strong> grep &quot;Accepted &quot; /var/log/secure | awk '{print $1,$2,$3,$9,$11}'<br /> 0x02 工具篇 2.1 Rootkit查杀 chkrootkit 网址:<a href="http://www.chkrootkit.org">http://www.chkrootkit.org</a> 使用方法: wget ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz tar zxvf chkrootkit.tar.gz cd chkrootkit-0.52 make sense #编译完成没有报错的话执行检查 ./chkrootkit rkhunter 网址:<a href="http://rkhunter.sourceforge.net">http://rkhunter.sourceforge.net</a> 使用方法: Wget <a href="https://nchc.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz">https://nchc.dl.sourceforge.net/project/rkhunter/rkhunter/1.4.4/rkhunter-1.4.4.tar.gz</a> tar -zxvf rkhunter-1.4.4.tar.gz cd rkhunter-1.4.4 ./installer.sh --install rkhunter -c 2.2 病毒查杀 Clamav ClamAV的官方下载地址为:<a href="http://www.clamav.net/download.html">http://www.clamav.net/download.html</a> 安装方式一: 1、安装zlib: wget <a href="http://nchc.dl.sourceforge.net/project/libpng/zlib/1.2.7/zlib-1.2.7.tar.gz">http://nchc.dl.sourceforge.net/project/libpng/zlib/1.2.7/zlib-1.2.7.tar.gz</a> tar -zxvf zlib-1.2.7.tar.gz cd zlib-1.2.7 #安装一下gcc编译环境: yum install gcc CFLAGS=&quot;-O3 -fPIC&quot; ./configure --prefix= /usr/local/zlib/ make &amp;&amp; make install </p> <p>2、添加用户组clamav和组成员clamav: groupadd clamav useradd -g clamav -s /bin/false -c &quot;Clam AntiVirus&quot; clamav </p> <p>3、安装Clamav tar –zxvf clamav-0.97.6.tar.gz cd clamav-0.97.6 ./configure --prefix=/opt/clamav --disable-clamav -with-zlib=/usr/local/zlib make make install </p> <p>4、配置Clamav mkdir /opt/clamav/logs mkdir /opt/clamav/updata touch /opt/clamav/logs/freshclam.log touch /opt/clamav/logs/clamd.log cd /opt/clamav/logs chown clamav:clamav clamd.log chown clamav:clamav freshclam.log </p> <p>5、ClamAV 使用: /opt/clamav/bin/freshclam 升级病毒库 ./clamscan –h 查看相应的帮助信息 ./clamscan -r /home 扫描所有用户的主目录就使用 ./clamscan -r --bell -i /bin 扫描bin目录并且显示有问题的文件的扫描结果 安装方式二:</p> <h1>安装 yum install -y clamav #更新病毒库 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</h1> <p>2.3 webshell查杀 linux版: 河马webshell查杀:<a href="http://www.shellpub.com">http://www.shellpub.com</a> 深信服Webshell网站后门检测工具:<a href="http://edr.sangfor.com.cn/backdoor_detection.html">http://edr.sangfor.com.cn/backdoor_detection.html</a> 2.4 RPM check检查 系统完整性可以通过rpm自带的-Va来校验检查所有的rpm软件包,查看哪些命令是否被替换了: ./rpm -Va &gt; rpm.log 如果一切均校验正常将不会产生任何输出,如果有不一致的地方,就会显示出来,输出格式是8位长字符串,每个字符 都用以表示文件与RPM数据库中一种属性的比较结果 ,如果是. (点) 则表示测试通过。 验证内容中的8个信息的具体内容如下: S 文件大小是否改变 M 文件的类型或文件的权限(rwx)是否被改变 5 文件MD5校验是否改变(可以看成文件内容是否改变) D 设备中,从代码是否改变 L 文件路径是否改变 U 文件的属主(所有者)是否改变 G 文件的属组是否改变 T 文件的修改时间是否改变 如果命令被替换了,如果还原回来: 文件提取还原案例: 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/目录 修复文件丢失 2.5 linux安全检查脚本 Github项目地址: <a href="https://github.com/grayddq/GScan">https://github.com/grayddq/GScan</a> <a href="https://github.com/ppabc/security_check">https://github.com/ppabc/security_check</a> <a href="https://github.com/T0xst/linux">https://github.com/T0xst/linux</a> 尽信书不如无书,工具只是辅助,别太过于依赖,关键在于你如何解决问题的思路。</p>

页面列表

ITEM_HTML