笔记:内网渗透流程之信息收集
信息收集
首先,收集目标内网的信息,包括子网结构、域名信息、IP地址范围、开放的端口和服务等。这包括通过主动扫描和渗透测试工具收集信息,以及利用公开的信息源进行信息搜集。
本机信息收集
查看系统配置信息
查看系统详细信息,如OS版本、补丁安装情况,可以根据这些信息筛选可利用的漏洞:
systeminfo

详细:
查询操作系统即软件的信息 :
systeminfo | findstr /B /C:"OS"查看系统架构
:echo %processor_architecture%查看系统启动时间:net statistics workstation
查看补丁信息:wmic qfe get caption,description,hotfixid,installedon
查看系统安装的软件版本等内容:wmic product get name,version
查杀软:wmic /node:localhost /namespace:\\root\securitycenter2 path antivirusproduct get displayname /format:list
查看防火墙配置信息:
netsh firewall show config和netsh advfirewall firewall show config
查看系统服务信息
查看启动程序信息:wmic startup get command,caption

查看启动进程,可以根据启动进程判断主机在域中扮演的角色:net start

查询本机服务信息:wmic service list brief

查询进程信息:tasklist

查看计划任务:schtasks /query /fo LIST /V

查看端口开放情况:netstat -ano
注意,一般查看进程端口,先查进程pid,在根据pid查端口

判断是否存在域:net view /domain
查看主机名、域DNS、IP:ipconfig /all
查看系统登录信息
查看登录到系统的用户信息:query user/net session
域内信息收集
判断是否存在域:whoami,如果当前账户为域用户,则返回结果通常为域名\用户名

ipconfig
如果是双网卡,一般存在内网

systeminfo
如果在域中,则如图,否则为 workgroup

补充:
工作组(Work Group)是局域网中的一个概念。它是最常见最简单最普通的资源管理模式,就是将不同的电脑按功能分别列入不同的组中,以方便管理。
工作组(Work Group)是最常见最简单最普通的资源管理模式,就是将不同的电脑按功能分别列入不同的组中,以方便管理。比如在一个网络内,可能有成百上千台工作电脑,如果这些电脑不进行分组,都列在“网上邻居”内,可想而知会有多么乱(恐怕网络邻居也会显示“下一页”吧)。
为了解决这一问题,Windows 9x/NT/2000 才引用了“工作组”这个概念,比如一所高校,会分为诸如数学系、中文系之类的,然后数学系的电脑全都列入数学系的工作组中,中文系的电脑全部都列入到中文系的工作组中……如果你要访问某个系别的资源,就在“网上邻居”里找到那个系的工作组名,双击就可以看到那个系别的电脑了。
查看登录信息:
net config workstation
在域中,通常计算机全名为计算机名.域名
但是我的电脑不在域中,如图

查看时间服务器,域中机器的dns服务器和时间服务器通常为域控机
net time /domain
但是我的电脑不在域中

查看IP:
nslookup 域名
查看用户信息:
whoami /all

查看域内用户,可以将其作为字典,对其他主机的密码进行爆破:
net user /domain
但是我的电脑不在域中

