根据CPU线程数估算Monero挖矿的哈希率,然后基于这个哈希率动态计算并选择一个端口号。用于配置一个挖矿程序以选择适当的端口进行通信。这样的设计可能是为了在不同机器上运行时根据机器的不同性能选择合适的设置。
图 3‑1 估算Monero挖矿的哈希率
在不同的系统上动态地调整CPU的功率或资源使用参数,具体应用可能与某些程序的性能优化或资源控制有关,比如在挖矿脚本中根据硬件性能调整工作负载。
图 3‑2 动态调整CPU功率
遍历一系列目录(如$HOME,$PWD,/var/tmp,/dev/shm,/var/run,/tmp),尝试在这些目录中找到一个可写的目录,并检查其是否有足够的可用空间。
图 3‑3 遍历指定目录并查看目录可用空间大小
根据操作系统类型、架构以及是否需要压缩和加密,来生成一个格式化的文件名。该功能通常用于生成特定平台和配置的可执行文件或包的名称,以便在不同环境中识别和使用。
图 3‑4 格式化文件名
查找系统中正在运行的竞品挖矿进程,支持精确匹配和模式匹配。它根据系统上可用的工具(如pgrep、ps、pidof)选择最佳方式进行查找,并在这些工具不可用时,通过手动遍历/proc文件系统进行查找,当查找到竞品挖矿进程后,使用pkill、killall、kill等命令进行结束进程。
图 3‑5 查找正在运行的竞品挖矿进程
更改挖矿程序落地目录的权限。
图 3‑6 更改挖矿程序落地目录的权限
从指定的URL下载挖矿程序,并根据受害者机器上的工具进行下载操作。如wget、curl、perl、Python 2.x和Python 3.x等。
图 3‑7 下载挖矿程序
设置挖矿配置文件,矿池地址为207.180.217.230:80。
图 3‑8 设置挖矿配置文件