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

渗透测试笔记—window基础

声明:

学习视频来自B站up主 【泷羽sec】有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!

内容有误的地方欢迎各位大佬及时指正修改,虚心求教,共同进步!

有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec]

https://space.bilibili.com/350329294

Windows 操作系统简介

Windows 是由微软公司开发的一系列操作系统,广泛应用于个人计算机、工作站、服务器、平板电脑和嵌入式设备。自 1985 年首次发布以来,Windows 系列操作系统已经经历了多个版本的演变,成为当今最流行的桌面操作系统之一。

1. 历史背景

  • Windows 1.0(1985):Windows 的第一个版本,提供基本的图形用户界面 (GUI) 以提高 MS-DOS 的可用性。
  • Windows 3.0(1990):有效提升了 Windows 的用户界面和功能,使得 Windows 成为一个主流的操作系统。
  • Windows 95(1995):引入了开始菜单、任务栏等创新界面,标志着 Windows 平台的重大飞跃。
  • Windows XP(2001):具有较为稳定的性能和用户友好的界面,广受欢迎。
  • Windows Vista(2007):在安全性和用户界面方面进行了重大改进,但其性能和兼容性问题受到批评。
  • Windows 7(2009):改进了 Vista 的问题,提供了更好的用户体验和性能。
  • Windows 8(2012):引入了平板模式和新的开始屏幕界面,虽然受到设计上的争议。
  • Windows 10(2015):融合了传统桌面和新界面,支持多个设备的统一操作。
  • Windows 11(2021):引入了视觉上的重大改进,如新的开始菜单、任务栏设计以及对游戏和多任务处理的增强支持。

2. 主要特性

  • 图形用户界面 (GUI):Windows 提供直观的图形界面,使用户更易于进行操作。

  • 多任务处理:允许用户同时运行多个程序,并在它们之间切换。

  • 兼容性:支持大量的硬件和软件,使用户能够使用众多应用程序。

  • 安全功能

    • 防火墙功能,帮助抵御网络攻击。
    • 用户账户控制 (UAC),限制应用的操作权限,增强安全性。
    • Windows Defender 提供实时的病毒和恶意软件保护。
  • 云服务:与 Microsoft Azure 和 OneDrive 等服务紧密集成,提供数据备份和文件同步功能。

  • 系统更新:通过 Windows Update 方便用户更新操作系统和安全补丁。

3. 版本分类

Windows 操作系统可以按用户类型和应用场景进行分类:

  • 个人用户版本

    • Windows Home、Windows Pro、Windows Education 等,针对家庭和个人用户,提供不同级别的功能。
  • 企业版本

    • Windows Enterprise、Windows Pro for Workstations 等,包含企业所需的安全性和管理功能。
  • 服务器版本

    • Windows Server 系列,专为服务器环境设计,提供高性能和管理功能。

4. 应用场景

  • 个人计算机: 在家庭和办公室环境中广泛使用,适用于办公、娱乐、上网和游戏等多种用途。
  • 企业环境: 企业使用 Windows 进行集中管理、文档处理、财务应用和数据分析等。
  • 服务器与虚拟化: Windows Server 被广泛应用于网络服务、虚拟化、数据库管理等领域。

5. 市场地位

Windows 不仅是全球最广泛使用的桌面操作系统之一,还是许多企业基础设施的重要组成部分。在全球 PC 操作系统市场中,Windows 持续占据着显著的市场份额。

Linux 和 Windows 操作系统在文件结构和路径管理的比较

1. 文件系统

  • Linux

    • fhs 目录结构:Linux 使用 Filesystem Hierarchy Standard (FHS) 目录结构,设备和文件系统的挂载都是以目录形式展示,即所有的设备都是文件的一部分。
    • 示例:在 Linux 中,所有的设备(如 USB、硬盘等)都可以通过 /mnt 或 /media 目录挂载。
  • Windows

    • 驱动器字母:Windows 使用驱动器字母(例如 C:、D: 等)来标识不同的存储设备。系统通过驱动器字母启动,不同的存储分区通过字母分配。
    • 示例:在 Windows 中,文件路径如 C:\Users\username\Documents 表示在 C: 驱动器中的路径。

2. 路径格式

  • Linux

    • 路径格式:路径以斜杠 / 开始,遵循区分大小写的规则,目录结构在视觉上分为大写和小写(左斜线标识)。
    • 示例:路径示例为 /home/user/docs
  • Windows

    • 路径格式:路径以分隔符 \ 开始,不区分大小写(右斜线标识)。Windows 用于区别不同的驱动器和目录。
    • 示例:路径示例为 C:\Program Files\MyApp

3. 系统配置

  • Linux

    • 配置文件:大多数系统配置通过文本文件进行管理,这些文件通常位于 /etc 目录下。用户可以使用文本编辑器(如 nanovim)直接修改这些配置文件。
      • 示例:网络配置文件(如 interfaces 文件)、服务配置(如 sshd_config)等都是以文本文件方式存在,用户可以方便地进行编辑和版本控制。
    • 包管理:Linux 的软件安装和管理通常通过包管理器(如 aptyumpacman)进行,用户可以通过命令行快速安装、升级和删除软件。
    • 终端操作:Linux 提供强大的命令行终端,许多操作和配置更倾向于命令行操作,适合技术用户。
  • Windows

    • 图形用户界面(GUI):Windows 系统提供广泛的图形界面,用户通过“控制面板”或“设置”进行许多系统配置,无需直接编辑文件。
      • 示例:网络设置、用户管理、程序安装等大多通过图形界面来完成,普通用户更易上手。
    • 注册表配置:许多系统和应用的配置存储在 Windows 注册表中(Registry),这是一种层次化的数据库,用户需要小心操作,避免手动错误。
      • 示例:像 regedit 命令可以用来打开注册表编辑器,用户可以查看或修改配置。
    • 软件安装:Windows 通常使用安装向导进行软件安装,支持 .exe.msi 等格式的安装包,安装过程相对简便。

Windows的shell接口

1. Windows 命令提示符 (Command Prompt)

  • 描述:命令提示符是 Windows 中的传统命令行界面,允许用户通过输入命令与系统交互。
  • 特点
    • 基于字符的界面,支持多种内置命令进行文件和系统管理。
    • 适合执行简单的命令和批处理操作。
  • 访问方式:通过运行 cmd 或在搜索中输入 “cmd” 打开。

2. Windows PowerShell

  • 描述:PowerShell 是一种先进的命令行外壳和脚本语言,旨在进行系统管理和自动化任务。
  • 特点
    • 支持对象导向编程,能够处理复杂任务。
    • 允许访问 .NET Framework 和执行高级脚本。
    • 拥有丰富的模块和命令集合,适合自动化系统管理。
  • 访问方式:通过运行 PowerShell 或在搜索中输入 “PowerShell” 打开。

3. Windows Terminal

  • 描述:Windows Terminal 是一个现代化的终端应用,集成了 PowerShell、命令提示符和 WSL(Windows Subsystem for Linux)等多个环境。
  • 特点
    • 允许多标签页操作,管理多个 shell 会话。
    • 提供丰富的自定义选项,包括主题和配色。
    • 对 Unicode 和文本渲染的支持更好。
  • 访问方式:在 Microsoft Store 安装,或通过搜索 “Windows Terminal” 打开。

4. Windows Subsystem for Linux (WSL)

  • 描述:WSL 允许用户在 Windows 上运行完整的 Linux 发行版。
  • 特点
    • 支持多种 Linux 发行版(如 Ubuntu、Debian)。
    • 允许直接使用 Linux 命令行工具,与 Windows 文件系统互操作。
    • 适合开发和测试使用 Linux 环境的应用程序。
  • 访问方式:通过安装所需的 Linux 发行版,使用 wsl 命令打开。

5. WMIC (Windows Management Instrumentation Command-Line)

  • 描述:WMIC 是一种命令行工具,允许用户通过 Windows Management Instrumentation (WMI) 与系统进行交互,获取和修改系统信息。
  • 特点
    • 提供丰富的系统管理功能,包括查询硬件和软件配置、管理系统服务、网络设置等。
    • 支持复杂的查询和自动化脚本。
    • 简化了访问 WMI 的复杂性,使其更易于从命令行运行。
  • 访问方式:在命令提示符中输入 wmic 进入 WMIC 命令行环境。

6. 图形用户界面 (GUI)

  • 描述:Windows 的桌面环境是操作系统的核心部分,用户通过可视化界面与系统进行交互。
  • 特点
    • 提供用户友好的界面,允许通过点击图标、菜单和窗口进行操作。
    • 主要组件包括“控制面板”、“设置”、“文件资源管理器”等。
    • 适合不熟悉命令行操作的普通用户,提供直观的操作体验。
  • 访问方式:通过点击 Windows 菜单或桌面的图标访问。

总结

在 Windows 操作系统中,用户有多种方式与系统进行交互:

  1. 命令提示符(Command Prompt):适合基础命令行操作。
  2. Windows PowerShell:更强大,适合复杂管理和自动化任务。
  3. Windows Terminal:现代终端,支持多种 shell 的集成。
  4. Windows Subsystem for Linux(WSL):在 Windows 上运行 Linux 环境。
  5. WMIC:用于管理和查询系统信息的命令行工具。
  6. 图形用户界面(GUI):提供友好的可视化操作体验,适合大多数用户。

通过选择不同的接口,用户可以根据自己的需求和技术水平灵活地与 Windows 操作系统进行交互。

CMD常用命令总结

常用 CMD 命令

命令简要描述
assoc显示或修改文件扩展名与文件类型的关联。
attrib显示或更改文件的属性(如只读、隐藏、系统文件等)。
cd更改当前目录。
chkdsk检查磁盘并显示状态报告。
cls清除命令提示符窗口中的内容。
copy复制文件或目录到一个位置。
del删除一个或多个文件。
dir列出指定目录中的文件和子目录。
echo显示消息或开启/关闭命令回显。
exit关闭命令提示符窗口。
fc比较两个文件并显示它们之间的不同。
find在文件中搜索指定文本字符串。
format格式化磁盘以进行使用。
help显示命令的简单帮助信息。
ipconfig显示当前网络连接的 IP 地址和其他网络信息。
mkdir创建一个新目录。
move移动文件或目录到新位置。
ping检查与另一个计算机的网络连接。
rd删除目录。
ren重命名文件或目录。
rmdir删除空目录。
set显示、设置或删除 Windows 环境变量。
shutdown关闭或重启计算机。
tasklist列出当前运行的所有进程。
taskkill结束或杀死一个或多个正在运行的进程。
type显示文本文件的内容。
xcopy复制文件和目录,包括子目录,支持文件属性的保留。
robocopy增强的复制命令,支持镜像文件和文件夹,具备更强大的功能和选项。
tree以树状图的格式显示目录结构。
rename重命名文件或目录(与 ren 相同)。
copy con创建新文件并从控制台输入内容。
sfc系统文件检查器,扫描并修复系统文件。
defrag磁盘碎片整理,优化磁盘性能。
timeout暂停执行指定时间。
start在新窗口中启动一个程序或打开文件。
tree以树状图的格式显示目录结构。
arp显示或修改 TCP/IP 地址解析协议缓存。
nbtstat用于测试和修复 NetBIOS 名称解析问题。
nslookup查询 DNS 记录,确认域名解析。
whoami显示当前用户的详细信息,包括用户名和域名。
ver显示当前 Windows 操作系统的版本信息。
systeminfo显示关于计算机的详细配置信息。
diskpart用于分区管理和磁盘配置。
fsutil提供文件系统配置和管理的命令。
net user管理计算机中的用户账户。

其他常用命令及其功能

  • 系统管理命令

    • wmic:Windows Management Instrumentation Command-line,获取系统信息和管理设置。
    • systeminfo:显示计算机的配置和操作系统信息。
  • 网络命令

    • netstat:显示网络连接、路由表和网络接口信息。
    • tracert:跟踪数据包到目标计算机的路径。
    • route:显示和修改网络路由表。
  • 磁盘管理命令

    • diskpart:用于分区管理和磁盘配置。
    • fsutil:提供文件系统配置和管理的命令。
  • 用户管理命令

    • net user:管理计算机中的用户账户。
    • net localgroup:管理本地用户组。

Windows系统的标准目录

1. 根目录(Root Directory)

  • C:\: 磁盘的根目录,通常是 Windows 系统所在的主分区(例如 C 盘)。

2. 常见的标准目录

以下是 Windows 系统中一些预定义的标准目录及其功能:

目录描述
C:\Windows\Windows 操作系统的安装目录,包含系统核心文件和库。
C:\Program Files\默认安装 32 位应用程序的目录。对于 64 位系统,还会有 C:\Program Files (x86)\ 目录用于安装 32 位应用程序。
C:\Users\存放所有用户的个人文件和设置的目录。每个用户会有自己的子目录,如 C:\Users\Username\
C:\Documents and Settings\在较早版本的 Windows (如 Windows XP) 中,存放用户配置和数据的目录,Windows Vista 及以后的版本使用 C:\Users\
C:\ProgramData\存放所有用户共享的数据和应用程序配置的数据。某些应用程序可能会在这里存放通用设置和数据。
C:\System32\存放 32 位和 64 位 Windows 系统文件,以及 DLLs、驱动程序和系统工具等。
C:\Temp\用于存放临时文件的目录,某些程序在运行时会创建和使用此目录。
C:\Recycle Bin\回收站的存放位置,用户删除的文件会被放入此目录(在文件资源管理器中显示为“回收站”)。

3. 用户目录

每个用户的目录(如 C:\Users\Username\)通常包含几个默认的子目录,用于组织个人文件:

目录描述
Documents存放用户文档的默认目录。
Downloads存放下载文件的默认目录。
Desktop存放用户桌面文件和快捷方式的目录。
Pictures存放用户图片和图像文件的目录。
Music存放用户音乐文件和音频的目录。
Videos存放用户视频文件的目录。
AppData存放应用程序数据的目录。此目录通常是隐藏的,分为三个子目录:
Local: 用于存放特定于本地计算机的应用数据。
Roaming: 用于存放可在不同计算机之间同步的应用数据。
LocalLow: 存放较低权限的应用数据。

4. 系统目录

  • C:\Program Files\Common Files\: 存放多个应用共享的组件和库的目录。
  • C:\Windows\System32\: 存放系统级别的 DLL 文件、可执行文件和系统管理工具。

环境变量简介及基本操作

1. 环境变量的作用

  • 配置系统和应用行为:环境变量可以用来指定软件的运行参数,例如 Java 的 JAVA_HOME 环境变量。
  • 路径配置PATH 环境变量定义了操作系统查找可执行文件的路径,允许用户在命令行中输入命令而不需要指定其完整路径。
  • 用户信息:保存用户的临时文件目录、主目录以及其他个性化信息。
  • 控制程序行为:许多应用程序会依据环境变量的值来决定其行为或优化配置。

2. 常见的环境变量

以下是一些常用的 Windows 环境变量及其描述:

变量名描述
PATH包含程序可执行文件所在目录的列表,用于查找可执行文件。
USERPROFILE当前用户的主目录,通常为 C:\Users\用户名
TEMP存放临时文件的目录路径,通常指向 C:\Users\用户名\AppData\Local\Temp
SystemRootWindows 操作系统的安装目录,通常为 C:\Windows
ProgramFiles存放程序文件的默认目录,通常为 C:\Program Files
USERNAME当前登录用户的用户名。
HOMEPATH当前用户的主目录的相对路径。
COMSPEC默认命令解释器的路径,通常为 C:\Windows\System32\cmd.exe

3. 查看和设置环境变量

3.1 查看环境变量

要查看当前的环境变量,可以通过命令行或图形用户界面来进行。

  • 使用命令行

    • 打开命令提示符(cmd),并输入命令:
       

      bash复制

      set
    • 这会列出所有当前环境变量及其值。
  • 使用图形用户界面

    1. 右键点击“此电脑”或“我的电脑”,选择“属性”。
    2. 在左侧,选择“高级系统设置”。
    3. 点击“环境变量”按钮,查看用户和系统的环境变量。
3.2 设置环境变量
  • 使用命令行

    • 在命令提示符下,可以使用 set 命令来设置临时环境变量(仅在当前会话有效):
      set VARIABLE_NAME=value 
    • 如果希望设置永久环境变量,则需要使用 setx 命令:
      setx VARIABLE_NAME "value" 
    • 例如,设置 Java 的 JAVA_HOME 变量:
      setx JAVA_HOME "C:\Program Files\Java\jdk-XX" 
  • 使用图形用户界面

    1. 按照上面的步骤打开环境变量窗口。
    2. 在用户变量或系统变量部分,点击“新建”以添加新变量,或选择已有的变量并点击“编辑”进行修改。
    3. 输入变量名和变量值,点击“确定”。

4. 环境变量注意事项

  • 变量名区分大小写:虽然 Windows 的环境变量不严格区分大小写,但在某些情况下,父子系统(例如 WSL)中可能会受到影响。
  • 路径分隔符:在 PATH 变量中,路径之间用分号 (;) 分隔。
  • 重启程序:更改了环境变量后,通常需要重启相关程序才能使更改生效。

http://www.kler.cn/a/412355.html

相关文章:

  • 【八股文】小米
  • 2024APMCM亚太杯数学建模C题【宠物行业】原创论文分享
  • solr 远程命令执行 (CVE-2019-17558)
  • Vue-TreeSelect组件最下级隐藏No sub-options
  • IDEA2024创建一个spingboot项目
  • RL78/G15 Fast Prototyping Board Arduino IDE 平台开发过程
  • 蓝桥杯每日真题 - 第24天
  • 27加餐篇:gRPC框架的优势与不足之处
  • Apache Zeppelin:一个基于Web的大数据可视化分析平台
  • 前端 设置 div 标签内子多个子 div 内容,在一行展示,并且可以字段自动换行
  • Flink 实现超速监控:从 Kafka 读取卡口数据写入 MySQL
  • 浏览器开发工具
  • java——SpringBoot中常用注解及其底层原理
  • SSM之AOP与事务
  • 缓存雪崩、击穿、穿透深度解析与实战应对
  • 使用OpenCV实现视频背景减除与目标检测
  • 【QT】背景,安装和介绍
  • 【云计算网络安全】解析 Amazon 安全服务:构建纵深防御设计最佳实践
  • docker-compose文件的简介及使用
  • Git 使用技巧
  • 鸿蒙开发异步与线程
  • 使用Cmake导入OpenCV库的大坑记录
  • 如何将 GitHub 私有仓库(private)转换为公共仓库(public)
  • 反爬虫机制
  • 【大数据学习 | Spark-SQL】SparkSession对象
  • 从ETL到DataOps:WhaleStudio替代Informatica,实现信创化升级