0%

Defcon27 CSharp Workshop 学习

vs编译64位程序的时候会默认增加ASLR,如果需要修改的话,需要手动在csproj文件中的下面增加False。msbuild会增加地址随机化,这是msbuild的默认安全机制,csc默认不会加,我是用dnspy比较两个c#可执行程序发现的。更进一步 InstallUtil.exe bypass的时候,win10 x64下如果c#利用代码编译为x86 是可以执行的,如果编译为x64 又会出现内存不可读,原因是64位InstallUtil自带ASLR,取消掉它的ASLR 发现x64的利用代码又可以执行了。谷歌能搜到的都是win7环境 目测win7 x64还没有普遍开启ASLR。