65内网安全-域环境工作组局域网探针

2023-12-27 17:52

本文主要是介绍65内网安全-域环境工作组局域网探针,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这篇分为三个部分,基本认知,信息收集,后续探针,

基本认知

分为,名词,域,认知;

完整架构图

名词

dwz称之为军事区,两个防火墙之间的区域称之为dwz,但安全性比内网较低,在dwz有邮件服务器,web服务器,我一般攻击内网是借助的web服务器。有dwz的存在大大增加了渗透内网的难度,即使拿下了web权限,也是要在渗透内网才可以的。

把一些不得不对外开放的东西,放到dwz;不用对外开放的都放在内网。

局域网:小公司,几台计算机的成为局域网也叫做工作组;

和域环境的区别:

范围小的计算机在一个局域网里面我们叫做工作组,不用去管理这些计算机。域环境需要一台主机去管理这些计算机,在大型环境里面就会用到域环境,方便去管理每一台机器,不用一台一台去管理,工作组的升级版。

工作组和域环境的攻击手法也有所差异。

域控制器dc;就是这个域里面的管理者,

活动目录ad;这是域控制器上面的一个策略,功能主机,比如一些安装软件,策略啊,都是由他来管理,

单域;公司里面有一个域环境,把所有东西都放在哪一个域里面,就是单域,

父域和子域;假如公司有了分公司,分公司有一个自己单独的域,但是还是会被主公司统筹管理

域数和域森林;框架结果有很多分支就称之为域森林,

认知

linux域渗透问题;linux域需要一个叫ldap的环境支撑,而且功能环境没有windows那么强大,大部分碰到的域都是windwos; 所以讲这个内网只会讲一点点linux。

局域网技术适用问题;

比如搜索,很明显地给出了适合局域网攻击,

大概内网流程安全问题;

大概就是,前期把基础知识搞清楚,接下来就进行信息收集,信息收集完只会就会涉及权限提升,权限可在前也可在后,我一般喜欢放在前面,自己权限足够高才能更好的操作;接下来就是横向渗透,知识点主要集中在这块;接下来是权限维持,不过重点还是在前面横向渗透,把前面横向渗透搞清楚之后,权限维持也懂

域环境框架

别的所有设备都在一个网段,唯独web服务器有两个网段,不同的网段就是对外开发的网段,黑客攻击的网段也是这个对外开放的,黑客通过对外的网段攻击到计算机,由于内网网段处于内网的链接,又享有192.168.3.31的访问的权限,可以针对内网环境的一些主机进行访问,攻击,首要攻击目标就是域控机dc。

这是单域的情况框架

案例一信息收集

信息收集包括:

信息收集的意义:判断当前服务器的操作系统以及版本,计算机的基本信息,为后续判断服务器脚本和网络环境做准备,

旨在了解当前服务器的计算机基本信息,为后续判断服务器角色,网络环境等做准备

systeminfo 详细信息

net start 启动服务

tasklist 进程列表

schtasks 计划任务 

在执行查看计划任务的适合就提示出来权限不够,这就是为什么要做提权操作,

案例二网络信息收集操作演示

旨在了解当前服务器的网络接口信息,为判断当前角色,功能,网络架构做准备

ipconfig /all 判断存在域:根据是否有“主DNS后缀”一栏判断是否存在域

net view /domain 判断存在域:能成功返回说明存在域

net time /domain 判断主域:会返回主域的时间,可以确定主域名,配合“nslookup”“ping”确定IP地址

netstat -ano 当前网络端口开放

nslookup 域名 追踪来源地址 

最简单的判断是域的方法   ipconfi /all

看回显这里,dns后缀有显示,就是在域里面

我本机执行就没有,

net view /domain,判断

看到回显有信息版本就是有域

我本机就没有

net time /domain  判断主域

net time是查看时间的意思,而加上/domain就是在域环境里面查看

出现了这个东西,前面输入ipconfig /all有一个dns后缀叫god.org

本机就没有

域森林和父域子域概念,dns后缀是got.org,现在有两个主机名字

这就出现了域森林,多余的型号,说明当前环境存在多域

sqlserver.god.org

这个就是父域

xiaodi.sqlserver.god.org

这个就相当于子域

