7.1.Windows操作系统基础
7.1.1.Windows基础操作
arp -a #查看ARP缓存表
arp -d #删除ARP缓存
route print #查看主机的路由表项
dir #查看文件夹内的内容
tracert #(查看路由经过多少跳数)
java -jar ./XXX.jar #运行jar程序 可以将此命令写入bat文件内(下次直接运行)
#账户相关
net user test 123.com /add #test是用户名,123.com是密码 创建用户
net user #查看所有用户
net user test #查看指定用户信息
net user test /delete #删除用户
lusrmgr.msc #更改账户的权限,以及启用账户
win+i #打开设置
命令 1 > 文件名 #重定向,将内容1写入文件名内
msconfig #查看启动项配置
7.2.2.Windows的进阶命令
1.定位端口号的程序
#根据 netstat 命令定位出的 PID 编号,再通过 tasklist 命令进行进程定位
tasklist | findstr "PID"
![image-20240320091544627](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=https%3A%2F%2Fgitee.com%2Ffjllw%2Fmdphoto%2Fraw%2Fmaster%2Fimages%2F202403200915715.png&pos_id=img-uGbZ8mDK-1711811605220%29)
7.2.3.查看用户
Windows的账户有三种
用户类别 | 哪种环境 | 备注 |
---|---|---|
正常用户 | net user 能看到 | |
隐藏用户 | net user 看不到,但是在控制面板,lusrmgr.msc 、用户组能看到 | |
影子用户 | 只有在注册表中能看到 |
查看隐藏用户
net user #查看正常用户
net user 用户名 #区分当前用户是否是管理员,查看组成员是否是administrators,也可以查看用户的信息(包括到期时间)
net localgroup administrators #查看计算机有哪些管理员用户
$代表隐藏用户,在命令行里边也不会显示,只在这里显示
lusrmgr.msc #查看本地用户和用户组
![image-20240319165322447](https://img-blog.csdnimg.cn/img_convert/b780744342018dbabf8a223b57c6f219.png)
7.2.4.网络连接排查
注:分析的时候需要结合任务管理器来一起查看
netstat -ano #查看连接状态
netstat -anob #查看连接状态(这里的b代表的是哪个程序工作的)
0.0.0.0:135 #代表自己开了135端口,所有人都可以进行连接我
127.0.0.1:80 #自己开了80端口,但是只有我自己能连接自己,别人连接不了
![image-20240319195301664](https://img-blog.csdnimg.cn/img_convert/abe0868da88e5ee27c1f04526d78e3fa.png)
7.2.5.注册表排查
regedit #注册表表编辑器 reg ->register 注册表 edit ->editor 编辑器
1.查看有无开机自启的项(红队会把病毒文件设置为开机自启)一般会写在TEMP文件夹内
![image-20240319210010909](https://img-blog.csdnimg.cn/img_convert/d3505d4fc11b98bdac0e0719507a2eb6.png)
2.注册表镜像劫持(打开正常的文件,结果会变成木马)
7.2.5.计划任务
taskschd.msc #打开计划任务
![image-20240319224258125](https://img-blog.csdnimg.cn/img_convert/6f75e8d6a19ff7d02da5e56ec6d99b99.png)
7.2.5.查看服务
services.msc #服务管理器
7.2.5.可疑文件
%userprofile%recent #查找可疑文件
7.3.溯源
#有以下几个点
红队IP不能准确,因为互联网上可以挂代理,就算拿到IP也查不到信息,因为公网IP有共用
日志方面
7.4.账号安全—重点
#有以下几个方面,需要在策略里边配置
不使用弱密码
停用administrator、guest用户
7.5.组策略编辑器密码策略(gpedit.msc)
#!密码策略
![image-20240320000916919](https://img-blog.csdnimg.cn/img_convert/3ca6b2eca5fa7ed6c19a50db70453d97.png)
#!账户锁定策略
![image-20240320001229112](https://img-blog.csdnimg.cn/img_convert/d286d11fb767b9a8795bf9a649863bfd.png)
7.5.1.停用默认管理员用户
net user #使用前先查看管理员账户,确保除了administrator后还有其它用户
net user Administrator /active:no #停用administrator
net user Guest /active:no #停用Guest
7.6.服务的关闭
关闭137端口:禁用TCP/IP上的NetBios
![image-20240320154218527](https://img-blog.csdnimg.cn/img_convert/cdb3c20a0d98af36bdd47a2bbbe82a2d.png)
![image-20240320154521591](https://img-blog.csdnimg.cn/img_convert/bc8ea5af37509d4cdd5d1e81f3403dc5.png)
7.7.防火墙关闭端口
7.7.1.图形界面
- 直接在控制面板->网络和Internet->网路和共享中心->防火墙进行图形化界面设置,主要是入站规则
7.7.2.命令行脚本配置防火墙
- 批处理常用命令
#进入文件夹
cd XXX
#查看文件夹信息directory
dir XXX
#注释,REM为注释命令,该命令后的内容不被执行,但能回显。
REM:
#@符号
`@`符号放在命令前将关闭该命令的回显,无论此时是否echo on。
#ECHO的功能
打开、关闭回显 `echo on`/`echo off
应答命令,相当于命令对话时输入消息并回车。 `echo response | 命令`
#暂停pause
`pause`暂停执行并给出提示
#设置cmd窗口标题
title 新标题
#设置控制台前景和背景色
`0` 黑色- `1` 蓝色- `2` 绿色- `3` 湖蓝色- `4` 红色- `5` 紫色- `6` 黄色- `7` 白色- `8` 灰 色- `9` 淡蓝色- `A` 淡绿色- `B` 淡浅绿色- `C` 淡红色- `D` 淡紫色- `E` 淡黄色- `F` 亮白色 如:
color 1
- 进阶配置
#自定义变量
@echo off
set var="hello var"
echo %var%
pause
#指定输入的变量
set /p var=please input your value
echo %var%
pause
- 防火墙配置
- 输入个netsh advfirewall firewall add rule 就可以出来相应的模板 了,按照需要调整
- 出入 in out
- 允许,禁止 allow block
#开启防火墙
netsh advfirewall set allprofiles state on
#开启防火墙白名单模式,制造网络访问的可信化
netsh advfirewall set allprofiles firewallpolicy blockinbound,blockoutbound
#删除所有规则
netsh advfirewall firewall delete rule name="all"
#常规方式配置出入站规则允许(白名单模式下),dir in out
rem 启用防火墙常规端口
#配置规则名为允许某单个IP ping自己 ,开启ICMP服务(进方向,动作为允许)
netsh advfirewall firewall add rule name="允许Ping" dir=in remoteip="192.168.1.1" protocol=icmpv4 action=allow
#配置规则名为允许某单个IP 允许访问本机的8080端口
netsh advfirewall firewall add rule name="8080 HTTP" protocol=TCP dir=in remoteip="192.168.1.1" localport=8080 action=allow
#常规方式配置出入站规则禁止(黑名单模式下)
netsh advfirewall firewall add rule name="禁止TCP135" dir=in remoteip="192.168.1.1" protocol=tcp action=block
7.7.3.批处理处置技巧
-
配置允许单协议,单策略的防火墙配置
-
@echo off rem ---------------------------------------------------------------------- rem:更改颜色 color 2f echo 本程序是针对于防火墙的简化配置而存在的 echo 开启防火墙白名单模式(禁止所有策略入局) netsh advfirewall set allprofiles firewallpolicy blockinbound,blockoutbound echo 成功 echo 删除所有规则 netsh advfirewall firewall delete rule name="all" echo 若显示没有与指定标准相匹配的规则,则代表防火墙已经是空的状态 echo. rem ---------------------------------------------------------------------- rem:设置开始 :for echo 输入的协议格式为:tcp udp 不区分大小写 set /p P=请输入你需要配置的协议 echo 输入的端口号格式为数字:XXX set /p port=请输入你需要配置的端口号 echo 输入的策略方向的格式为:in out set /p d=请输入策略方向 netsh advfirewall firewall add rule name="%p%_%port%_%d%" dir=%d% protocol=%p% localport=%port% action=allow echo. call:for pause
-
被美化后的版本
-
@echo off rem --------------------------------------- rem : 设置命令行窗口颜色为浅绿文字配黑色背景 color 2f rem : 输出程序说明 echo 本程序旨在简化防火墙配置 echo 将开启防火墙白名单模式(禁止所有策略入局) rem : 设置防火墙策略为禁止所有入站和出站流量 netsh advfirewall set allprofiles firewallpolicy blockinbound,blockoutbound echo 配置成功 rem : 删除所有防火墙规则 netsh advfirewall firewall delete rule name="all" echo 若显示没有与指定标准相匹配的规则,则代表防火墙已经是空的状态 echo. rem --------------------------------------- rem : 设置开始循环处理用户输入 :input_loop echo 请输入配置信息: echo 协议格式 (tcp, udp, 不区分大小写) set /p P=请输入协议: echo 端口号格式 (数字: XXX) set /p port=请输入端口号: echo 策略方向格式 (in, out) set /p d=请输入策略方向: rem : 根据用户输入添加防火墙规则 netsh advfirewall firewall add rule name="%P%_%port%_%d%" dir=%d% protocol=%P% localport=%port% action=allow echo 防火墙规则添加成功。 rem --------------------------------------- rem : 循环提示用户继续输入或退出 echo. echo 是否继续配置新的规则?(Y/N) set /p continue=请输入 (Y/N): if /i "%continue%"=="Y" goto input_loop if /i "%continue%"=="N" goto end_script echo 无效输入,请重新输入 (Y/N)。 goto continue_prompt :continue_prompt echo. goto input_loop :end_script echo. echo 防火墙配置完成。 pause
-