
SharpHook هي أداة ربط API هجومية مصممة لاعتراض بيانات الاعتماد المختلفة داخل استدعاء API.
مستوحى SharpHook من مشروع SharpRDPThief، حيث يستخدم خطافات API مختلفة لمنحنا بيانات الاعتماد المطلوبة.
في الخلفية، يستخدم مشروع EasyHook، وبمجرد تشغيل العملية المطلوبة، يقوم SharpHook تلقائياً بحقن تبعياته في العملية المستهدفة، ثم يرسل لنا بيانات الاعتماد عبر خادم IPC الخاص بـ EasyHook.
| العملية | استدعاء API | الوصف | التقدم |
|---|
| mstsc | CredUnPackAuthenticationBufferW | سيتعامل هذا مع mstsc ويجب أن يعطيك اسم المستخدم وكلمة المرور وعنوان IP البعيد | تم |
| runas | CreateProcessWithLogonW | سيتعامل هذا مع runas ويجب أن يعطيك اسم المستخدم وكلمة المرور واسم المجال | تم |
| powershell | CreateProcessWithLogonW | سيتعامل هذا مع powershell ويجب أن يعطيك مخرجات للأوامر عندما يدخل المستخدم بيانات اعتماد مختلفة. مثلاً - Start-Process cmd -Credential X | تم |
| cmd | RtlInitUnicodeStringEx | يجب أن يتعامل هذا مع cmd ثم سيكون قادراً على تصفية كلمات مفتاحية مثل: PsExec، password، الخ.. | قيد التقدم - يتعطل cmd ولا أعرف السبب |
| MobaXterm | CharUpperBuffA | سيتعامل هذا مع MobaXterm ويجب أن يعطيك بيانات اعتماد لتسجيلات الدخول SSH و RDP | قيد التقدم - مشاكل كونه عملية 32 بت وعدم عمل Fody. كحل بديل، يمكنك تجميع المشروع كـ x86 وسيعمل بشكل جيد |
| explorer (مطالبة UAC) | CredUnPackAuthenticationBufferW | سيتعامل هذا مع explorer ويجب أن يعطيك اسم المستخدم وكلمة المرور واسم المجال من مطالبة UAC | قيد التقدم - يقول UAC رفض الوصول، ربما مشاكل في مستويات التكامل |

لا تتردد في المساهمة حيث أواجه بعض المشاكل مع بعض العمليات. يمكنك العثور علي على تويتر أو فتح طلب سحب.