笔记:内网渗透流程之信息收集
信息收集
首先,收集目标内网的信息,包括子网结构、域名信息、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 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习人脸表情识别系…...
装饰模式(Decorator Pattern)重构java邮件发奖系统实战
前言 现在我们有个如下的需求,设计一个邮件发奖的小系统, 需求 1.数据验证 → 2. 敏感信息加密 → 3. 日志记录 → 4. 实际发送邮件 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...
线程同步:确保多线程程序的安全与高效!
全文目录: 开篇语前序前言第一部分:线程同步的概念与问题1.1 线程同步的概念1.2 线程同步的问题1.3 线程同步的解决方案 第二部分:synchronized关键字的使用2.1 使用 synchronized修饰方法2.2 使用 synchronized修饰代码块 第三部分ÿ…...
LeetCode - 394. 字符串解码
题目 394. 字符串解码 - 力扣(LeetCode) 思路 使用两个栈:一个存储重复次数,一个存储字符串 遍历输入字符串: 数字处理:遇到数字时,累积计算重复次数左括号处理:保存当前状态&a…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
vue3 定时器-定义全局方法 vue+ts
1.创建ts文件 路径:src/utils/timer.ts 完整代码: import { onUnmounted } from vuetype TimerCallback (...args: any[]) > voidexport function useGlobalTimer() {const timers: Map<number, NodeJS.Timeout> new Map()// 创建定时器con…...
【论文阅读28】-CNN-BiLSTM-Attention-(2024)
本文把滑坡位移序列拆开、筛优质因子,再用 CNN-BiLSTM-Attention 来动态预测每个子序列,最后重构出总位移,预测效果超越传统模型。 文章目录 1 引言2 方法2.1 位移时间序列加性模型2.2 变分模态分解 (VMD) 具体步骤2.3.1 样本熵(S…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...
