双尾蝎后门程序

本文详述了一种通过钓鱼邮件投递的双尾蝎后门程序,该程序伪装为IT从业者简历,执行后能截屏、下载文件、发送计算机信息到远程服务器,并尝试创建持久性。样本使用Delphi编写,通过不同控件和计时器事件执行不同功能,关联到APT-C-23组织的历史攻击活动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

样本分析

投递手法

通过钓鱼邮件投递以IT从业者简历为主题的可执行文件,该文件通过长文件名+WORD图标的方式,伪装为文档诱骗收件人下载打开。流程图如下:
在这里插入图片描述

样本详细分析

该Delphi可执行文件运行后会通过窗体TForm1类中设置的3个按钮控件和4个计时器控件的响应事件,执行对应功能,如截图,下载文件,执行Shell代码等:
在这里插入图片描述
执行Timer后根据执行结果,杀死以及设置/新建Timer控制逻辑,下文不再赘述:
在这里插入图片描述

Time1释放掩饰文档

首先被执行的是Time1,用来释放掩饰文档以及进入Button2控件的响应事件。
从资源段中加载资源“Resource_1”后,将其释放在本地%TEMP%目录下“cv AYA ALI 888.docx”中:
在这里插入图片描述
调用“ShellExecute”打开掩饰文档欺骗收件人:
在这里插入图片描述
掩饰文档如下,具体信息将在溯源中展开:
在这里插入图片描述
接着进入Button2控件的响应事件。

Button2发送信息

Button2控件的响应事件用来获取计算机信息并将数据Base64编码后发送给远程服务器。
首先调用“GetVersionExW”获取获取系统版本信息,根据系统版本的不同选择不同的路径保存生成的计算机标识:

系统版本 计算机标识保存目录
Windows XP C:\Documents and Settings%Username%\Application Data
其他Windows版本 %ProgramData%

生成的10位长度字符串作为计算机标识(以下简称为“ID”),写入到文件“GUID.bin”中:
在这里插入图片描述
将获取到的计算机名和用户名,与ID拼凑生成计算机标识字符串后进程Base64编码处理:

### 双尾比较器的工作原理与实现方法 #### 工作原理概述 双尾比较器是一种基于差分放大结构的电路,其核心功能是比较两个输入电压并输出相应的高低电平状态。它通常由一对匹配良好的晶体管组成,用于检测输入信号之间的差异。这种类型的比较器广泛应用于模数转换器(ADC)、运算放大器以及其他模拟和混合信号电路中。 在双尾比较器的设计中,电流源作为有源负载提供偏置电流,从而增强增益性能[^1]。当正负输入端施加不同的电压时,其中一个晶体管导通程度更高,而另一个则相应减小导通比例。最终,在输出节点上形成明显的逻辑高或低电平变化。 #### 实现方法详解 以下是关于如何具体实现双尾比较器的一些技术要点: 1. **基本拓扑结构** - 使用NPN型或者PMOS/NMOS场效应晶体管构建差动对。 - 配备共用发射极/源极连接至恒流镜像电路以维持稳定操作条件。 2. **动态范围扩展机制** - 对于某些高级应用场合下可能还需要加入额外补偿网络来改善线性度以及带宽表现。 - 这种改进措施有助于提升整体系统的精确性和响应速度[^2]。 3. **版图优化策略** - 考虑到寄生参数的影响,在实际物理布局阶段应当特别注意保持良好对称性的同时尽量缩短互连线长度。 - 此外还需合理安排电源轨走向避免引入不必要的干扰噪声源影响正常运作效果[^3]。 ```python import numpy as np def comparator_output(v_in_pos, v_in_neg, threshold=0): """ Simulates a basic differential pair comparator output. Parameters: v_in_pos (float): Positive input voltage of the comparator. v_in_neg (float): Negative input voltage of the comparator. threshold (float): Decision boundary for switching outputs. Returns: int: Output state based on comparison result (+1 or -1). """ if abs(v_in_pos - v_in_neg) >= threshold: return 1 if v_in_pos > v_in_neg else -1 else: return 0 # Example usage demonstrating behavior around decision point voltages = np.linspace(-0.5, 0.5, num=100) outputs = [comparator_output(vp, vn := i / 2., .1)] for vp in voltages] print(outputs[:10]) # Display first few results showing transition region characteristics ``` 上述代码片段展示了简单版本的理想化模型仿真过程,其中包含了针对特定阈值设定下的切换判定逻辑处理部分。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值