探测域内存主机&端口
-
Ping 探测主机在线状态:使用命令行工具如
ping或者网络扫描工具如nmap来 ping 主机 IP 地址,以确定主机是否在线。 -
端口扫描:使用端口扫描工具如
nmap来扫描主机的开放端口。例如,使用命令nmap -p <端口范围> <目标主机>来扫描特定端口范围内的开放端口,如nmap -p 1-100 192.168.0.1。 -
漏洞扫描:使用漏洞扫描工具如
Nessus、OpenVAS等,来扫描主机上存在的已知漏洞和安全风险。 -
域名解析:使用 DNS 相关工具如
nslookup、dig来解析域名,查找主机对应的 IP 地址。 -
端口探测工具:如
telnet,通过尝试建立 TCP 连接来探测主机上特定端口的可用性。例如,使用命令telnet <目标主机> <端口号>来尝试连接指定主机的特定端口,如telnet 192.168.0.1 80。 -
网络发现工具:使用网络发现工具如
arp-scan,可以扫描局域网内的主机,并列出其 IP 地址、MAC 地址等信息。 -
操作系统指纹识别:使用指纹识别工具如
nmap的 OS Detection 功能,可以通过分析目标主机的网络行为,尝试识别主机所运行的操作系统。
注:探测存活主机和端口平时最容易想到的工具是
nmap,但这个工具太大,直接安装存在风险,端口转发受限于网络环境
查看用户&机器&会话相关信息
Linux 环境下的查看方法:
-
用户相关信息:
- 用户列表:使用
cat /etc/passwd命令可以查看系统上的用户列表。 - 用户权限和组信息:使用
id <用户名>命令可以查看特定用户的权限和所属组。
- 用户列表:使用
-
机器相关信息:
- 硬件信息:使用
lshw或sudo lshw命令可以查看机器的硬件信息。 - 系统配置信息:使用
lsb_release -a命令可以查看操作系统版本和发行版信息。
- 硬件信息:使用
-
会话相关信息:
- 当前登录用户:使用
who或w命令可以查看当前登录的用户信息。 - 当前运行的进程:使用
top或htop命令可以查看当前运行的进程和资源利用情况。
- 当前登录用户:使用
Windows 环境下的查看方法:
-
用户相关信息:
- 用户列表:在命令提示符或 PowerShell 中,使用
net user命令可以列出系统上的用户列表。 - 用户权限和组信息:在命令提示符或 PowerShell 中,使用
whoami /all命令可以查看当前登录用户的权限和所属组。
- 用户列表:在命令提示符或 PowerShell 中,使用
-
机器相关信息:
- 硬件信息:使用
systeminfo命令可以查看机器的硬件信息。 - 系统配置信息:使用
systeminfo命令可以查看操作系统版本和其他系统配置信息。
- 硬件信息:使用
-
会话相关信息:
- 当前登录用户:在命令提示符或 PowerShell 中,使用
query user命令可以列出当前登录用户和会话信息。 - 当前运行的进程:在任务管理器中,可以查看当前运行的进程和资源利用情况。
- 当前登录用户:在命令提示符或 PowerShell 中,使用
macOS 环境下的查看方法:
-
用户相关信息:
- 用户列表:使用
dscl . -list /Users命令可以列出系统上的用户列表。 - 用户权限和组信息:使用
id <用户名>命令可以查看特定用户的权限和所属组。
- 用户列表:使用
-
机器相关信息:
- 硬件信息:使用
system_profiler SPHardwareDataType命令可以查看机器的硬件信息。 - 系统配置信息:使用
sw_vers命令可以查看操作系统版本和其他信息。
- 硬件信息:使用
-
会话相关信息:
- 当前登录用户:使用
who命令可以查看当前登录的用户信息。 - 当前运行的进程:使用 Activity Monitor 应用程序可以查看当前运行的进程和资源利用情况。
- 当前登录用户:使用
典型的内网渗透流程的概述:
-
信息收集:首先,收集目标内网的信息,包括子网结构、域名信息、IP地址范围、开放的端口和服务等。这包括通过主动扫描和渗透测试工具收集信息,以及利用公开的信息源进行信息搜集。
-
漏洞扫描:在收集到足够的信息后,使用漏洞扫描工具扫描目标主机和服务,寻找存在的安全漏洞,如弱口令、漏洞软件或配置错误。
-
入侵和身份提升:一旦发现漏洞,攻击者可以尝试入侵目标主机或服务,并获取更高权限。这可以通过利用漏洞、利用弱口令、社交工程等方法来实现。一旦获得初始访问权限,攻击者可以使用提权工具或漏洞来提升自己的权限。
-
横向移动:一旦攻击者获得了内网中的一台主机的访问权限,他们可能会通过探测其他主机或设备,尝试在内网中横向移动。这可以通过利用弱密码、共享资源、漏洞利用等手段来实现,以获得对更多主机的访问权限。
-
信息收集与利用:获得足够的内网访问权限后,攻击者可以继续收集目标内网的更敏感信息,如数据库、用户凭证、敏感文档等。这些信息可能会被用于后续的攻击或其他非法活动。
-
持久性访问:为了长期访问目标内网,攻击者通常部署后门、定时任务等持久性手段,以保持对目标的访问权限,即使初始访问点被发现或修复。
相关文章:
笔记:内网渗透流程之信息收集
信息收集 首先,收集目标内网的信息,包括子网结构、域名信息、IP地址范围、开放的端口和服务等。这包括通过主动扫描和渗透测试工具收集信息,以及利用公开的信息源进行信息搜集。 本机信息收集 查看系统配置信息 查看系统详细信息…...
【2023.11.23】JDBC基本连接语法学习➹
1.导入jar包依赖:mysql-connector-java-8.0.27.jar 2.连接数据库! 3.无法解析类->导入java.sql.*,(将项目方言改为Mysql) JDBC,启动!! public class Main {public static voi…...
ubuntu 安装python3.13
列出 /usr/bin/ 目录下所有以 python 开头的文件和目录 ls /usr/bin/python* 添加Python软件源。您可以通过以下命令将Python的软件源添加到您的系统中 sudo add-apt-repository ppa:deadsnakes/ppa 然后运行以下命令以更新软件包列表: sudo apt-get update 安…...
OpenCV数据类型及CV_16UC1深度图ros订阅
最近用到深度图,对其数据类型及显示有些迷惑,记笔记于此: 目录 一、cv::Mat 的数据类型及转换方式1. cv::Mat 数据类型2. cv::Mat 数据类型互转2.1 OpenCV数据类型转换的函数2.2 可视化深度图像(CV_16UC1)二、cv::Mat 与 sensor_msgs::msg::Image 互转(基于cv_bridge)1.…...
华清远见嵌入式学习——网络编程——小项目
项目要求: 代码实现: 服务器端: #include <myhead.h>//定义协议包 struct proto {char type;char name[20];char text[128]; };int main(int argc, const char *argv[]) {//判断从终端输入的字符串的个数if(argc ! 3){printf("…...
分库分表、分布式数据库、MPP
分库分表、分布式数据库、MPP的区别吗? 一、MySQL分库分表和MySQL分布式集群在性能方面各有优劣,具体取决于应用场景和需求。 MySQL分库分表: 在分库分表的场景下,可以将负载分散到多个数据库实例上,从而提高整体性能…...
浅学指针(2)数组函数传值调用
系列文章目录 文章目录 系列文章目录前言1. 指针的使⽤和传址调⽤结论:实参传递给形参的时候,形参会单独创建⼀份临时空间来接收实参,对形参的修改不影响实 参。那么这个时候,就要搬出指针大哥,在main函数中将a和b的地…...
C++之unordered_map/set的使用
前面我们已经学习了STL中底层为红黑树结构的一系列关联式容器——set/multiset 和 map/multimap(C98). unordered系列关联式容器 在C98中, STL提供了底层为红黑树结构的一系列关联式容器, 在查询时效率可达到log2N,即最差情况下需要比较红黑树的高度次, 当树中的节点非常多时,…...
docker打包chatpdf(自写)
docker打包上传 docker build -t kitelff/chatpdf:v0.1 .##修改镜像名字 docker tag c2c1a0eb4e08 kitelff/chatpdf:v0.1## push docker push kitelff/chatpdf:v0.1上传文件,测试效果...
shell基础
一.Shell脚本编程概述 1.基本概念 将要执行的命令按顺序保存到一个文本文件; 给该文件可执行权限; 可结合各种Shell控制语句以完成更复杂的操作。 2.作用 Linux系统中的Shell是一个特殊的应用程序,它介于操作系统内核与用户之间&#x…...
力扣1038. 从二叉搜索树到更大和树(java,树的中序遍历解法)
Problem: 1038. 从二叉搜索树到更大和树 文章目录 题目描述思路解题方法复杂度Code 题目描述 给定一个二叉搜索树 root (BST),请将它的每个节点的值替换成树中大于或者等于该节点值的所有节点值之和。 提醒一下, 二叉搜索树 满足下列约束条件ÿ…...
使用正则表达式来判断一个字符串只是否包含数字
使用正则表达式来判断一个字符串只是否包含数字 1、第一种 import java.util.regex.Pattern;public class Main {public static void main(String[] args) {String inputString "12345";if (containsOnlyDigits(inputString)) {System.out.println("字符串只…...
C#Wpf关于日志的相关功能扩展
目录 一、日志Sink(接收器) 二、Trace追踪实现日志 三、日志滚动 一、日志Sink(接收器) 安装NuGet包:Serilog Sink有很多种,这里介绍两种: Console接收器(安装Serilog.Sinks.Console); File接收器(安装…...
亚马逊云科技AI创新应用下的托管在AWS上的数据可视化工具—— Amazon QuickSight
目录 Amazon QuickSight简介 Amazon QuickSight的独特之处 Amazon QuickSight注册 Amazon QuickSight使用 Redshift和Amazon QuickSightt平台构建数据可视化应用程序 构建数据仓库 数据可视化 Amazon QuickSight简介 亚马逊QuickSight是一项可用于交付的云级商业智能 (BI…...
MySQL安全性:用户认证、防范SQL注入和SSL/TLS配置详解
MySQL作为广泛使用的关系型数据库管理系统,安全性至关重要。在本篇技术博客中,我们将深入探讨MySQL的用户认证方式、防范SQL注入攻击的方法以及SSL/TLS加密的配置。 1. MySQL用户认证方式 MySQL支持多种用户认证方式,其中两种常见方式是cac…...
EMG肌肉信号处理合集 (一)
本文归纳了常见的肌肉信号预处理流程,方便EMG信号的后续分析。使用pyemgpipeline库 来进行信号的处理。文中使用了 UC Irvine 数据库的下肢数据。 目录 1 使用wrappers 定义数据类,来进行后续的操作 2 肌电信号DC偏置去除 3 带通滤波器处理 4 对肌电…...
学自动化测试?我劝你还是算了吧。。。
本人7年测试经验,在学测试之前对电脑的认知也就只限于上个网,玩个办公软件。这里不能跑题,我为啥说:自学软件测试,一般人我还是劝你算了吧?因为我就是那个一般人! 软件测试基础真的很简单&…...
第一百七十八回 介绍一个三方包组件:SlideSwitch
文章目录 1. 概念介绍2. 使用方法3. 代码与效果3.1 示例代码3.2 运行效果 4. 内容总结 我们在上一章回中介绍了"如何创建垂直方向的Switch"相关的内容,本章回中将 介绍SlideSwitch组件.闲话休提,让我们一起Talk Flutter吧。 1. 概念介绍 我们…...
Windows任务管理器内存性能界面各个参数含义
任务管理器的内存性能界面提供了一些关键参数,这些参数可以帮助你了解系统中内存的使用情况。以下是一些常见的参数及其含义: 已提交(Committed): 表示已分配的物理内存和虚拟内存的总和。已提交的内存包括当前正在使…...
深度学习人脸表情识别算法 - opencv python 机器视觉 计算机竞赛
文章目录 0 前言1 技术介绍1.1 技术概括1.2 目前表情识别实现技术 2 实现效果3 深度学习表情识别实现过程3.1 网络架构3.2 数据3.3 实现流程3.4 部分实现代码 4 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习人脸表情识别系…...
应用升级/灾备测试时使用guarantee 闪回点迅速回退
1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间, 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点,不需要开启数据库闪回。…...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...
NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
JVM 内存结构 详解
内存结构 运行时数据区: Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器: 线程私有,程序控制流的指示器,分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 每个线程都有一个程序计数…...
PAN/FPN
import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...
【从零学习JVM|第三篇】类的生命周期(高频面试题)
前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 …...
Caliper 配置文件解析:fisco-bcos.json
config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
