攻防平台搭建与简易渗透工具箱编写

知识点:攻防平台搭建,虚拟机的网络模式详解,安全脚本编写

虚拟机的网络模式:

虚拟机(VM)的网络模式决定了虚拟机与宿主机以及外部网络之间的连接方式。不同的虚拟化平台(如VMware, VirtualBox, Hyper-V等)可能有不同的术语和实现方式,但通常有以下几种基本的网络模式:

1. **桥接模式(Bridged Mode)**:
   - 虚拟机在网络上表现为一个独立的设备,拥有自己的IP地址。
   - 虚拟机直接连接到物理网络,就像宿主机上的另一台独立的物理机。
   - 适合需要从网络中获得独立IP地址的场景。

2. **NAT模式(Network Address Translation, NAT)**:
   - 虚拟机共享宿主机的IP地址,通过宿主机访问外部网络。
   - 宿主机充当网关设备,为虚拟机提供网络地址转换服务。
   - 适用于内部网络隔离,外部访问控制严格的环境。

3. **仅主机模式(Host-Only Mode)**:
   - 虚拟机只能与宿主机通信,不能直接访问外部网络。
   - 适用于需要隔离虚拟机与外部网络,但允许宿主机访问的场景。

4. **内部网络模式(Internal Network Mode)**:
   - 虚拟机之间可以相互通信,但无法访问宿主机或外部网络。
   - 适用于构建隔离的虚拟网络环境,进行内部测试或模拟。

5. **混合模式(Mixed Mode)**:
   - 结合了以上几种模式的特点,允许虚拟机根据需要选择不同的网络连接方式。

6. **端口转发(Port Forwarding)**:
   - 允许将宿主机的某个端口的流量转发到虚拟机的指定端口。
   - 常用于提供虚拟机上的服务能够从外部网络访问。

7. **VPN访问(VPN Access)**:
   - 通过虚拟专用网络连接,允许虚拟机安全地连接到远程网络。

8. **无线接入点(Soft AP)**:
   - 虚拟机可以作为无线接入点,允许其他无线设备连接。

每种网络模式都有其特定的用途和配置方式,选择哪种模式取决于你的具体需求,比如安全性、隔离级别、网络访问控制等。例如,如果你需要进行网络安全测试,可能会选择桥接模式来模拟真实的网络环境;如果你需要隔离虚拟机以进行内部测试,可能会选择NAT或仅主机模式。在配置虚拟机网络时,应根据虚拟化平台的文档进行相应的设置。

简易渗透工具箱编写:
bat文件:

`.bat` 文件是 Windows 操作系统中的一种批处理脚本文件。它包含了一系列的命令,这些命令会按照顺序被 Windows 命令提示符(cmd.exe)执行。用户可以通过编写 `.bat` 脚本来自动化一些常见的任务,例如文件管理、程序启动、系统设置等。

创建一个 `.bat` 文件非常简单,你只需要使用文本编辑器(如记事本)编写命令,然后保存文件时选择 "所有文件" 类型,并以 `.bat` 作为文件扩展名即可。当双击 `.bat` 文件时,它就会执行里面的命令。

例如,一个简单的 `.bat` 文件可能看起来像这样:

@echo off
echo Hello, this is a batch script!
pause

这个脚本会关闭命令的回显(`@echo off`),然后打印 "Hello, this is a batch script!" 到屏幕上,最后暂停脚本的执行,等待用户按下任意键。

`.bat` 文件非常有用,尤其是在需要快速执行一系列命令或者自动化常规任务时。

bat脚本文件的常用命令:

1. 清理磁盘脚本

`rd` 是 Windows 命令提示符(cmd.exe)中的一个命令,它代表 "rmdir",即 "remove directory" 的缩写。这个命令用于删除一个目录(文件夹)及其所有子目录和文件。

命令的基本语法是:

rd [/s] [/q] [drive:]path

