p75 应急响应-数据库&漏洞口令检索&应急取证箱

数据来源

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第1张图片

必须知识点:

  1. 第三方应用由于是选择性安装,如何做好信息收集和漏洞探针也是获取攻击者思路的重要操作, 除去本身漏洞外,提前预知或口令相关攻击也要进行筛选。
  2. 排除三方应用攻击行为,自查漏洞分析攻击者思路,人工配合工具脚本
  3. 由于工具或脚本更新迭代快,分类复杂,打造自己的工具箱迫在眉睫

演示案例: 

  • 系统日志-Win 日志自动神器 LogonTracer-外网内网日志
  • 应用分析-数据库 Mysql&Mssql&Oracle 等分析-爆破注入操作
  • 模拟测试-自查漏洞模拟渗透测试寻找攻击源头-漏洞口令检索
  • 专业要求-自动化 ir-rescue 应急响应取证工具箱-实时为您提供服务

案例 1-Win 日志自动神器 LogonTracer-外网内网

github上的项目地址:https://github.com/JPCERTCC/LogonTracer/wiki/

linux 安装使用笔记:阿里云主机记得开放端口及关闭防火墙

安装教程,我这里是在Ubuntu18.04.6虚拟机中安装:(参考) 

1)下载并解压neo4j

官网:Neo4j下载中心 - Neo4j图形数据平台

下载链接:https://dist.neo4j.org/neo4j-community-4.4.19-unix.tar.gz

# 解压neo4j

tar -zvxf neo4j-community-4.4.19-unix.tar.gz

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第2张图片

2)安装java11环境

sudo apt-get install openjdk-11-jdk

3)修改 neo4j 配置(conf/neo4j.conf)保证外部访问(如果是服务器部署要开启端口)

要先获取文件权限:

chmod -R 777 neo4j-community-4.4.19

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第3张图片 

cd neo4j-community-4.4.19
gedit conf/neo4j.conf    

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第4张图片

dbms.connector.bolt.listen_address=0.0.0.0:7687

dbms.connector.http.listen_address=0.0.0.0:7474

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第5张图片

4)开启neo4j

./bin/neo4j console &

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第6张图片

5)浏览器访问(默认账户密码都是:Neo4j):

(54条消息) neo4j修改用户密码_neo4j修改密码_码大哈的园子的博客-CSDN博客

# 第一次连接后需要重置账户和密码
本机ip:7474

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第7张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第8张图片

6)下载并安装LogonTracer 

# 把项目拉下来
git clone https://github.com/JPCERTCC/LogonTracer.git

# 安装
chmod -R 777 LogonTracer
cd LogonTracer

# 如果pip没安装:apt install python3-pip
pip3 install -r requirements.txt

我这里安装出现报错

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第9张图片

运行下面的命令,然后再次安装 

pip3 install --upgrade pip 

7)启动LogonTracer,并尝试在浏览器访问LogonTracer

python3 logontracer.py -r -o [端口] -u [用户名] -p [密码] -s [IP 地址] 

例:python3 logontracer.py -r -o 8080 -u neo4j -p root -s 192.168.1.48

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第10张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第11张图片

也可以通过命令来上传文件

python3 logontracer.py -e [EVTX 文件] -z [时区] -u [用户名] -p [密码] -s [IP 地址] 

8)我尝试上传日志文件控制台报错,解决:(参考)


p75 应急响应-数据库&漏洞口令检索&应急取证箱_第12张图片

解决:

在项目的根目录打开终端

gedit templates/index.html

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第13张图片

找到

https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js

将该网址的改为

https://ajax.loli.net/ajax/libs/jquery/3.2.1/jquery.min.js

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第14张图片

再修改系统的hosts文件

gedit /etc/hosts

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第15张图片

改完之后要重启一下LogonTracer项目

再次访问LogonTracer界面,再次尝试上传日志文件 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第16张图片

默认的系统日志文件路径:%SystemRoot%\System32\Winevt\Logs\System.evtx  

