Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CsWhispers — किसी C# प्रोजेक्ट में D/Invoke और अप्रत्यक्ष syscall विधियाँ जोड़ने के लिए स्रोत जनरेटर। | Kitploit
उपकरण/GitHubGitHub/rasta-mouse/cswhispers
आईडीएस/आईपीएस से बचनापोस्ट-शोषणपेनिट्रेशन टेस्टिंगउपयोगिताएँ और फ्रेमवर्करेड टीमिंगपेलोड डेवलपमेंट
GitHubrasta-mouse/cswhispers

CsWhispers

किसी C# प्रोजेक्ट में D/Invoke और अप्रत्यक्ष syscall विधियाँ जोड़ने के लिए स्रोत जनरेटर।

रिपॉजिटरी देखें
193292 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

CsWhispers

C# प्रोजेक्ट में D/Invoke और अप्रत्यक्ष syscall विधियों को जोड़ने के लिए सोर्स जनरेटर।

त्वरित आरंभ

अपने प्रोजेक्ट में नवीनतम NuGet पैकेज जोड़ें और unsafe कोड की अनुमति दें।

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 और किसी भी सहायक structs/enums को जोड़ें जिन्हें आप अपने प्रोजेक्ट में शामिल करना चाहते हैं। प्रत्येक को अपनी अलग पंक्ति में होना चाहिए, उदाहरण के लिए:

root@kitploit:~
NtOpenProcess

HANDLE
NTSTATUS
CLIENT_ID
UNICODE_STRING
OBJECT_ATTRIBUTES

PWSTR
PCWSTR

समर्थित APIs की पूरी सूची के लिए प्रोजेक्ट Wiki देखें।

स्वच्छ कोड की अनुमति देने के लिए वैश्विक नामस्थान स्वचालित रूप से जोड़े जाते हैं।

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 क्लास में जाता है, जिसे आप अपने स्वयं के APIs जोड़ने के लिए विस्तारित कर सकते हैं। उदाहरण के लिए, 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 हैश को यादृच्छिक करें।
  • प्रत्यक्ष और अप्रत्यक्ष syscalls के बीच चयन करने के लिए अतिरिक्त कॉन्फ़िगरेशन विकल्प जोड़ें।
  • APIs के लिए CsWhispers.txt में घोषित किए बिना structs/enums को अंतर्निहित रूप से जोड़ें।

Acknowledgements

यह प्रोजेक्ट विशेष रूप से SysWhipsers और SharpWhispers के पिछले संस्करणों से प्रेरित था। तो @Jackson_T, @KlezVirus, @d_glenx, और बाकी सभी को धन्यवाद जिन्होंने कोड और/या विचारों का योगदान दिया।

टूल डाउनलोड करें