Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CsWhispers — مولّد مصادر لإضافة طرق D/Invoke واستدعاءات النظام غير المباشرة إلى مشروع C#. | Kitploit
أدوات/GitHubGitHub/rasta-mouse/cswhispers
التهرب من IDS/IPSما بعد الاستغلالاختبار الاختراقالأدوات والمكوناتالفريق الأحمرتطوير الحمولات
GitHubrasta-mouse/cswhispers

CsWhispers

مولّد مصادر لإضافة طرق D/Invoke واستدعاءات النظام غير المباشرة إلى مشروع C#.

عرض المستودع
19329منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CsWhispers

مولّد مصادر لإضافة طرق D/Invoke والاستدعاءات النظامية غير المباشرة إلى مشروع C#.

بدء سريع

أضف أحدث حزمة NuGet إلى مشروعك واسمح بالكود غير الآمن.

root@kitploit:~
<Project Sdk="Microsoft.NET.Sdk">

    <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>net481</TargetFramework>
        <ImplicitUsings>enable</ImplicitUsings>
        <Nullable>enable</Nullable>
        <LangVersion>12</LangVersion>
    </PropertyGroup>

    <!-- CsWhispers package -->
    <ItemGroup>
      <PackageReference Include="CsWhispers" Version="0.0.3" />
    </ItemGroup>

    <!-- Allow unsafe code -->
    <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
      <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    </PropertyGroup>

    <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
      <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
    </PropertyGroup>

</Project>

أنشئ ملفًا في مشروعك باسم CsWhispers.txt واضبط خصائص إجراء البناء الخاصة به إلى AdditionalFiles.

root@kitploit:~
<ItemGroup>
  <None Remove="CsWhispers.txt" />
  <AdditionalFiles Include="CsWhispers.txt" />
</ItemGroup>

أضف كل NT API وأي بنى/تعدادات داعمة ترغب في تضمينها في مشروعك. يجب أن يكون كل منها في سطر مستقل، على سبيل المثال:

root@kitploit:~
NtOpenProcess

HANDLE
NTSTATUS
CLIENT_ID
UNICODE_STRING
OBJECT_ATTRIBUTES

PWSTR
PCWSTR

راجع صفحة الويكي الخاصة بالمشروع للحصول على قائمة كاملة بالواجهات البرمجية المدعومة.

تتم إضافة مساحات الأسماء العامة تلقائيًا للسماح بكتابة كود نظيف.

root@kitploit:~
public static unsafe void Main()
{
    // use self as example
    using var self = Process.GetCurrentProcess();
        
    HANDLE hProcess;
    OBJECT_ATTRIBUTES oa;
    CLIENT_ID cid = new()
    {
        UniqueProcess = new HANDLE((IntPtr)self.Id)
    };

    var status = NtOpenProcess(
        &hProcess,
        PROCESS_ALL_ACCESS,
        &oa,
        &cid);

    Console.WriteLine("Status: {0}", status.SeverityCode);
    Console.WriteLine("HANDLE: 0x{0:X}", hProcess.Value.ToInt64());
}

D/Invoke

تتضمن CsWhispers نسخة مصغّرة من D/Invoke، لذا يمكنك أيضًا استدعاء Generic.GetLibraryAddress و Generic.DynamicFunctionInvoke، وما إلى ذلك.

التوسعة

يتم وضع كل الكود المُولَّد في فئة جزئية CsWhispers.Syscalls، ويمكنك توسيعها لإضافة واجهات برمجية خاصة بك. على سبيل المثال، أنشئ MyAPIs.cs وأضف:

root@kitploit:~
namespace CsWhispers;

public static partial class Syscalls
{
    public static NTSTATUS NtCreateThreadEx()
    {
        // whatever
        return new NTSTATUS(0);
    }
}

يمكن بعد ذلك استدعاؤها من الكود الرئيسي دون الحاجة إلى إضافة أي عبارات using إضافية.

root@kitploit:~
namespace ConsoleApp1;

internal static class Program
{
    public static void Main()
    {
        var status = NtCreateThreadEx();
    }
}

TODO

  • إضافة دعم 32-بت.
  • عشوائية تجزئات API في كل بناء.
  • إضافة خيارات تكوين إضافية للاختيار بين الاستدعاءات النظامية المباشرة وغير المباشرة.
  • إضافة البنى/التعدادات للواجهات البرمجية ضمنيًا دون الحاجة إلى التصريح بها في CsWhispers.txt.

Acknowledgements

استُلهم هذا المشروع من الإصدارات السابقة من SysWhipsers وخاصة SharpWhispers. لذا نرفع القبعة لكل من @Jackson_T و@KlezVirus و@d_glenx وكل من ساهم بكود و/أو أفكار.

تنزيل الأداة