注意:我这里选择文件是提示说要管理员权限查看查看日志文件,无法选择文件,我的解决方法是件系统的日志文件复制到桌面在从桌面上选择 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第17张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第18张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第19张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第20张图片

然后要刷新一下网页

此工具根据我们之前的研究可视化与 Windows 登录相关的以下事件 ID。

  • 4624:成功登录
  • 4625:登录失败
  • 4768:Kerberos 身份验证(TGT 请求)
  • 4769:Kerberos 服务票证(ST 请求)
  • 4776:NTLM 身份验证
  • 4672:分配特殊权限

 事件类型

  • All Users:查看所有用户的登录信息
  • SYSTEM Privileges:查看管理员账号的登录信息(一般登录类型3或10)
  • NTLM Remote Logon:查看NTLM远程登录信息(登录类型3)
  • RDP Logon:查看RDP远程桌面登录信息(登录类型10)
  • Network Logon:查看网络登录信息(登录类型3)
  • Batch Logon:查看批处理登录信息(登录类型4)
  • Service Logon:查看服务登录信息(登录类型5)
  • Ms14-068 Exploit Failure:MS14-068漏洞利用失败信息
  • Logon Failure:查看登录失败信息
  • Detect DCsync/DCShadow:查看删除 DCsync/DCShadow信息
  • Add/Detect Users:查看添加/删除用户信息
  • Domain Check:域检查信息
  • Audit Policy Change:查看审计策略变更信息

对于每个节点,链接到主机(绿点)并带有一行账户信息(红/蓝)表示已使用主机登陆。

红色:SYSTEM权限帐户

蓝色:标准用户帐户

绿色:主机/ IP地址

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第21张图片

windows查看系统日志文件路径

9)我的真实机都没开启过远程桌面连接看不出啥,再开台虚拟机攻击看看

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第22张图片

我这里在真实机中使用弱口令工具进行攻击

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第23张图片

我这里将虚拟机的系统日志文件复制到真实机进行分析(注意:需要件日志文件复制到虚拟机的桌面或其他位置才能复制到真实机)

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第24张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第25张图片p75 应急响应-数据库&漏洞口令检索&应急取证箱_第26张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第27张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第28张图片

其他功能自己玩一下就知道了(感觉这个工具也不是很好用,安装麻烦,很多功能都显示搜索失败不知道是我安装有问题还是操作有问题)

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第29张图片

搜了一下百度发现有位大佬推荐f8x来自动化安装渗透测试环境,我们也试下:

工具的中文介绍:linux 红/蓝队环境自动化部署---f8x - 码农教程 (manongjc.com)

1)打开f8x在github上的项地址并安装:
GitHub - fffffff0x/f8x: 红/蓝队环境自动化部署工具 |红/蓝团队环境自动化部署工具

我这里再开一台虚拟机实验

wget : wget -O f8x https://f8x.io/
curl : curl -o f8x https://f8x.io/

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第30张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第31张图片

用法 

bash f8x -h

2)使用f8x安装LogonTracer 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第32张图片

bash f8x -lt

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第33张图片

耐心等待安装

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第34张图片

硬件配置要求很高,我电脑卡死了不搞了,如果配置达标应该是可以安装成功的(安装成功的朋友可以给我留言)

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第35张图片

案例 2-数据库 Mysql&Mssql&Oracle 等日志分析-爆破注入操作

常见的数据库攻击包括弱口令、SQL 注入、提升权限、窃取备份等。对数据库日志进行分析,可以 发现攻击行为,进一步还原攻击场景及追溯攻击源。

Mysql:启用,记录,分析(分析 SQL 注入及口令登录爆破等)

show variables like '%general%';
SET GLOBAL general_log = 'On';
SET GLOBAL general_log_file = '/var/lib/mysql/mysql.log';

演示Mysql:(这里使用PhpStudy2018做演示)

1)首先打开Mysql的命令行

show variables like '%general%';

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第36张图片

