Skip to content

پل ارتباطی: RPC و send/recv (با Golang) ​

تا اینجای کار، خروجی اسکریپت‌های ما فقط متن‌هایی بود که در کنسول چاپ می‌شد (console.log). اما در یک سناریوی واقعی (Red Team)، شما می‌خواهید:

  1. اطلاعات حساس (مثل دیتابیس کاربران) را استخراج کرده و در فایل ذخیره کنید (Exfiltration).
  2. از سمت کامپیوتر به اپلیکیشن دستور دهید (مثلا "تابع دکریپت را با این کلید اجرا کن").

فریدا دو مکانیزم برای این کار دارد: send/recv (پیام‌رسانی ساده) و RPC (فراخوانی توابع). ما سمت کامپیوتر (Host) را با زبان قدرتمند Go پیاده‌سازی می‌کنیم.

چرا Go؟

استفاده از Golang برای نوشتن کلاینت فریدا باعث می‌شود ابزار نهایی شما یک فایل اجرایی (.exe یا ELF) باشد که روی هر سیستمی بدون نیاز به نصب پایتون و وابستگی‌ها اجرا می‌شود. این برای جابجایی ابزار بین سیستم‌های مختلف عالی است.