免杀项目学习-1

admin 2022年9月23日12:51:37程序逆向评论2 views648字阅读2分9秒阅读模式

开头

有段时间对免杀十分感兴趣,想了想好久没在公众号发东西了,一直以来都是写语雀(这可真是好东西啊),决定把以前学习别人项目的和自己试着做的免杀(已失效)的记录发出来凑一凑文章

项目分析

github:https://github.com/9emin1/charlotte

  1. 先正常执行一遍

免杀项目学习-1

  1. 发现过程有一个removing charlootte.cpp,去python文件里把删除cpp文件的代码给删了

免杀项目学习-1

  1. 重新执行一遍,有我们想看的文件了

免杀项目学习-1

  1. 内容全是随机字符串

免杀项目学习-1

  1. 打开模板文件template.cpp对比,首先确认一下工作模式

确认了template.cpp是模板文件,但是不全,其中有一部分都是由python生成后,插入到其中

免杀项目学习-1

在.py文件中可以看到,利用replace替换字符串的方式去实现随机字符串的生成

免杀项目学习-1

它会将敏感的字符串都进行xor混淆,当然也包括shellcode
要注意的是,xor为了避免可逆或者固定特征,采用的也是随机字符串

免杀项目学习-1

通过对比,可以看到
不单单是字符,函数也进行了随机
同时,使用了getprocaddress的方式隐藏了导入表

免杀项目学习-1


免杀项目学习-1

  1. 接下来可以抄一下代码,看看如何实现的

在python中,会将字符串进行xor后,替换到模板中

免杀项目学习-1


免杀项目学习-1

然后在生成的文件中,开头可以看到,这一串就是xor混淆后的CreateThread等字符

免杀项目学习-1

然后他会放到需要用的地方进行调用

免杀项目学习-1

类似以下代码(python版)

免杀项目学习-1

总结

项目涉及到的免杀方法

  • xor混淆shellcode+硬编码

  • 函数名变量名随机字符串

  • 隐藏导入表


原文始发于微信公众号(E条咸鱼):免杀项目学习-1

特别标注: 本站(CN-SEC.COM)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
  • 我的微信
  • 微信扫一扫
  • weinxin
  • 我的微信公众号
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年9月23日12:51:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                  免杀项目学习-1 http://cn-sec.com/archives/1312988.html

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: