
المشكلة ناتجة عن حقيقة أنه عند تثبيت حزمة، يقوم Golang ببناء الإضافات الأصلية (native extensions). يمكن استخدام هذا لتمرير علامات إضافية إلى المترجم (compiler) لتحقيق تنفيذ الأكواد (code execution). على سبيل المثال، يمكن استخدام CFLAGS.
المشكلة تكمن في أنه عند تثبيت حزمة، يقوم Golang ببناء إضافات أصلية. يمكن استخدام هذا لتمرير معاملات إضافية إلى المترجم لتحقيق تنفيذ الأكواد. على سبيل المثال، يمكن استخدام CFLAGS.
يمكنك بناؤه باستخدام الأمر التالي: $ gcc -shared -o attack.so -fPIC attack.c بمجرد استضافة الحمولة الكاملة على Github، يجب أن تكون قادرًا على تمرير رابط الحزمة للضحية.