当前位置: 首页 > news >正文

内网渗透测试理论学习之第四篇内网渗透域的横向移动

文章目录

在内网中,从一台主机移动到另外一台主机,可以采取的方式通常有文件共享计划任务远程连接工具客户端等。

一、IPC

IPC(Internet Process Connection)是为了实现进程间通信而开放的命名管道。
IPC可以通过验证用户名和密码获得相应的权限,
通过ipc$可以与目标机器建立连接,利用这个连接可以在目标机器上运行命令。

net use \\192.168.1.1\ipc$ "pass" /user:adstudy\administrator

利用条件:开启139、445端口;管理员开启了默认共享

二、HashDump

LM Hash“LAN Manager Hash”,本质是DES加密,还是硬编码密钥,从Windows Vista和Windows Server 2008开始默认禁用,
dump出的LM Hash为“**aad**3b435b51404eeaad3b435b51404ee”表示为空或被禁用

NTLM Hash,“New Technology LM Hash”,MD4加密。

Hash散列可以通过在线数据库、彩虹表等来破解,也可以使用PTH(Pass the Hash 哈希传递)来进行横向渗透。

要想在Windows操作系统中抓取散列值或明文密码,必须将权限提升至System
本地用户名、散列值和其他安全验证信息都保存在SAM文件中。
lsass.exe进程用于实现Windows的本地安全策略和登陆策略。
可以使用工具将散列值和明文密码从内存中的lsass.exe进程或SAM文件中导出。

e.g. GetPassword、PwDump7、QuarksPwDump、mimikatz、PowerShell

SAM文件保存位置C:\Windows\System32\config,该文件不允许复制,但可以使用U盘进入PE系统进行复制。

利用reg导出SAM和System文件,通过mimikatz或者Cain来从文件读取hash

利用任务管理器或者微软出品的Procdump导出lsass.dmp文件,通过mimikatz来从内存文件中获取hash

Windows Server 2012开始默认关闭WDigest,使攻击者无法从内存中获取明文密码;2012以下版本,如果安装KB2871997补丁,同样效果。WDigest功能状态可以在注册表中查看修改。

Hashcat只支持CPU破解;oclHashcat支持GPU破解(AMD、NIVDA),支持破解Windows密码、Linux密码、Office密码、Wi-Fi密码、MySQL密码、SQL Server密码,以及由MD5、SHA1、SHA256等国际主流加密算法加密的密码。

如何防范hashdump?

1、Windows Server 2012 R2新增了一个名为受保护的用户组(Protected Users),只要将需要保护的用户放入该组,攻击者就无法使用mimikatz等工具抓取明文密码和散列值了。2、安装KB2871997,是微软用来解决PsExec或IPC远程查看(c$)问题的补丁,能是本地账号不再被允许远程接入计算机系统,**但是SID=500的本地管理员账号(默认Administrator)除外**。3、微软在Windows XP中添加了一个名为WDigest的协议,该协议能够使Windows将明文密码存储在内存中,以方便用户登录本地计算机。4、根据Debug权限确定哪些用户可以将调试器附加到任何进程或内核中,默认情况下只有Administrator。mimikatz在抓取散列值或明文密码时需要使用Debug权限(因为mimikatz需要和lsass进程进行交互)。将Administrator从Debug组中移除。

三、PTH

PTH(Pass the Hash 哈希传递)。在域环境中,用户登录计算机时使用的大都是域账号,大量计算机在安装时会使用相同的本地管理员账号和密码,因此,攻击者就能使用哈希传递攻击的方法登录内网中的其他计算机。

在Windows网络中,散列值就是用来证明身份的(有正确的用户名和密码散列值,就能通过验证)。从Windows Server 2012 R2开始,默认在内存中不会记录明文密码,因此,攻击者往往会使用工具将散列值传递到其他计算机中,进行权限验证,实现对远程计算机的控制。

进行身份验证时,不会使用明文口令,而是将明文口令通过系统API转换成散列值,再与数据库中存储的散列值进行对比,如果完全相同则表示验证成功。不过,攻击者在获得密码散列值之后,依旧可以使用pth攻击来模拟用户进行验证。

使用NTLM Hash进行哈希传递;使用AES-256秘钥进行哈希传递(Pass the Key)。

e.g. mimikatz

四、PTT

要想使用mimikatz的哈希传递功能,必须具有本地管理员权限。mimikatz同样提供了不需要本地管理员权限进行横向渗透测试的方法,例如票据传递(Pass the Ticket,PTT)。

五、PsExec

PsExec是微软官方PsTools工具包中的软件,期初主要是用于大批量Windows主机的运维,在域环境下效果甚好。

通过PsExec,可以在远程计算机上执行命令,也可以将管理员权限提升到System权限以运行指定的程序。

PsExec的基本原理是:通过管道在远程目标计算机上创建一个psexec服务,并在本地磁盘中生成一个名为“PSEXECSVC”的二进制文件,然后通过psexec服务运行命令,运行结束后删除任务。

需要远程系统开启admin$共享(默认是开启的),会产生大量日志。

e.g. Metasploit

六、WMI

WMI,Windows Management Instrumentation,从Windows 98开始支持,可以在本地或者远程管理计算机系统。

自从PsExec在内网中被严格监控后,越来越多的反病毒厂商将PsExec加入了黑名单,于是攻击者逐渐开始使用WMI进行横向移动。通过渗透测试发现,在使用wmiexec进行横向移动时,Windows默认不会记录WMI的操作日志。

使用wmic远程执行命令,在远程系统中启动Windows Management Instrumentation服务(目标服务器需要开放135端口,wmic会以管理员权限在远程系统中执行命令)。如果服务器开启了防火墙,wmic将无法进行连接。此外,wmic命令如果没有回显,可以将命令结果输出到某文件,并使用ipc$和type来读取信息。如果wmic执行的是恶意程序,将不会留下日志。

e.g. wmic、wmiexec.py、wmiexec.vbs、Invoke-WmiCommand.ps1、Invoke-WMIMethod

七、DCOM

DCOMDistributed Component Object Model,分布式组件对象模型)是微软的一系列概念和程序接口。
通过DCOM,客户端程序对象能够对网络中的另一台计算机上的服务器程序对象发送请求。

DCOM是基于组件对象模型(COM)的。
COM提供了一套允许在同一台计算机上的客户端和服务端之间进行通信的接口。

执行流程同样:通过ipc$连接远程计算机;执行命令。

八、SPN

微软给与内的每种资源分配了不同的服务主体名称(Service Principal Name,SPN)。

因为域环境中的每台服务器都需要在Kerberos身份验证服务中注册SPN,所以攻击者会直接向域控制器发送查询请求,获取其需要的服务的SPN,从而知晓其需要使用的服务资源在哪台机器上

SPN扫描也称作“扫描Kerberos服务实例名称”,在活动目录中发现服务的最佳方法就是SPN扫描。与网络端口扫描相比,SPN扫描的主要特点是不需要通过连接网络中的每个IP地址来检查服务端口(不会因触发内网中的IPS、IDS等设备的规则而产生大量的警告日志)。因为SPN查询是Kerberos票据行为的一部分,所以检测难度较大。

SPN是通过LDAP协议向域控制器进行查询的,所以,攻击者只要获得一个普通的域用户权限就可以进行SPN扫描。

Kerberoast攻击。导出票据,破解票据。

防御:确保服务账号密码的长度超过25位;确保密码的随机性(避免相同);定期修改密码。

九、Exchange

电子邮件中可能包含大量的源码、企业内部通讯录、明文密码、敏感业务登陆地址及可以从外网访问内网的VPN账号密码等信息。

Exchange支持PowerShell对其进行本地或远程操作。

邮箱服务器、客户端访问服务器、集线传输服务器是核心角色,只要部署这三个角色就能提供基本的电子邮件处理功能,且这仨可以部署在同一台主机上。

邮件发送使用统一的通信协议,即SMTP(简单邮件传输协议);邮件接收则会使用多种协议标准,如从POP(邮局协议)发展而来的POP3,以及使用较为广泛的IMAPInternet邮件访问协议)。Exchange开发了私有的MAPI协议用于收取邮件。

Exchange支持的访问接口和协议:

  • OWA(Outlook Web App):Exchange提供的Web邮箱。
  • EAC(Exchange Administrative Center):Exchange管理中心,后台。
  • Outlook Anywhere(RPC-over-HTTP,RPC/HTTP)
  • MAPI(MAPI-over-HTTP,MAPI/HTTP)
  • Exchange ActiveSync(EAS,XML/HTTP)
  • Exchange Web Service(EWS,SOAP-over-HTTP)

Exchange服务发现:基于端口扫描发现(nmap)、SPN查询(在安装Exchange时,SPN就被注册在AD中了)

Exchange数据库的后缀为“.edb”,存储在Exchange服务器上,使用PowerShell可以查看相应信息。

Exchange邮件的文件后缀为“.pst”

UNCUniversal Naming Convention,通用命名规则,也称通用命名规范、通用命名约定)。类似于\\hostname\sharename\\ip\address\sharename的网络路径就是UNC路径,sharename为网络共享名称。

相关文章:

内网渗透测试理论学习之第四篇内网渗透域的横向移动

文章目录一、IPC二、HashDump三、PTH四、PTT五、PsExec六、WMI七、DCOM八、SPN九、Exchange在内网中,从一台主机移动到另外一台主机,可以采取的方式通常有文件共享、计划任务、远程连接工具、客户端等。 一、IPC IPC(Internet Process Conn…...

20 | k8s v1.20集群搭建master和node

1 单节点master 1.1 服务器整体规划 1.2 单Master架构图 1.3 初始化配置 1.3.1 关闭防火墙 systemctl stop firewalld systemctl disable firewalld1.3.2 关闭selinux sed -i s/enforcing/disabled/ /etc/selinux/config # 永久 setenforce 0 # 临时 1.3.3 关闭swap …...

《商用密码应用与安全性评估》第一章密码基础知识1.1应用概念

密码的概念与作用 概念 密码:采用特定变换的方法对信息进行加密保护、安全认证的技术、产品和服务。 密码技术:密码编码、实现、协议、安全防护、分析破译、以及密钥产生、分发、传递、使 用、销毁等技术。 密码技术核心:密码算法…...

【博学谷学习记录】超强总结,用心分享丨人工智能 深度学习 神经网络基础知识点总结

目录神经网络激活函数引入激活函数原因:sigmoid激活函数tanh 激活函数ReLU 激活函数(最常用)SoftMax如何选择反向传播参数初始化方法优化方法正则化批量归一层网络模型调优的思路神经网络 简单的神经网络包括三层:输入层&#xf…...

Python+tkinter添加滚动条

大家好,我是IKUN的真爱粉,有时候我们需要在tkinter上加滚动条,那么怎么制作呢,我们先看下面的视频展示效果,是不是你想要的 展示 感觉制作的略微粗糙,各位可以后期自己慢慢调整 创建滚动条重要的步骤是&a…...

大V龚文祥造谣董明珠恋情被禁言

我是卢松松,点点上面的头像,欢迎关注我哦! 因造谣董明珠与王自如恋情,知名大V龚文祥老师被今日头条禁言。龚文祥说,69岁的董明珠,找了一个小自己34岁的男友,引的网友议论纷纷。 2月26日&#…...

深入浅出Reactjs

深入浅出Reactjs 介绍 React是一个流行的JavaScript库,用于开发复杂的用户界面。它可以帮助开发人员构建灵活、高效和可维护的应用程序。本文将深入浅出地介绍React开发框架。 React的核心概念 React框架的核心概念是组件。组件是一个独立的、可复用的代码块&am…...

《C++ Primer Plus》第18章:探讨 C++ 新标准(1)

本章首先复习前面介绍过的C11功能,然后介绍如下主题: 移动语义和右值引用。Lambda 表达式。包装器模板 function。可变参数模板。 本章重点介绍 C11 对 C 所做的改进。本书前面介绍过多项 C11 功能,本章首先复习这些功能,并详细…...

PCB板漏孔、漏槽怎么办?看工程师避坑“SOP”

本文为大家介绍PCB画板时常见的钻孔问题,避免后续踩同样的坑。钻孔分为三类,通孔、盲孔、埋孔。不管是哪种孔,孔缺失的问题带来的后果是直接导致整批产品不能使用。因此钻孔设计的正确性尤为重要。 案例讲解 问题1:Altium设计的文…...

mysql数据库同步方案:springboot+集成cannal

1授权 -- 使用命令登录:mysql -u root -p -- 创建用户 用户名:canal 密码:Canal123456 create user canal% identified by Canal123456; -- 授权 *.*表示所有库 grant SELECT, REPLICATION SLAVE, REPLICATION CLIENT on *.* to canal% ident…...

oracle 19c 创建物化视图并测试logminer进行日志挖掘

1、创建物化视图 alter session set containerpdb; grant create materialized view to scott; create materialized view 物化视图名 -- 1. 创建物化视图 build [immediate | deferred] -- 2. 创建方式,默认 immediate refre…...

2.1 黑群晖驱动:10代u核显硬解驱动(解决掉IP、重启无法连接问题)

本文提供了两种10代核显驱动方式:1)第一种(本文:二、仅修改i915.ko驱动10代u核显方法)为网上流传最多但是对主板兼容性要求很高,网上评论常会出现操作后无法识别IP(掉IP)的问题。因此,采用第一种…...