SET GLOBAL general_log = 'On';

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第37张图片

打开日志文件的根目录并找到日志文件

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第38张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第39张图片

2)对网站进行sql注入,然后在查看日志文件

我这里把sqlilabs靶场作为目标进行sql注入,安装教程:《SQL注入—Sqli-labs注入环境搭建》

测试是否安装成功:

# 这里要改成自己的访问端口,默认:80
http://127.0.0.1:8088/sqlilabs/Less-2/?id=1  

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第40张图片

进行sql注入,在url参数后面加上:and 1=1

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第41张图片

查看日志,这里就能发现sql注入的记录了

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第42张图片

3)使用工具进行弱口令攻击再查看日志

这里使用弱口令工具进行攻击

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第43张图片

然后查看日志

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第44张图片

演示Mssql:查看,跟踪,分析(配置跟踪可分析操作,查看日志可分析登录等)

这个数据库工具是我前几年安装的,我当时没有记录安装过程,这个可以在网上搜索的到,需要安装的可以自行搜索教程 

 1)查看日志

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第45张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第46张图片

2)可以开启数据库的跟踪功能

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第47张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第48张图片

开启后我们就可以去看看

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第49张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第50张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第51张图片

3)执行sql语句然后查看跟踪情况请

随便写一个查询语句

SELECT * FROM users WHERE username='张三'

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第52张图片

然后查看我们的数据跟踪情况

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第53张图片

        如果是真实环境中数据库是由后端开发人员进行调用,黑客的sql注入是在前端的页面中完成,前端的页面调用了后端开发人员写的接口,所以我们就能在网站上对数据库进行sql注入,因为我这里没有合适的项目部署所以就用数据库软件自带的查询创建进行sql语句的执行,效果都是一样的在网站中调用执行的sql语句一样能被跟踪到。

Oracle 这个数据库软件就不演示了示例都是一样的,如果在真实环境中遇到百度就可以了 

案例 3-自查漏洞模拟渗透测试寻找攻击源头-漏洞口令检索

背景:

  • 日志被删除或没价值信息
  • 没有思路进行分析可以采用模拟渗透

1)windows,linux 系统漏洞自查:

WindowsVulnScan,linux-exploit-suggester

前提安装了python3 

windows系统漏洞自查:(通过收集靶机系统的补丁,查看系统的内核漏洞)

工具的使用方法官网有:

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第54张图片

1. 首先运行powershell脚本KBCollect.ps收集一些信息

打开powershell脚本 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第55张图片

工具下载后有两个版本,随便找个版本运行 

.\KBCollect.ps1

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第56张图片  

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第57张图片

解决方案:(参考) 

我们通过管理员权限运行power shell(可通过win+x打开),然后输入命令:(有选择就选择“”就可以了)

set-ExecutionPolicy RemoteSigned

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第58张图片

KB.json文件详细描述当前操作系统的版本信息与已经打过的漏洞补丁信息 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第59张图片

2. 将运行后产生的KB.json文件移动到cve-check.py所在的目录

我这里直接生成在这个目录下就不用移动了

3. 安装一些python3模块(我这里换成cmd执行命令)

python3 -m pip install requirements.txt

我这里运行失败,打开 requirements.txt 的这文件一看发现只是安装requests==2.23.0我直接手动安装了,不使用一键安装

pip install requests==2.23.0 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第60张图片

4. 运行cve-check.py -u创建CVEKB数据库

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第61张图片

5. 运行cve-check.py -U更新CVEKB数据库中的hasPOC字段

  此处可以使用-m选择更新模式。
  -m All:更新所有
  -m Empty:只更新hasPOC字段为空的
  -m Error:只更新hasPOC字段为Error的

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第62张图片

6. 运行cve-check.py -C -f KB.json查看具有公开EXP的CVE,如下:

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第63张图片

EXP信息就是漏洞信息

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第64张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第65张图片

7. 若使用脚本扫描到的系统名称和版本不准确,可以使用-n,-N进行指定

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第66张图片