为什么输入那个查看时间判断主域,因为域的时间一般都以域控制器为准,所以获取域时间,就会从域控上面获取,而前面显示的名字,就是域控的名字

这时候就可以利用nslockup 域控名字  去查看ip

这个ip地址就是域控的ip

也可以直接去ping主机名在获取到ip地址

netstak -ano

查看当前主机开放端口

信息主要是为了判断端口情况,为当前角色,功能,框架做出准备,知道当前服务器是干嘛用的,比如前面看基本上我发现这台主机的名字叫做webserver,webserver就是web服务器,这台计算机服务器就是网站服务提供。

每个服务器的角色,就大概知道干嘛用的。通过知道角色可以判断出来攻击手法,比如是网站服务器主机就用web攻击手段;自己的个人电脑,就不可能使用web攻击手法,他连网站都没有。

案例三用户信息收集操作演示 

旨在了解当前计算机或域环境下的用户及用户组信息,便于后期利用凭据进行测试,系统默认常见用户身份(我们主要攻击Domain Admains和Enterprise Admains,大部分成员主机在Domain users域用户里)

Domain Admins:域管理员(默认对域控制器有完全控制权)

Domain Computers:域内机器

Domain Controllers:域控制器

Domain Guest:域访客,权限低

Domain Users:域用户

Enterprise Admins:企业系统管理员用户(默认对域控制器有完全控制权)

一般我们主要攻击目标就是Domain Admins:域管理员和Enterprise Admins:企业系统管理员用户

而用户一般都存放在Domain Users:域用户

net user 本地用户

在本地用户一个普通用户点计算机右键管理的时候,会弹窗要登录adminsteast账户密码次啊可以打开,而如果登录管理用户的就可以直接右键管理查看策略什么的信息

net user /domain 获取域用户信息 

net localgroup 本地用户组

net group /domain 查看域里面用户组

wmic useraccount get /all 涉及域用户详细信息

就相当于知道了域里面的用户名以及ip,假如有了域用户的密码就能进行操作了,书记这个信息就是为了后续密码账户攻击做准备,有了域用户名就可以用密码上面的攻击套用上去进行攻击,爆破,

net group "Domain Admins" /domain 查询域管理员账户

net group "Enterprise Admins" /domain 查询管理员用户组

net group "Domain Controllers" /domain 查询域控制器 

案例四凭据信息收集操作演示

分为两类,

计算机用户的hash值,和明文的获取,指的就是操作系统上的账户密码信息,

mimikatz(爆破hash值的神器),

imikatz下载:https://github.com/gentilkiwi/mimikatz/releases 

这个需要管理员权限运行才可以,所以为什么课程安排是先进性提权,然后运行这个脚本,这个脚本有一个是免反弹式窗口的脚本,运行他就可以自动生成一个txt文件,里面就是运行后的结果,不用担心会出现没有反弹式窗口的情况

以管理员身份运行

之后就直接出来了明文密码和hash值

linux版本的脚本,没有mimiakatz好

mimipenguin下载:https://github.com/huntergregal/mimipenguin/releases/ 

打开下载链接有他支持的部分版本

下载好解压,直接运行脚本就会返回结果

计算机协议服务口令的获取,

要收集的信息

1.站点源码备份文件、数据库备份文件等
2.各类数据库 Web 管理入口,如PHPMyAdmin

3.浏览器保存密码、浏览器 Cookies

4.其他用户会话、3389 和 ipc$连接记录、回收站内容

5.Windows 保存的 WIFI 密码

6.网络内部的各种帐号和密码,如:Email、VPN、FTP、OA 等 

收集这些的作用:内网的攻击大部分都是建立在口令上的攻击,而管理员设置的密码都会有一定规矩,可能跟自己名字有关吧,就比如正常人的微信密码和qq的肯定有相似,甚至一样。内网肯定有办公电脑,有办公电脑就有他个人信息在上面,

两个利用工具;LaZagne(all),XenArmor(win) 

LaZagne

这个要注意免杀,听老师说就是改一下md5字符串就行

直接拖入命令行运行

选择参数所有

但是有很多秘密都得不到,这里的解释,就是这个脚本是给垃圾,只是支持面广而已

下载:https://github.com/AlessandroZ/LaZagne (注意不能直接点击运行会闪退,要在命令行里面运行)