- `/s` 参数表示删除指定目录及所有子目录和文件。
- `/q` 参数表示安静模式,即删除时不要求确认。
- `drive:` 是可选的,指定要操作的驱动器。
- `path` 是要删除的目录的路径。

所以,当你看到 `rd d:\123` 这个命令时,它的含义是删除 `D:` 驱动器上的 `123` 目录及其所有子目录和文件。但是,请注意,如果 `123` 目录内有文件或子目录,并且没有使用 `/s` 参数,命令将不会执行,因为默认情况下 `rd` 不会删除非空目录。

如果 `123` 目录是空的,那么它将被删除。如果目录不为空,你将需要使用 `/s` 参数,例如 `rd /s d:\123`,来强制删除所有内容。同时,如果希望在删除过程中不出现任何提示,可以添加 `/q` 参数,如 `rd /s /q d:\123`。

@echo off
echo===========================
echo.
echo 您好,我可以帮你清理垃圾文件
echo                --by XXX
echo===========================
pauseset /p pan=请输入需要清理的盘符:
rd %pan%: /s/q >nul 2>null
echo 感谢使用,%pan%盘已清空
pause
start %pan%:

这个批处理脚本(.bat 文件)的功能是帮助用户清理指定盘符中的所有文件和目录。下面是对脚本中每条命令的解释:

1. `@echo off`:
   关闭命令的回显,即在执行命令时不显示命令本身。即屏蔽了执行过程

2. `echo===========================`:
   打印一系列等号,作为分隔线。

3. `echo.`:
   打印一个空行。

4. `echo 您好,我可以帮你清理垃圾文件`:
   打印一条消息,告知用户脚本的功能。

5. `echo                --by XXX`:
   打印作者信息,`XXX` 是作者的名字或标识。

6. `echo===========================`:
   再次打印分隔线。

7. `pause`:
   暂停脚本的执行,直到用户按下任意键。

8. `set /p pan=请输入需要清理的盘符:`:
   提示用户输入一个盘符,例如 `C:` 或 `D:`,并将用户输入的值存储在变量 `pan` 中。

9. `rd %pan%: /s/q >nul 2>null`:
   - `rd` 是 "remove directory" 的缩写,用于删除目录。
   - `%pan%:` 是用户输入的盘符。
   - `/s` 参数表示删除指定目录及其所有子目录和文件。
   - `/q` 参数表示安静模式,不提示确认。
   - `>nul` 表示将命令的标准输出重定向到空设备,即不显示输出。
   - `2>null` 表示将命令的错误输出也重定向到空设备,即不显示错误信息。

10. `echo 感谢使用,%pan%盘已清空`:
    打印感谢信息,并告知用户指定的盘符已经被清空。

11. `pause`:
    再次暂停脚本的执行。

12. `start %pan%:`:
    使用 `start` 命令打开用户指定的盘符的窗口。如果盘符已经被清空,这个命令将打开一个空的文件夹窗口。

请注意,这个脚本具有很高的风险性,因为它会删除指定盘符上的所有内容,包括系统文件和用户数据。在没有充分了解后果的情况下,不应该运行这样的脚本。此外,使用批处理脚本进行这样的操作可能违反了操作系统的安全策略

如果不想显示“请按任意键继续”,即pause后的字,可以在pause后使用>nul 2>null

2.关机小程序
@echo off
echo===========================
echo.
echo        关机小程序
echo                --by XXX
echo===========================
pauseset /p num=请输入定时关机时间(秒):
shutdown /s /t %num%

这个批处理脚本是一个简单的关机程序,允许用户设置一个定时关机的时间。下面是对脚本中每条命令的详细解释:

1. `set /p num=请输入定时关机时间(秒):`:
   提示用户输入一个数值,这个数值代表关机前的倒计时时间(单位是秒)。用户输入的值将被存储在变量 `num` 中。

2. `shutdown /s /t %num%`:
   - `shutdown` 是 Windows 系统命令,用于执行关机、重启或注销等操作。
   - `/s` 参数表示关机。
   - `/t` 参数后面跟的是要延迟的时间(秒),这里使用 `%num%` 来引用用户之前输入的秒数。

