原理:
Python在执行import时,为保证之后执行速度,会把对应的py文件编译为pyc。在第二次加载该模块时,会直接读取加载pyc执行。利用这一点,我们可以把我们自己的代码插入pyc中。
原理很简单,基于此原理写了一个简单的利用demo。
地址:8b6K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6w2L8X3W2Y4K9s2c8Q4x3X3c8G2k6W2)9J5k6s2c8Z5k6g2)9J5k6p5g2T1L8$3&6Q4x3X3c8n7L8r3q4V1k6g2)9J5c8Y4m8&6K9r3q4U0K9$3g2J5
示例:
准备好要注入的shellcode,win64_shellcode的功能是打开notepad。
执行指令python .\pyhacker.py -m base64 -f.\win64_shellcode。选定的模块是base64。注入完成后,正常启动python,导入base64模块。可见刚刚插入的shellcode正常执行。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课