学习DJB哈希算法

admin 2022年10月19日07:58:49评论71 views字数 296阅读0分59秒阅读模式

哈希算法的定义

是把任意长度的输入通过散列算法变换成固定长度的输出,这样就减少了原输入的长度。



恶意代码中的应用

这个比较简单的哈希算法来源于以前在分析Sodinokibi勒索病毒时遇到的,好困,所以整理下笔记,由于为了逃避检测,所以勒索病毒对字符串的大多数操作都是使用对字符串计算得到的DJB哈希值而不是字符串本身来对比并寻找。


通常,大部分的恶意软件寻找调用API时,会使用API名称计算得到的hash进行内部硬编码值对比来判断查找需要的API函数名称,这样就避免了敏感API函数被直接显示。



案例代码

典型的例子代码如下,还是很好理解的。

学习DJB哈希算法

原文始发于微信公众号(OnionSec):学习DJB哈希算法

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月19日07:58:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   学习DJB哈希算法https://cn-sec.com/archives/700268.html

发表评论

匿名网友 填写信息