这个脚本允许用户通过输入一个时间(秒为单位)来设置 Windows 系统的自动关机。例如,如果用户输入 `3600`,那么计算机将在一个小时后自动关机。

请注意,运行此脚本前,确保你已经保存了所有工作,因为一旦执行,计算机将在指定时间后关闭,所有未保存的工作可能会丢失。此外,确保你有足够的权限来执行关机命令。

可以在终端使用 shutdown /a 来终止一切关机进程。

/s表示关机,/r表示重启,/l表示注销

3.无限重启病毒
copy xxx.bat "C:\Users\allen\AppData\Windows\Start Menu\Programs\Startup"

这个命令是用来将名为 `xxx.bat` 的批处理脚本复制到特定文件夹中的,具体来说,是复制到当前用户启动文件夹中的 "程序" -> "启动" 子文件夹。下面是命令各部分的解释:

- `copy`:这是 Windows 命令提示符中的一个命令,用于复制文件。

- `xxx.bat`:这是要复制的源文件的名称,其中 `xxx` 是你想要复制的批处理文件的实际名称。

- `"C:\Users\allen\AppData\Windos\Start Menu\Programs\Startup"`:这是目标文件夹的路径。这个路径是当前用户(在这个例子中是用户名为 `allen` 的用户)的 "启动" 文件夹的路径。当计算机启动时,这个文件夹中的程序或脚本会被自动执行。

  - `C:\Users\allen`:表示 `allen` 用户的主文件夹。
  - `Startup`:这是 "启动" 文件夹,用于存放启动时自动运行的程序或脚本的快捷方式。

这个命令的目的是将 `xxx.bat` 脚本添加到启动文件夹中,使得每次计算机启动时,该脚本会自动执行。这可以用于自动化一些任务,比如启动时运行特定的程序或脚本。

请注意,如果你想要执行这个命令,需要确保源文件 `xxx.bat` 的路径是正确的,并且你有足够的权限来复制文件到 "启动" 文件夹。

4.工具箱

echo=====================
set /p num=请输入你的选择:
if "%num%"=="1" goto 1
if "%num%"=="2" goto 2
if "%num%"=="3" goto 3
if "%num%"=="4" goto 4
echo 请从1~4中选择
pause
goto menu
:1
echo 001
pause
goto menu
:2
echo 002
pause
goto menu
:3
echo 003
pause
goto menu
:4
exit

这个批处理脚本提供了一个简单的菜单系统,允许用户通过输入数字选择不同的选项。以下是对脚本中每条命令的解释:

1. `echo ===============`:
   打印一系列等号,通常用作菜单的分隔线或标题。

2. `set /p num=请输入你的选择:`:
   提示用户输入他们的选择,并将输入的值存储在变量 `num` 中。`/set /p` 命令用于设置变量并从用户那里获取输入。

3. `if "%num%"=="1" goto 1`:
   如果用户输入的是 `1`,则跳转到标签 `:1`。

4. `if "%num%"=="2" goto 2`:
   如果用户输入的是 `2`,则跳转到标签 `:2`。

5. `if "%num%"=="3" goto 3`:
   如果用户输入的是 `3`,则跳转到标签 `:3`。

6. `if "%num%"=="4" goto 4`:
   如果用户输入的是 `4`,则跳转到标签 `:4`。

7. `echo 请从1~4中选择`:
   如果用户的输入不是 `1` 到 `4` 中的一个,打印一条消息提示用户只能选择 `1` 到 `4`。

8. `pause`:
   在每个选择后暂停脚本的执行,直到用户按下任意键。

9. `goto menu`:
   跳转回 `menu` 标签,这通常是脚本开始的地方,允许用户重新选择。

10. `:1`,`:2`,`:3`,`:4`:
    这些是标签,用于标记脚本中的不同部分。当 `goto` 命令执行时,脚本会跳转到相应的标签。