二、CSS

一、CSSHTML的结合方式 1、第一种&#xff1a;在标签的style属性上设置"key:value value;"&#xff0c;修改标签样式 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title>…...

变分推断 (Variational Inference) 解析

前言 如果你对这篇文章可感兴趣&#xff0c;可以点击「【访客必读 - 指引页】一文囊括主页内所有高质量博客」&#xff0c;查看完整博客分类与对应链接。 变分推断 在贝叶斯方法中&#xff0c;针对含有隐变量的学习和推理&#xff0c;通常有两类方式&#xff0c;其一是马尔可…...

27. 移除元素

题目链接&#xff1a;https://leetcode.cn/problems/remove-element/给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输…...

hive临时目录清理

hive运行失败会导致临时目录无法自动清理&#xff0c;因此需要自己写脚本去进行清理 实际发现hive临时目录有两个&#xff1a; /tmp/hive/{user}/* /warehouse/tablespace//hive/**/.hive-staging_hive 分别由配置hive.exec.scratchdir和hive.exec.stagingdir决定: 要注意的…...

如何创建发布新品上市新闻稿

推出新产品对任何企业来说都是一个激动人心的时刻&#xff0c;但向潜在客户宣传并围绕您的新产品引起轰动也可能是一个挑战。最有效的方法之一就是通过发布新品上市新闻稿。精心制作的新闻稿可以帮助我们通过媒体报道、吸引并在目标受众中引起关注。下面&#xff0c;我们将讲述…...

关于.bashrc和setup.bash的理解

在创建了ROS的workspace后&#xff0c;需要将workspace中的setup.bash文件写入~/.bashrc 文件中&#xff0c;让其启动&#xff1a; source /opt/ros/melodic/setup.bash这句话的目的就是在开新的terminal的时候&#xff0c;运行这个setup.bash&#xff0c;而这个setup.bash的作…...

03 Android基础--fragment

03 Android基础--fragment什么是fragment&#xff1f;fragment生命周期&#xff1f;动态的fragment与静态的fragmentfragment常用的两个类与APIFragment与Activity通信什么是fragment&#xff1f; 碎片&#xff0c;一个activity中可以使用多个fragment&#xff0c;可以把activi…...

Redis使用,AOF、RDB

前言 如果有人问你&#xff1a;"你会把 Redis 用在什么业务场景下&#xff1f;" 我想你大概率会说&#xff1a;"我会把它当作缓存使用&#xff0c;因为它把后端数据库中的数据存储在内存中&#xff0c;然后直接从内存中读取数据&#xff0c;响应速度会非常快。…...

SOLIDWORKS Premium 2023 SP1.0 三维设计绘图软件

SOLIDWORKS 中文完美正式版提供广泛工具来处理最复杂的问题,并提供深层技术完成关键细节工作。新功能可助您改善产品开发流程,以更快地将创新产品投入生产。Solidworks 是达索公司最新推出的三维CAD系统,它可让设计师大大缩短产品的设计时间,让产品得以快速、高效地投向市场…...

PyQGIS开发--自动化地图布局案例

前言创建地图布局是 GIS 作业结束时的一项常见任务。 它用于呈现最终结果的输出&#xff0c;作为与用户交流的一种方式&#xff0c;以便从地图中获取信息、知识或见解。 在包括 QGIS 在内的任何 GIS 软件中制作地图布局都非常容易。 但另一方面&#xff0c;当我们必须生成如此大…...

严格模式和非严格模式下的this指向问题

一、全局环境 1.函数调用 非严格模式&#xff1a;this指向是Window // 普通函数 function fn () { console.log(this, this); } fn() // 自执行函数 (function fn () { console.log(this, this); })() 严格模式&#xff1a;this指向是undefined //…...

vue2、vue3组件传值,引用类型,对象数组如何处理

vue2、vue3组件传值&#xff0c;引用类型&#xff0c;对象数组如何处理 Excerpt 所有的 prop 都使得其父子 prop 之间形成了一个单向下行绑定&#xff1a;父级 prop 的更新会向下流动到子组件中&#xff0c;但是反过来则不行。这样会防止从子组件意外变更父… 下述组件传值指引…...

165. 小猫爬山

Powered by:NEFU AB-IN Link 文章目录165. 小猫爬山题意思路代码165. 小猫爬山 题意 翰翰和达达饲养了 N只小猫&#xff0c;这天&#xff0c;小猫们要去爬山。 经历了千辛万苦&#xff0c;小猫们终于爬上了山顶&#xff0c;但是疲倦的它们再也不想徒步走下山了&#xff08;呜咕…...

ECharts教程(详细)

ECharts教程(详细) 非常全面的ECharts教程&#xff0c;非常全面的ECharts教程&#xff0c;目前线条/节点颜色、线条粗细、线条样式、线条阴影、线条平滑、线条节点大小、线条节点阴影、线条节点边框、线条节点边框阴影、工具提醒、工具提醒样式、工具自定义提醒、工具提醒背景…...

pinia

目录一、介绍二、快速上手1.安装2.基本使用与state3.actions的使用4.getters的使用5.storeToRefs的使用6.pinia模块化三、数据持久化1.安装2.使用插件3.模块开启持久化4.按需缓存模块的数据一、介绍 pinia从使用角度和之前Vuex几乎是一样的&#xff0c;比Vuex更简单了。 在Vu…...

mysql中insert语句的五种用法

文章目录前言一、values参数后单行插入二、values参数后多行插入三、搭配select插入数据四、复制旧表的信息到新表五、搭配set插入数据总结前言 insert语句是标准sql中的语法&#xff0c;是插入数据的意思。在实际应用中&#xff0c;它也演变了很多种用法来实现特殊的功能&…...

YOLOV7模型调试记录

先前的YOLOv7模型是pytorch重构的&#xff0c;并非官方提供的源码&#xff0c;而在博主使用自己的数据集进行实验时发现效果并不理想&#xff0c;因此生怕是由于源码重构导致该问题&#xff0c;此外还需进行对比实验&#xff0c;因此便从官网上下载了源码&#xff0c;进行调试运…...

模拟光伏不确定性——拉丁超立方抽样生成及缩减场景(Matlab全代码)

光伏出力的不确定性主要源于预测误差,而研究表明预测误差(e)服从正态分布且大概为预测出力的10%。本代码采用拉丁超立方抽样实现场景生成[1,2]、基于概率距离的快速前代消除法实现场景缩减[3],以此模拟了光伏出力的不确定性。与风电不确定性模拟不同之处在于——光伏存在0出…...

网站建设 方案下载/网络软件开发

背景 随着产品功能不断的迭代&#xff0c;总会有需求希望在保证不影响其他区域功能的前提下&#xff0c;在某一区域实现根据选择器切换不同的内容显示。 苹果并不推荐嵌套滚动视图&#xff0c;如果直接添加的话&#xff0c;就会出现下图这种情况&#xff0c;手势的冲突造成了体…...

红色旅游网页设计/广州网站优化

第1步 - 从一段文字开始 在本练习中&#xff0c;我们希望强制将一个下降帽放在一段文本旁边。我们还希望丢弃上限是可扩展的&#xff0c;无论用户的默认字体大小如何 - 这意味着所有测量都将以ems或百分比表示。从一段简单的文字开始。 代码如下所示&#xff1a; <!DOCTY…...

简约网站模版/百度搜索引擎怎么做

simhash学习过程中的笔记 文档如果直接使用MD5做hash这种方式进行去重操作&#xff0c;对于一些相似文档的处理就无能为力了&#xff0c;简单的一个字符的变化&#xff0c;hash值就会发生变化&#xff0c;Simhash简单来说就是类似文档所产生的hash值也是类似的&#xff0c;这样…...

外贸网站开发开发/班级优化大师的功能

Lecture 2: Making Presentations in English 2.1 Importance and General Advices 2.2 Instructions on Preparing Slides 2.3 Instructions on Making Presentation...

怎样通过网址浏览自己做的网站/贵阳网站优化公司

移动硬盘格式化后数据怎么恢复?移动硬盘是可移动的大容量存储设备&#xff0c;经常用来存储很多重要的数据文件。但同样使用中遇到的问题也不少&#xff0c;比如说移动硬盘的格式化、误删除、操作失误等。如果遇到不小心把移动硬盘格式化了&#xff0c;所有的数据将会消失&…...

免费好用的wordpress/变现流量推广app

C语言不仅提供了丰富的数据类型&#xff0c;而且还允许由用户自己定义新的类型说明符&#xff0c;也就是允许由用户为数据类型取“别名”。类型定义符typedef即可用来完成此功能。例如&#xff0c;有整型量a,b,其说明如下&#xff1a; int a,b; 其中int是整型变量的类型说明符…...