8. 如果把脚本的信息过时的还可以更新一下

# 直接运行这个脚本就能查看使用方式
cve-check.py

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第67张图片

linux系统漏洞自查:(通过收集靶机系统的补丁,查看系统的内核漏洞)

直接运行脚本即可(我这里是下载压缩包解压,然后复制到linux系统中) 

./linux-exploit-suggester.sh

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第68张图片p75 应急响应-数据库&漏洞口令检索&应急取证箱_第69张图片

2)windows,linux 服务漏洞自查:

windows:(要在powershell脚本中运行命令)

Get-WmiObject -class Win32_Product

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第70张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第71张图片

linux:

脚本下载地址:GitHub - rebootuser/LinEnum:脚本化本地 Linux 枚举和权限升级检查

LinEnum.sh

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第72张图片

这个脚本还可以加一些参数一起运行

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第73张图片

利用前期信息收集配合 searchsploit(漏洞利用库) 进行应用服务协议等漏洞检索

漏洞利用数据库 / 漏洞利用 + 壳码 + GHDB ·吉特实验室 (gitlab.com)

安装

https://gitlab.com/exploit-database/exploitdb/-/archive/main/exploitdb-main.tar.gz

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第74张图片

使用示例

漏洞更新

./searchsploit -u

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第75张图片

搜索关于SQL Server 2016的漏洞:

./searchsploit 'SQL Server 2016'

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第76张图片

找到目标脚本

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第77张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第78张图片

这个脚本运行会报错说“某某模块找不到”,解决安装对应的模块即可:pip install 模块名

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第79张图片

我这里就不继续了,需要的可以直接玩一下或者直接在百度搜索这个漏洞编号,看别人是如何利用的

3)windows,linux 协议弱口令自查-工具探针或人工获取判断-snetcraker

GitHub - shack2/SNETCracker: 超级弱口令检查工具是一款Windows平台的弱口令审计工具,支持批量多线程检查,可快速发现弱密码、弱口令账号,密码支持和用户名结合进行检查,大大提高成功率,支持自定义服务端口和字典。

工具采用C#开发,需要安装.NET fr amework 4.0。

如果是windows系统可以在我的网盘下载可执行程序执行运行就能使用:弱口令工具

直接运行就可以了,使用就不多说了很简单,上面也有使用过 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第80张图片p75 应急响应-数据库&漏洞口令检索&应急取证箱_第81张图片

案例 4-自动化 ir-rescue 应急响应工具箱-实时为您提供服务

项目地址:(可以尝试自己进行编写修改,成为自己的工具箱杀器)

GitHub - diogo-fernan/ir-rescue: A Windows Batch script and a Unix Bash script to comprehensively collect host forensic data during incident response.

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第82张图片  

win工具演示:

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第83张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第84张图片

扩展名.bat就是个批处理文件,就是相当于命令的集合运行了这个文件就相当于运行了很多条命令,详细介绍:批处理编写(病毒)_%userprofile_正经人_____的博客-CSDN博客

1)先更新一下工具箱 

文件内容解析 

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第85张图片运行

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第86张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第87张图片

 p75 应急响应-数据库&漏洞口令检索&应急取证箱_第88张图片

2)可以收集一下当前主机的信息(收集大量取证数据

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第89张图片

p75 应急响应-数据库&漏洞口令检索&应急取证箱_第90张图片

linxu工具就不演示了使用都是差不多的,需要的可以自己玩下

涉及资源:

  • https://github.com/rebootuser/LinEnum
  • https://github.com/diogo-fernan/ir-rescue
  • https://github.com/offensive-security/exploitdb
  • https://github.com/chroblert/WindowsVulnScan
  • https://github.com/JPCERTCC/LogonTracer.git
  • https://github.com/mzet-/linux-exploit-suggester
  • https://pan.baidu.com/s/1tQS1mUelmEh3I68AL7yXGg 提取码:xiao

你可能感兴趣的:(小迪安全,安全)