前言

前不久的一次线下比赛,自己拿到了webshell权限,但是死活上不去蚁剑,没办法,只能手动执行命令,这时才发现自己对windows的常用命令和敏感目录都不是很了解,真是折磨。这里就快速总结,好记性不如烂笔头。
win命令网上总结的都不是很全,建议直接看官网:https://learn.microsoft.com/zh-cn/windows-server/administration/windows-commands/windows-commands

windows命令比较单一,还有很多linux命令的功能,win根本不支持,怪不得ctf里的命令执行题目默认是linux环境。

windows敏感文件

常见 Windows 环境变量

%SystemDrive%​ 系统驱动器(Windows 安装的驱动器)C:
%WINDIR%或%SYSTEMROOT%​ Windows 系统目录 C:\Windows\

%PROGRAMFILES% 64位程序安装目录C:\Program Files
%PROGRAMFILES(X86)% 32位程序安装目录C:\Program Files (x86)

%ALLUSERSPROFILE%​ 所有用户的配置文件目录C:\ProgramData
%PUBLIC% 公共用户文件夹C:\Users\Public
%USERPROFILE% ​当前用户的配置文件目录C:\Users[用户名]
%APPDATA% 当前用户的应用程序数据目录,C:\Users[用户名]\AppData\Roaming
%LOCALAPPDATA% 当前用户的本地应用程序数据,C:\Users[用户名]\AppData\Local
%TEMP%或 %TMP% 当前用户的临时文件夹C:\Users[用户名]\AppData\Local\Temp

系统根目录下的敏感文件

C:\Windows\system.ini
C:\windows\system32\drivers\etc\hosts //DNS解析地址
C:\windows\System32\drivers\etc\networks //网络设置
C:\Windows\system32\config\SAM //用户名和密码HASH
C:\Windows\prefetch //存储预读取文件

第三方配置文件

C:\Windows\System32\inetsrv\MetaBase.xml //IIS配置文件
C:\Program Files\mysql\my.ini //Mysql配置
C:\Program Files\mysql\data\mysql\user.MYD //Mysql root
C:\Windows\php.ini //php配置信息
C:\Windows\my.ini //Mysql配置信息

启动项目录

启动文件夹(Startup Folder)是一个实际的文件夹,放入其中的程序(如 .exe 文件、.bat 文件、.vbs 文件等)将在 Windows 启动时自动运行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# Windows Server 2003 的启动项路径:
C:\Documents and Settings\Administrator\Start Menu\Programs\Startup
C:\Documents and Settings\All Users\Start Menu\Programs\Startup

# Windows Server 2008 的启动项路径:
C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup



#适用于 Windows 9x
%SystemDrive%\wmiOWS\Start Menu\Programs\Startup

#适用于 Windows NT 4.0、3.51、3.50
%SystemDrive%\WINNT\Profiles\All Users\Start Menu\Programs\Startup

windows 命令

获取使用提升

win cmd下 命令加/?,即可获取提示

1
2
命令 -help    #第1种形式的使用帮助
命令 /? #第2种形式的使用帮助

输出命令

1
2
3
4
C:\Users\DELL>echo 1123
1123
C:\Users\DELL>echo "1123"
"1123"

管理目录

cd命令

1
2
3
4
5
6
cd             #显示当前目录相当于linux的pwd
cd \ #跳转到硬盘的根目录
cd C:\WINDOWS #跳转到当前硬盘的其他文件
d: #切换到d盘
cd /d e:\software #跳转到其他硬盘的其他文件夹,注意此处必须加/d参数。否则无法跳转。
cd.. #跳转到上一层目录

dir命令

1
2
3
4
5
6
7
8
9
dir           #默认情况下,dir 会显示文件名、大小、日期和时间等信息。
dir /b #只列出文件名,不包含详细信息
dir /a #显示隐藏文件
dir /q #显示文件和文件夹的 所有者 信息
dir *.txt #只显示 .txt 文件
dir /s #/s(递归查找子目录)
dir C:\*.log /s /b #递归查找c盘下以.log结尾的文件

tree #查看目录的树形结构

目录和文件操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
mkdir 123   #创建文件夹
rmdir 123
#注意:rmdir删除的目录dir必须是空目录,否则删除不掉dir这个目录。
echo. > 1.txt #创建空文件
type nul >test.txt
echo hello >c:\1.txt #1.txt的文件内容先被清空,然后写入hello。
echo hello >>c:\1.txt # 在1.txt文件末尾加上hello
move C:\temp\test.txt D:\backup\

copy C:\temp\test.txt D:\backup\test_backup.txt
copy file1 + file2 + file3 merged.bin #多文件合并

del \data\*.xls
erase test.txt #del的别名

ren 原文件名字 新的文件名字 #修改文件名

文件读取

1
2
type file.txt
more file.txt

文本查询

1
2
3
4
findstr "flag" 1.log    #查找文件中包含字符串的行
findstr /s /n "flag" * #/s:在当前目录和所有子目录中搜索。/n:打印行号
findstr /s /m "flag" * #/m:如果文件含有匹配项,只打印其文件名
findstr /s /n "flag" C:\*.* #递归搜索c盘

文件属性控制

attrib 显示和修改的属性是文件/目录的“文件系统属性”,不是权限属性。这些属性对所有用户都一样,不是针对某个用户的,只要用户拥有对文件的“写入权限”,其就可以使用 attrib

Hidden (H):是否在资源管理器中隐藏
System (S):是否作为系统文件,受保护
Read-only (R):是否允许写入
Archive (A):文件被修改过,需要备份
Not Indexed (I):搜索服务不用索引这个文件

1
2
3
4
attrib   #查看当前文件夹下所有文件的属性
attrib filename.txt #查看属性
attrib [+属性 | -属性] [文件名] [/s [/d]]
attrib -s -h -r /s /d *.* #递归子目录 ,/s → 处理子目录,/d → 处理目录

快捷键

win系统常见快捷键

1
2
3
4
5
6
7
8
9
10
11
12
Win + D	            显示桌面
Win + E 打开文件资源管理器
Win + L 锁定电脑
Win + M 最小化所有窗口
Ctrl + Shift + Esc 打开任务管理器
ctrl+F 在一个文本或者网页里面查找
ctrl+tab 在浏览器中快速切换窗口

Win + PrtSc 自动截图全屏并保存到E:\user\Pictures\Screenshots目录
PrtSc 截图到剪贴板

Win + Tab 任务视图,可以开虚拟桌面

Win + R 快捷键

cmd 命令窗口
msconfig 系统配置工具,用于管理启动项、服务等
regedit 注册表编辑器,用于修改系统注册表
appwiz.cpl 程序和功能界面(用于卸载程序)
devmgmt.msc 设备管理器
compmgmt.msc 计算机管理
services.msc Windows 服务管理器
eventvwr 事件查看器(查看系统日志)
secpol.msc 本地安全策略管理工具。
fsmgmt.msc 共享文件夹管理器。
diskmgmt.msc 磁盘管理工具。
gpedit.msc 本地组策略编辑器(仅在专业版及更高版本的 Windows 中可用)。
lusrmgr.msc 本地用户和组管理工具。
mstsc 远程桌面连接(Remote Desktop)。
taskschd.msc 任务计划程序。
perfmon.msc 性能监视器。