11. `echo 001`,`echo 002`,`echo 003`:
    在每个标签下,打印一个特定的消息,表示用户选择了哪个选项。

12. `exit`:
    在标签 `:4` 下,使用 `exit` 命令来退出脚本。

这个脚本是一个循环的菜单系统,用户可以多次选择不同的选项,每次选择后都会返回到菜单开始的地方,直到选择退出(选项4)。脚本中的 `pause` 命令确保用户有足够的时间阅读屏幕上的信息,并且在每次选择后给予反馈。

5.高级隐藏
attirb +h +s d:\*.* /D /S
attirb 修改文件或目录属性
+h 增加隐藏属性
+s 增加系统级别属性
/D 文件
/S 递归

`attrib` 是 Windows 命令提示符中的一个命令,用于显示或修改文件或目录的属性。以下是对 `attrib` 命令及其参数的解释:

1. `attrib +h +s d:\*.* /D /S`:
   这个命令用于修改 `D:` 盘根目录下的所有文件和文件夹的属性,包括子目录中的文件和文件夹。

2. `+h`:
   增加隐藏属性。当文件或目录设置了隐藏属性后,在文件资源管理器中默认不会显示,除非用户设置了显示隐藏文件和文件夹的选项。

3. `+s`:
   增加系统属性。系统文件通常是 Windows 系统运行所必需的文件,通常不建议用户修改或删除。

