debian:/var/log# last
debian pts/9221.215.176.148 Thu Oct 17 10:15 still logged in
debian pts/8221.215.176.148 Thu Oct 17 09:56 still logged in
debian pts/7221.215.176.148 Thu Oct 17 09:32 - 10:44 (01:12)
root pts/5114.255.31.253 Thu Oct 17 09:30 - 10:20 (仿闹00:50)
root pts/4114.255.31.253 Thu Oct 17 09:30 - 10:20 (00:50)
…
或者用last -f /var/log/wtmp
last 命令:
功能说明:列出目前与过去登入系统的用户相关信息。
语法:last [-adRx][-f ][-n ][帐号名称…][终端机编号…]
补充说明:单独执行last指令,它会读取位于/var/log目录下,名称为wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
参数:
-a 把从何处登入系统的让大液主机名称或IP地址,显示在最后一行。
-d 将IP地址转换成主机名称。
-f 指定记录文件。
-n 或- 设置列出名单的显示列数。
-R 不显示登入系统的主机名称或IP地址。
-x 显示系坦物统关机,重新开机,以及执行等级的改变等信息。
、先了解攻击IP和被攻击IP的业务访问,还有被攻击IP的服务。相关的防火墙、WAF、IPS、IDS等等一些流量网络监控设备。可以在网络安全设备中排查封堵。
2、查看攻击IP
2.1 查看历史命令,防止新输入的命令覆盖历史命令。
用到的命令是:
history
cat .bash_history
查看UID为0的帐号:awk -F: '{if($3==0)print $1}' /etc/passwd
查看能够登录的帐号:cat /etc/passwd | grep -E "/bin/bash$"
PS:UID为0的帐号也不一定都是可疑帐号,Freebsd默认存在toor帐号,且uid为0.(toor 在BSD官网解释为root替代帐号,属于可信帐号)
查看系统用户登录信息:
a) 使用lastlog命令,系统中所有用户最近一次登录信息。
b) 使用lastb命令,用于显示用户错误的登录列表
c) 使用last命令,用于显示用户最近登录信息(数据源为/var/log/wtmp,var/log/btmp)
utmp文件中保存的是当前正在本系统中的用户的信息。
wtmp文件中保存的是登录过本系统的用户的信息。
/var/log/wtmp 文件结构和/var/run/utmp 文件结构一样,都是引用/usr/include/bits/utmp.h 中的struct utmp
2.2 查看网络连接状态: 分析可疑端口、可疑IP、可疑PID及程序进程
netstat-antlp | grep ESTABLISH
根据端口查看进程:
lsof -i:port
2.3 查看是否存在异常进程:
ps-aux | head -n6
2.4 查看是否存在异常计划任务:
crontab -l
2.5 使用ls 以及 stat 查看系统命令是否被替换。
两种思路:第一种查看命碰散令目录最近的时间排序,第二种根据确定时间去匹配。
ls -alt /usr/bin | head -10
ls -al /bin /usr/bin /usr/sbin/ /sbin/ | grep "Jan 15"
PS:如果日期数字<10,中间需要两个空格。比如1月1日,grep “Jan 1”
2.6 隐藏进程查看: 对比是不是存在异常的隐藏进程
ps -ef | awk '{print}' | sort -n | uniq >1
ls /proc | sort -n |uniq >2
diff 1 2
2.7 日志分析:
定位有多少IP在爆破主机的root帐号
grep "Failed password for root" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | more
登录成功的IP有哪些
grep "Accepted " /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr | more
3、文件分析(https://www.cnblogs.com/linuxsec/articles/8453259.html)
1、敏感目录的文件分析:(类/tmp目录 命令/usr/sbin /usr/bin)
查看tmp目录下的文件:ls -alt /tmp/
查看开机启动项内容:ls -alt /etc/init.d/查看rc.local文件(/etc/init.d/rc.local /etc/rc.local)
(可以联想Nessus启动命令:./etc/inin.d/nessusd start)
查看指定目录下的文件时间的排列:ls -alt | head -n 10
针对可疑文件可以使用stat进行创建修改时间、访问时间的详细查看,若修改时间距离事件日期接近,有线性关联,说明可能被篡改或者其他。
stat + 对于文件名
2、新增文件分析
查找24小时的被修改的jsp文件:find ./ -mtime 0 -name "*.jsp"
(最后一次修改发生在距离当前时蚂辩间n*24小时至(n+1)*24 小时)
查找72小时内新增的文件 find / -ctime -2
PS:-ctime 内容未改变权限改变时候也可以查出
根据时间反推修改的对应的文件:
ls -al /tmp | grep "Feb 27"
3、特殊权限文件
查找777权限的文件: find / *.jsp -perm 4777
4. 隐藏的文件(以 "."开头的具有隐藏属性的文件)
5. 在文件闷吵缺分析过程中,手工排查频率较高的命令是 find grep ls 核心目的是为了关联推理出可疑文件。
单独执行last命令,它会读取/var/log/wtmp的文件,并把该给文件的内容记录的登入系统的用户名单全部显示出来。
-a:把从何处登入系统的主机名称或ip地址,显示在最后一行;
-d:将IP地址转换成主机名称;
-f <记录文件>:指定记录文件。
-n <显示列数>或-<显示列数>:设置列出名单的显示列数;
-R:不显示登入系统的主机名称或IP地址;
-x:显示系统关机,重新开机,肆慎以及执行等级的改变等信息。
该日志文件永久记录每个用户登录改雹局、注核让销及系统的启动、停机的事件。因此随着系统正常运行时间的增加,该文件的大小也会越来越大, 增加的速度取决于系统用户登录的次数。该日志文件可以用来查看用户的登录记录, last命令就通过访问这个文件获得这些信息,并以反序从后向前显示用户的登录记录,last也能根据用户、终端tty或时间显示相应的记录。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)