LyShark®

信息安全电子刊物出版品牌

远程目录列表的获取也是一种很常用的功能,通常在远程控制软件中都存在此类功能,实现此功能可以通过`filesystem.hpp`库中的`directory_iterator`迭代器来做,该迭代器用于遍历目录中的文件和子目录,它允许开发者轻松遍历目录层次结构并对遇到的文件和目录执行各种操作。使用`directory_iterator`构造函数创建一个迭代器,该迭代器指向目录中的第一个条目。然后,我们使用一个范围`for`循环来遍历目录中的每个文件和目录,并使用`pos->path().string()`方法即可得到该目录下的文件路径。

阅读全文 »

在原生套接字编程中我们介绍了利用文件长度来控制文件传输的方法,本节我们将采用另一种传输方式,我们通过判断字符串是否包含`goodbye lyshark`关键词来验证文件是否传输结束了,当然了这种传输方式明显没有根据长度传输严谨,但使用这种方式也存在一个有点,那就是无需确定文件长度,因为无需读入文件所以在传输速度上要快一些,尤其是面对大文件时。

阅读全文 »

这里所代指的字典是Python中的样子,本节内容我们将通过使用Boost中自带的`Tokenizer`分词器实现对特定字符串的切割功能,使用Boost Tokenizer,可以通过构建一个分隔符或正则表达式的实例来初始化`tokenizer`。然后,可以使用该实例对输入字符串进行划分。`tokenizer`将在输入字符串中寻找匹配输入模式的标记,并将其拆分为单独的字符串。

阅读全文 »

PeFile模块是`Python`中一个强大的便携式第三方`PE`格式分析工具,用于解析和处理`Windows`可执行文件。该模块提供了一系列的API接口,使得用户可以通过`Python`脚本来读取和分析PE文件的结构,包括文件头、节表、导入表、导出表、资源表、重定位表等等。此外,PEfile模块还可以帮助用户进行一些恶意代码分析,比如提取样本中的字符串、获取函数列表、重构导入表、反混淆等等。PEfile模块是Python中处理PE文件的重要工具之一,广泛应用于二进制分析、安全研究和软件逆向工程等领域。

阅读全文 »

异或加密是一种对称加密算法,通常用于加密二进制数据。异或操作的本质是对两个二进制数字进行比较,如果它们相同则返回0,如果不同则返回1。异或加密使用一把密钥将明文与密文进行异或运算,从而产生密文。同时,使用相同的密钥进行解密将返回原始的明文数据。在异或加密中,加密和解密使用的是相同的密钥。因此,它是一种对称加密算法。由于其简单性和效率,其经常用于嵌入式系统中。

阅读全文 »

序列化和反序列化是指将数据结构或对象转换为一组字节,以便在需要时可以将其存储在磁盘上或通过网络传输,并且可以在需要时重新创建原始对象或数据结构。序列化是将内存中的对象转换为字节的过程。在序列化期间,对象的状态被编码为一组字节,并可以保存或传输到另一个位置。序列化后的字节可以在之后进行反序列化,以将对象重建为在序列化之前的状态。反序列化则是将字节序列重新转换为对象或数据结构的过程。在反序列化期间,字节被反转回原始对象的状态,以便它可以被使用或操作。

阅读全文 »

同步模式下的结构体传输与原生套接字实现方式完全一致,读者需要注意的是在接收参数是应该使用`socket.read_some`函数读取,发送参数则使用`socket.write_some`函数实现,对于套接字的解析同样使用强制指针转换的方法。

阅读全文 »

Base64是一种二进制到文本的编码方案,用于将二进制数据转换为`ASCII`字符串格式。它通过将二进制数据流转换为一系列`64`个字符来工作,这些字符都可以安全地传输到设计用于处理文本数据的系统中。如下代码中我们使用Boost中提供的`base64_from_binary`头文件实现两个函数,其中`Base64Decode`函数接收一个字符串并对其进行解压缩操作输出解密后的原始字符串内容,其次`Base64Encode`函数用于将一个原始数据包压缩处理,有了这两个函数的支持,我们只需要在调用发送函数之前对数据进行压缩,在接收数据后在使用对等的函数对其进行解压缩即可,如下是该案例的完整实现。

阅读全文 »

命令执行机制的实现与原生套接字通信一致,仅仅只是在调用时采用了Boost通用接口,在服务端中我们通过封装实现一个`run_command`函数,该函数用于发送一个字符串命令,并循环等待接收客户端返回的字符串,当接收到结束标志`goodbye lyshark`时则说明数据传输完成则退出,客户端使用`exec_command`函数,该函数通过`_popen`函数执行一条命令,并循环`fgets`读取字符串发送给服务端,最终传输一个结束标志完成通信。

阅读全文 »

Scapy 是一款使用纯Python编写的跨平台网络数据包操控工具,它能够处理和嗅探各种网络数据包。能够很容易的创建,发送,捕获,分析和操作网络数据包,包括TCP,UDP,ICMP等协议,此外它还提供了许多有用的功能,例如嗅探网络流量,创建自定义协议和攻击网络的安全测试工具。使用Scapy可以通过Python脚本编写自定义网络协议和攻击工具,这使得网络安全测试变得更加高效和精确。

阅读全文 »