4. `d:\*.*`:
   指定操作的路径和模式。这里 `d:\` 是盘符,`*.*` 是一个模式,表示匹配 `D:` 盘根目录下的所有文件和文件夹。

5. `/D`:
   这个参数用于指定 `attrib` 命令应用于目录。但在这个命令中,`/D` 并没有实际作用,因为 `*.*` 已经匹配了所有文件和文件夹,包括目录。

6. `/S`:
   递归。这个参数告诉 `attrib` 命令要递归地应用属性更改到所有子目录中的文件和文件夹。

综合来看,`attrib +h +s d:\*.* /D /S` 命令的作用是将 `D:` 盘根目录及其所有子目录中的所有文件和文件夹设置为隐藏和系统属性。这通常用于保护重要文件不被意外访问或修改,或者用于隐藏不希望用户看到的文件和文件夹。

要创建一个批处理脚本(.bat 文件),用于消除 `D:` 盘根目录及其所有子目录中文件和文件夹的隐藏属性与上同理,你可以使用 `attrib` 命令并结合相应的参数来实现。以下是一个简单的脚本示例:

@echo off
echo 正在清除D盘所有文件和文件夹的隐藏属性...
attrib -h -s /D /S D:\*.* >nul
echo 隐藏属性已清除。
pause

下面是对这个脚本中每条命令的解释:

1. `@echo off`:
   关闭命令的回显,使得脚本执行时命令本身不会显示在屏幕上。

2. `echo 正在清除D盘所有文件和文件夹的隐藏属性...`:
   打印一条消息,告知用户脚本正在执行的操作。

3. `attrib -h -s /D /S D:\*.* >nul`:
   - `attrib`:用于修改文件或目录属性的命令。
   - `-h`:删除隐藏属性。
   - `-s`:删除系统属性。
   - `/D`:指定 `attrib` 命令应用于目录。
   - `/S`:递归地应用属性更改到所有子目录中的文件和文件夹。
   - `D:\*.*`:指定 `D:` 盘根目录下的所有文件和文件夹。
   - `>nul`:将命令的标准输出重定向到空设备,即不显示任何输出。

4. `echo 隐藏属性已清除。`:
   打印一条消息,告知用户隐藏属性已经被清除。

5. `pause`:
   暂停脚本的执行,直到用户按下任意键,这允许用户在脚本执行完成后查看结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/34464.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【C语言小例程26/100】

题目&#xff1a;有一分数序列&#xff1a;2/1&#xff0c;3/2&#xff0c;5/3&#xff0c;8/5&#xff0c;13/8&#xff0c;21/13...求出这个数列的前20项之和。 程序分析&#xff1a;请抓住分子与分母的变化规律。 程序源代码&#xff1a; #include <stdio.h>int ma…

React Suspense的原理

React Suspense组件的作用是当组件未完成加载时&#xff0c;显示 fallback 组件。那么 Suspense 是如何实现的呢&#xff1f;React 的渲染是通过 Fiber 进行的&#xff0c;Suspense 的更新机制也是要围绕 Fiber 架构进行的。Suspense 是由两部分组成&#xff0c;实际 UI 子组件…

CAN通讯时序仲裁 【AI解答】

问&#xff1a; 1.CAN协议总线和节点时序同步如何理解 答 简单理解&#xff1a;总线上的时钟变化需要和节点上的时钟变化一致 当我们谈论CAN协议总线和节点时序同步时&#xff0c;我们实际上是在谈论如何确保在一个复杂的系统中&#xff0c;多个节点之间能够正确地进行数据…

如何在Springboot中添加事务执行?(以MySQL为例)

目录 1. 添加依赖 2. 配置数据库连接 3. 启用事务管理 4. 创建实体类和存储库 5. 创建服务类并使用Transactional注解 6. 编写测试用例 7. 运行应用程序 在Springboot中开启数据库的事务的应用开发过程中非常重要的业务&#xff0c;以下是一个使用MySQL数据库&#xff0…

Spring Cloud 常用组件——Hystrix(上)

在微服务架构中&#xff0c;服务之间的依赖关系非常复杂&#xff0c;一个服务的故障可能会导致整个系统的级联失败。Hystrix 是 Netflix 开源的一个容错库&#xff0c;它通过隔离服务之间的访问点、添加延迟容忍和容错逻辑来防止系统故障的蔓延。在这篇文章中&#xff0c;我们将…

0803功放3

1.甲乙类互补堆成功放&#xff0c; 理想12v t提供静态偏置&#xff0c;消去交越失真 2.12V Po(12)2/2RL 3.电压并联负反馈 并联减小输入电阻 电压减小输出电阻 4.-Rf/Ri 这个问题是工艺问题引起的&#xff0c;最早用PNP管用的锗管&#xff0c;后面硅工艺成熟后用的就是硅管&…

毫米波移动通信系统中的波束赋形— 基于码本的波束训练

基于码本的波束训练算法该方法在收发端都配置波束矢量的码本&#xff0c;通过波束搜索的方式发现最优的波束方向为了加快波束搜索的速度&#xff0c;往往采用逐步缩小搜索范围的方式加快搜索&#xff0c;可以将搜索算法的时间复杂度从O(N)降低到O(logN)&#xff0c;其中N表示码…

Huffman算法:原理、实现与应用

Huffman算法是一种非常有效的数据压缩算法&#xff0c;它的核心思想是利用字符在源数据中的出现频率来构建一棵Huffman树&#xff0c;从而实现对字符的重新编码。编码过程中&#xff0c;频率越高的字符将获得越短的编码&#xff0c;而频率越低的字符将获得越长的编码。这样&…

信创里程碑:TapData 人大金仓数据库产品完成兼容互认证,携手推进自主创新建设

近日&#xff0c;深圳钛铂数据有限公司&#xff08;以下简称钛铂数据&#xff09;自主研发的钛铂实时数据平台&#xff08;TapData Live Data Platform&#xff0c;TapData LDP&#xff09;与北京人大金仓信息技术股份有限公司&#xff08;以下简称“人大金仓”&#xff09; Ki…

基于单片机的智能浇花系统设计与实现

摘要: 设计了一种智能湿度感应浇花系统 。 系统以单片机 AT89S52 为控制芯片&#xff0c;利用 SLHT5-1 土壤湿度传感器来检测土壤的相对湿度&#xff0c;再通过单片机进行信息处理&#xff0c;采用模糊控制方法&#xff0c;输出控制信号&#xff0c;控制继电器的动作&…

代码随想录训练营第十八天 530二叉搜索树的最小绝对差 501二叉搜索树中的众数 236二叉树的最近公共祖先

第一题&#xff1a; 原题链接&#xff1a;530. 二叉搜索树的最小绝对差 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 使用中序遍历的方式&#xff1a;左中右。 定义一个pre节点来存放当前节点的前一个节点。 在中序的时候处理递归逻辑&#xff1a; 首先先向…

端口发布与暴露

端口发布与暴露 目录 发布端口发布到临时端口发布所有端口试一试 使用 Docker CLI使用 Docker Compose 如果你一直在跟随本指南&#xff0c;你应该理解容器为应用程序的每个组件提供了隔离的进程。每个组件 - 如 React 前端、Python API 和 Postgres 数据库 - 都运行在自己的…

PingCAP 再度入选“中国独角兽企业”,数据库领域的先锋力量

6月16日&#xff0c;2024中国&#xff08;重庆&#xff09;独角兽企业大会上&#xff0c;长城战略咨询发布了《中国独角兽企业研究报告2024》。 2023年&#xff0c;中国独角兽企业共375家&#xff0c;大数据赛道共5家。 估值排序企业名称2023年估值&#xff08;亿美元&#xff…

Huggingface Trainer:Removed shared tensor while saving问题的解决

bug概述&#xff1a;【踩坑记录&#x1f4dd;】Removed shared tensor while saving. 简单来说&#xff0c;这个bug的危害是trainer.save()无法正确存储权重。这篇博文的作者也给出了两种处理方法&#xff0c;但要么要改transformers版本&#xff0c;要么要包裹Trainer类&#…

【面试题】等保(等级保护)的工作流程

等保&#xff08;等级保护&#xff09;的工作流程主要包括以下几个步骤&#xff0c;以下将详细分点介绍&#xff1a; 系统定级&#xff1a; 确定定级对象&#xff1a;根据《信息系统等级保护管理办法》和《信息系统等级保护定级指南》的要求&#xff0c;确定需要进行等级保护的…

CRMEB开源商城系统Java版:新零售时代的技术创新与实战案例

一、引言 随着新零售概念的兴起和电子商务的飞速发展&#xff0c;企业对商城系统的需求也日益多元化和个性化。CRMEB开源商城系统Java版&#xff0c;凭借其先进的技术架构、丰富的功能模块和灵活的扩展性&#xff0c;成为了众多企业构建和扩展自身电商业务的首选。本文将对CRM…

【Android】我的手机在...自己下载...那个(浅析Intent基础运用)

【Android】我的手机在…自己下载…那个&#xff08;浅析Intent基础运用&#xff09; 在Android开发中&#xff0c;Intent&#xff08;意图&#xff09;是一个非常重要的概念。它不仅仅是用于在应用程序的各个组件之间进行通信的工具&#xff0c;也是启动新的Activity、Servic…

表组装示例

代码; #include <gtk-2.0/gtk/gtk.h> #include <glib-2.0/glib.h> #include <stdio.h>int main(int argc, char *argv[]) {gtk_init(&argc, &argv);GtkWidget *window;window gtk_window_new(GTK_WINDOW_TOPLEVEL);gtk_window_set_title(GTK_WINDO…

光伏能源圈

2021年&#xff0c;新型电力系统之下&#xff0c;中国已形成了两网五大六小的电力新格局&#xff1a; 两大电网&#xff1a;国家电网、南方电网 五大电力央企&#xff1a;国家能源投资集团、中国华能集团、中国华电集团、中国大唐集团、国家电力投资集团。 六小豪门&#xf…

python判断语句

目录 布尔类型和比较运算符if语句的基本格式if else 语句if elif else 语句判断语句的嵌套 布尔类型和比较运算符 1、布尔类型 bool布尔类型只有两个结果&#xff1a;真或假 布尔类型的字面量&#xff1a; True 表示真&#xff08;是、肯定&#xff09; False 表示假&#x…