专栏文章索引:网络安全
有问题可私聊:QQ:3375119339
目录
一、账户排查
- 账户排查主要包含以下几个维度
- 登录服务器的途径
- 弱口令
- 可疑账号
- 新增账号
- 隐藏账号
- 克隆账号
- 服务器是否存在被远程登录的途径
- 3389
- smb,445
- http
- ftp
- 数据库
- 中间件
- 弱口令排查维度
- 与上述服务器登录一致
- 常见应用有
- 3389
- smb,445
- http
- ftp
- 数据库
- 中间件
- 弱口令排查方式
- 查看是否启用组策略,限制弱口令
- 用户访谈,直接询问管理员是最好的方法
- 查看是否有暴力破解日志,并登录成功
- 最后上述都无效的情况,可以尝试读取明文密码
- 暴力破解,审核失败事件ID 4625
- 隐藏账号
- 使用net user看不到账号
- 使用本地用户管理也看不到账号。
- 如果账号登录,在任务管理器发现进程
- 创建Windows隐藏用户基本流程如下:
- 排查windows隐藏用 户,我们可以通过查看 注册表下
- HKEY_LOCAL_MAC HINE\SAM\SAM\ Domains\Account \Users\Names(需 要获取权限)
- 对比本地用户和组
二、windows网络排查
- 通常恶意程序会发起网络连接,从网络连接来查找恶意程序是最直接的方法
- 通常的方法有
- 命令行 netstat -ano,也可以重定向,netstat -ano | find "LISTEN"
- 任务管理器--性能--资源监测器
- https://betanews.com/2018/07/31/all-the-websites-windows-10- connects-to-clean-install 显示了windows10默认的网络连接,便于我们应急排查
- 通常的方法有
- 通过网络找进程,通过进程找文件,是应急响应中常用的手法
- 网络排查中还有一部分内容是路由表,查看本机是否被利用作VPN跳板
- 查看windows路由表方法如下
- route print
- netstat -rn
三、进程排查
- 任务管理器查看进程
- ctrl+alt+del -->任务管理器
- 命令行
- tasklist 或taskmgr
- msinfo32
- 正在运行任务
- 加载的模块
- 服务
- 启动程序
- 重点查看
- 进程的签名
- 进程的可执行文件路径
- 进程的可执行文件生成时间
- 进程描述是否异常
- CPU占用过高的进程
- 网络连接异常的进程
- 很多恶意程序会通过服务来启动进程,我们要注意进程与服务的关联方式
- 可以通过任务管理器,服务界面,查看进程PID
- 可以通过命令行查看进程与服务关联
- tasklist /svc
- 进程运行参数查询,如svchost作业服务承载进程,具体运行了什么
- wmic process where name='svchost.exe' get caption,commandline,processid,parentprocessid
- 进程加载模块查询
- 恶意文件通常会写成DLL文件
- 而非EXE直接执行
- 启动项排查
- 命令msconfig或msinfo32
- 注册表
- HKLM\Software\Microsoft\ Windows\CurrentVersion\Runonce
- HKLM\Software\Microsoft\ Windows\CurrentVersion\policies\Explorer\Run
- HKLM\Software\Microsoft\ Windows\CurrentVersion\Run
- HKCU\Software\Microsoft\ Windows NT\CurrentVersion\ Windows\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\Run
- HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
- 启动项排查
- 组策略--启动或登录脚本
- 计划任务排查
- taskschd.msc
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree
四、windows注册表排查
- HKEY_CLASSES_ROOT (HKCR):此处存储的信息可确保在Windows资源管理器中执行时打开正确的程序。它还包含有关拖放规则,快捷方式和用户界面信息的更多详细信息
- HKEY_CURRENT_USER (HKCU) :包含当前登录系统的用户的配置信息,包括用户的文件夹,屏幕颜色和控制面板设置。HKEY_USERS中特定于用户的分支的别名。通用信息通常适用于所有用户,并且是HKU.DEFAULT
- HKEY_LOCAL_MACHINE (H KLM):包含运行操作系统的计算机硬件特定信息。它包括系统上安装的驱动器列表以及已安装硬件和应用程序的通用配置
- HKEY_USERS (HKU):包含系统上所有用户配置文件的配置信息,包括应用程序配置和可视设置
- HKEY_CURRENT_CONFIG (HCU):存储有关系统当前配置的信息
五、内存分析
- 很多时候恶意代码会使用无文件技术,存于内存,且会使用各种hook技术 隐藏文件,直接进行内存分析也是应急响应中常用手段
- 分析内存首要步骤是获取内存,如果服务器是虚拟机,可以直接读取内存 文件,如vmware的内存文件,直接在目录下。
- 物理机获取内存
- 从任务管理器直接转存进程的内存
- 物理机获取内存
- 高级系统设置,需要重启后才能获取内存
- 使用工具获取内存
- 使用微软官方工具集SysinternalsSuite中的notmyfault64获取内存
- 下载地址https://docs.microsoft.com/zh- cn/sysinternals/downloads/sysinternals-suite
- 管理员模式运NotMyFault64.exe,此工具会使系统蓝屏,后收集内存
- 也有其他工具,如Memoryze, DumpIt, FastDump
- SysinternalsSuite中有很多其它工具,都可用于应急响应,可自行学习
- 关于内存分析,通常是使用volatility 进行内存分析
- Volatility基本命令
- python vol.py [plugin] -f [image] --profile=[profile]
- python vol.py pslist -f /path/to/memory.img -- profile=Win7SP1x64
- Volatility需要知道你的内存镜像来自哪种类型的系统以确定使用哪些 数据结构,算法和符号。
- WinXPSP2x86的默认配置文件是在内部设置的,因此如果分析的是 Windows XP SP2 x86内存镜像,则根本不需要提供--profile。
- 对于所有其它类型必须指定适当的配置文件名称
总结
- 加深对windows的理解,掌握windows常用的命令
- 从文件、网络、进程、用户等角度进行检查windows异常