安全矩阵

 找回密码
 立即注册
搜索
查看: 2792|回复: 0

蓝队反制后的自动化信息收集

[复制链接]

855

主题

862

帖子

2940

积分

金牌会员

Rank: 6Rank: 6

积分
2940
发表于 2021-9-11 09:24:45 | 显示全部楼层 |阅读模式
本帖最后由 Delina 于 2021-9-11 09:42 编辑

原文链接:蓝队反制后的自动化信息收集

前言
在攻防演练对抗的过程中,蓝队往往会采取反制手段来获取红队的一些信息,那么在拿到一台机器后,需要收集一些关键信息,所以就想到这些操作完全可以通过脚本来完成。linux下可以使用gscan,或者使用自己写的shell脚本,windows下可以使用bat或powershell脚本。 目的很简单,使用脚本简化一些操作步骤,同时提示一些操作。
溯源思路
在拿到一台主机后,我们往往会进行以下操作来获取关于攻击者的一些信息。
查用户
查看主机名或者用户名信息,通过该信息进一步查找。
查连接信息
通过查询正在建立连接的情况,筛选出上一跳IP。
查日志
通过查询历史的远程登录信息,来获取上一跳IP。
查密码
查询工具获取windwos下密码,或者linux下的公钥文件,这些地方也可能会暴露ID信息,RDP保存的密码也是一个重点,密码获取到还能进一步操作,如查看浏览器密码,尝试连接上一跳机器等  windwos高版本默认不再储存在缓存中,抓密码需要先修改注册表,然后其重新登录才能获取。
历史痕迹
历史执行命令中可能会存在远程下载的操作,浏览器中历史浏览记录等信息。
敏感目录与文件
下载目录,最近查看的文件,配置文件,其他密码如navicat、xshell等。
脚本编写
根据我们想要信息,我们可以编写实用脚本,这里放一下平时使用的自动化脚本。
windows bat
  1. @ECHO OFF
  2. TITLE windows-info v0.1
  3. echo -------------------------机器名-------------------------
  4. hostname
  5. echo -------------------------用户信息-------------------------
  6. net user
  7. echo -------------------------在线用户-------------------------
  8. query user
  9. echo -------------------------正在连接的IP-------------------------
  10. netstat -ano |findstr ESTABLISHED | findstr /v 127.0.0.1
  11. echo -------------------------正在监听的端口-------------------------
  12. netstat -ano |findstr LISTENING | findstr /v 127.0.0.1
  13. echo -------------------------尝试备份安全日志到当前目录-------------------------
  14. wevtutil epl Security %USERPROFILE%\desktop\Sec.evtx
  15. echo -------------------------尝试获取远程登录日志-------------------------
  16. wevtutil qe Security "/q:*[System [(EventID=4648)]]" /f:text /rd:true /c:10
  17. echo -------------------------其他·提示-------------------------
  18. echo 查询隐藏用户:HKEY_LOCAL_MACHINE --SAM–SAM(需要右击权限修改管理员权限)-Domains-Account-users
  19. echo 查询密码信息:mimikatz privilege::debug sekurlsa::logonpasswords
  20. echo 查询web浏览记录、浏览器密码
  21. PAUSE
复制代码



linux sh
  1. #! /bin/bash
  2. # linux-info v0.1

  3. echo "-------------------------机器名-------------------------"
  4. hostname
  5. echo "-------------------------查看用户信息-------------------------"
  6. cat /etc/passwd |grep -v nologin |grep -v /bin/false
  7. echo "-------------------------查看登录信息-------------------------"
  8. w
  9. echo "-------------------------查看正在连接的IP-------------------------"
  10. netstat -antlp |grep ESTABLISHED
  11. echo "-------------------------查看对外监听的端口-------------------------"
  12. netstat -antlp |grep LISTEN | grep -v 127.0.0.1
  13. echo "-------------------------查看历史登录信息-------------------------"
  14. last -F -n 10
  15. echo "-------------------------查看安全日志中登录成功信息-------------------------"
  16. grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'
  17. echo "-------------------------查看历史命令,查找外联-------------------------"
  18. history | grep -E "([0-9]{1,3}[\.]){3}[0-9]{1,3}"
  19. echo "-------------------------查看计划任务-------------------------"
  20. crontab -l
  21. echo "-------------------------查找隐藏文件-------------------------"
  22. find / ! -path "/proc/*" ! -path "/usr/*" ! -path "/var/*" ! -path "/sys/*" -name ".*" -print
  23. echo "-------------------------其他·提示-------------------------"
  24. echo "查看用户进程:lsof -u hack"
  25. echo "查看端口占用:lsof -i:8888"
  26. echo "查看公钥信息:~/.ssh/id_dsa.pub"
  27. echo "查看进程:ps -aux"
复制代码



web日志分析Tips
通过web日志的分析,我们可能查到攻击者的攻击路径及意图,这对我们进一步抓取攻击团队可以提供有效帮助。
首先我们需要确定大致入侵事件段,以此为线索,查找这个时间范围内可疑的日志。通过后门文件也可以定位其途径。
下面分享下抄来的一些命令 :
1、列出当天访问次数最多的IP命令:

cut -d- -f 1 log_file|uniq -c | sort -rn | head -20
2、查看当天有多少个IP访问:

awk '{print $1}' log_file|sort|uniq|wc -l
3、查看某一个页面被访问的次数:

grep "/index.php" log_file | wc -l
4、查看每一个IP访问了多少个页面:

awk '{++S[$1]} END {for (a in S) print a,S[a]}' log_file
5、将每个IP访问的页面数进行从小到大排序:

awk '{++S[$1]} END {for (a in S) print S[a],a}' log_file | sort -n
6、查看某一个IP访问了哪些页面:

grep ^111.111.111.111 log_file| awk '{print $1,$7}'
7、去掉搜索引擎统计当天的页面:

awk '{print $12,$1}' log_file | grep ^\"Mozilla | awk '{print $2}' |sort | uniq | wc -l
MySQL数据库
在一些服务器上会开放MySQL数据库服务,攻击者会通过数据库获取服务器权限,在操作数据库时也会留下一些痕迹。
1、 查看当前正在登录的用户  

SELECT user,db,command,current_statement,last_statement,time FROM sys.session;
2、 查看重要的数据库以及表  

select table_schema,table_name,sum(io_read_requests+io_write_requests) io from sys.schema_table_statistics group by table_schema,table_name order by io desc;
3、通过数据库历史连接记录  

SELECT host,total_connections FROM sys.host_summary;


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2025-4-22 15:40 , Processed in 0.014170 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表