XenArmor(win) 

国外软件,价格40-50美元,网上可能有破解版,不过是老版

下载地址:https://xenarmor.com/allinone-password-recovery-pro-software/(浏览器、WiFi、FTP的密码都可以发现)

这个收费的就是牛逼

什么密码都翻出来了。连你忘了的密码都有,就是这么牛逼,付费就是不一样

获取这么口令密码的原因:这些口令密码就能是我的字典,开了3389协议,用这个字典去测试能不能登录,如果能登录我就拿到了新的一台内网服务器权限,拿到了之后再继续执行这个事情,然后字典就更加全面,

案例五探针主机域控架构服务操作演示

现在是一家把信息收集,收集好了,

探针域控制器以及地址信息

net time /domain,看到控制器的名字

nslookup  控制器名 查看控制器的详细信息

ping  域控名  获取到ip

探针域内存活(在线)主机及地址信息 

存活主机就是指在线的主机,

nbtscan 192.168.3.0/24 第三方工具(类似于nmup,但是会标注域用户名和dc)

---下载:http://unixwiz.net/tools/nbtscan.html 

(既不免杀,也老,还要下载)实在不怎么滴

好处就是会标明域控,但是,这个第一步就已经获取了

for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.3.%I | findstr "TTL="(用for循环去ping1-254网段的主机,这是自带内部命令,不会被杀毒软件拦截)

不用担心扫描被杀

其它探针方式如:

nmap(易拦截)、masscan、第三方PowerShell脚本(windows的脚本开发语言)、nishang(推荐)、empire(推荐)等 

PowerShell是windows上面的一个语言,和cmd差不多的,可以实现在windows实现功能开发语言,实现一些功能,攻击者就利用这个自己写一个PowerShell的脚本去攻击,

Nishang下载: https://github.com/samratashok/nishang 

第一步导入模块,Import-Module .\nishang.psm1

如果导入不了,就设置一个执行策略

Set-ExecutionPolicy RemoteSigned 

设置完之后点y就行

Get-Command -Module nishang     获取模块nishang的命令函数(有很多命令函数分别执行不同功能,比如以下命令)

Get-information             获取常规计算机信息

组,用户,密码,域,目录什么的都收集好了

Invoke-Mimikatz             获取计算机用户名密码

调用一下这个mimikatz参数

和执行mimikatz得到的一模一样

Invoke-Portscan -startaddress 192.168.3.0 -Endaddress 192.168.3.100 -ResolveHost -ScanPort  端口扫描(查看目录对应文件有演示语法,其他同理)

真的牛逼,根据名字在判断每个电脑的角色,有些设置了权限会出现访问不了,提权提到系统权限,就能突破这个限制,就不收用户的限制,

其他的功能:删除补丁,反弹shell,凭据获取

  • 利用开放端口服务及计算机名判断
  • 核心业务机器:
    • 1.高级管理人员,系统管理员,财务/人事、业务人员的个人计算机
    • 2.产品管理系统服务器
    • 3.办公系统服务器
    • 4.财务应用系统服务器
    • 5.核心产品源码服务器
    • 6.数据库服务器
    • 7.文件或者网盘服务器
    • 8.电子邮件服务器
    • 9.网络监控系统服务器
    • 10.其他服务器(内部技术文档服务器,其他监控服务器)

当前渗透成功的角色基本上可以确定能不能渗透成功的概率。

fa

cai

这篇关于65内网安全-域环境工作组局域网探针的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/543917

相关文章

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

mysql-8.0.30压缩包版安装和配置MySQL环境过程

《mysql-8.0.30压缩包版安装和配置MySQL环境过程》该文章介绍了如何在Windows系统中下载、安装和配置MySQL数据库,包括下载地址、解压文件、创建和配置my.ini文件、设置环境变量... 目录压缩包安装配置下载配置环境变量下载和初始化总结压缩包安装配置下载下载地址:https://d

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

gradle安装和环境配置全过程

《gradle安装和环境配置全过程》本文介绍了如何安装和配置Gradle环境,包括下载Gradle、配置环境变量、测试Gradle以及在IntelliJIDEA中配置Gradle... 目录gradle安装和环境配置1 下载GRADLE2 环境变量配置3 测试gradle4 设置gradle初始化文件5 i

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装