(इन)डायरेक्ट Syscalls: उच्च से निम्न की यात्रा
RedOps | Red Team Village | DEF CON 31
आरंभ करना
सभी सिद्धांत और अभ्यासों के लिए प्लेबुक wiki में पाए जा सकते हैं, जो तैयार POCs के साथ मिलकर इस परियोजना का मूल है। अभ्यासों के POCs यहाँ मुख्य पृष्ठ पर पाए जा सकते हैं।
सीखने का आनंद लें!
Daniel Feichter
अस्वीकरण
सबसे पहले, मेरी प्रेमिका को बहुत धन्यवाद, जो अब 10 वर्षों से मेरे हर काम में मेरा समर्थन कर रही है! उनके समर्थन और सहयोग के बिना पिछले 10 वर्षों में मेरी कोई भी परियोजना संभव नहीं हो पाती।
मेरे अच्छे मित्र AV-Comparatives के Andreas Clementi का भी धन्यवाद, जो हमारी पहली मुलाकात से ही मेरा समर्थन करते आ रहे हैं। साथ ही मेरे मित्र Jonas Kemmner (जो एक उत्कृष्ट Red Teamer हैं) का भी धन्यवाद, जिन्होंने मेरा समर्थन किया और मेरे सभी ब्लॉग पोस्ट पहले ही पढ़ लिए। मैं इन सभी अद्भुत लोगों से मिल पाने के लिए बहुत आभारी हूँ।
इस रिपॉजिटरी की सामग्री और सभी कोड उदाहरण केवल शैक्षिक और शोध उद्देश्यों के लिए हैं और इनका उपयोग केवल नैतिक संदर्भ में ही किया जाना चाहिए! कोड उदाहरण नए नहीं हैं और मैं यह दावा नहीं करता कि वे नए हैं। अधिकांश कोड या इसका आधार, जैसा कि अक्सर होता है, ired.team से आता है, आपके शानदार काम और इसे हम सभी के साथ साझा करने के लिए @spotheplanet का धन्यवाद। साथ ही आपके शानदार टूल x64dbg के लिए @mrexodia को भी बहुत धन्यवाद।
इसके अलावा, और बहुत महत्वपूर्ण बात, यह वर्कशॉप EDR बायपास के संदर्भ में कोई जादुई समाधान नहीं है, लेकिन यह shellcode निष्पादन और EDR बायपास के संदर्भ में Win32 APIs, Native APIs, direct syscalls और indirect syscalls की मूल बातें और call stacks के बारे में थोड़ा समझने में मदद करता है, न अधिक, न कम। इस वर्कशॉप का उद्देश्य direct और indirect syscalls के लिए सबसे छिपे हुए विकल्पों या सबसे जटिल POCs को दिखाना नहीं है, बल्कि मैं मूल बातें सिखाने पर ध्यान केंद्रित करूँगा। इसका मतलब है जितना संभव हो उतने कम टूल्स का उपयोग करना और जितना संभव हो उतना काम मैन्युअल रूप से करना।
मैं infosec समुदाय के उन सभी सदस्यों को धन्यवाद देना चाहता हूँ जिन्होंने syscalls, direct system calls और indirect syscalls आदि विषय पर शोध किया है, उसे आकार दिया है और आगे भी शोध कर रहे हैं।
श्रेय और संदर्भ
| ट्विटर हैंडल | योगदान और शोध |
|---|
| @Cneelis | https://outflank.nl/blog/2019/06/19/red-team-tactics-combining-direct-system-calls-and-srdi-to-bypass-av-edr/ https://github.com/outflanknl/Dumpert |
| @spotheplanet | उनका पूरा शानदार ब्लॉग और शोध https://www.ired.team/ |
| @NinjaParanoid | उनके ब्लॉग, शोध, पाठ्यक्रमों और मेरे सवालों का हमेशा जवाब देने के लिए। https://0xdarkvortex.dev/hiding-in-plainsight/ https://0xdarkvortex.dev/proxying-dll-loads-for-hiding-etwti-stack-tracing/ |
| @ShitSecure | उनके शोध, उनके ब्लॉग https://s3cur3th1ssh1t.github.io/ और EDRs, syscalls आदि के बारे में बेहतरीन चर्चा के लिए। |
| @AliceCliment | उनके ब्लॉग, शोध और EDRs, syscalls आदि के बारे में चर्चाओं के लिए। https://alice.climent-pommeret.red/posts/how-and-why-to-unhook-the-import-address-table/ https://alice.climent-pommeret.red/posts/a-syscall-journey-in-the-windows-kernel/ https://alice.climent-pommeret.red/posts/direct-syscalls-hells-halos-syswhispers2/ |
| @0xBoku | उनके समग्र शोध, और infosec में योगदान, नए समुदाय के सदस्यों की मदद करने, और infosec की निरंतर प्रगति के लिए। https://0xboku.com/ https://github.com/boku7/AsmHalosGate https://github.com/boku7/HellsGatePPID https://github.com/boku7/halosgate-ps |
| @Jackson_T | उनके शोध और SysWhispers तथा SysWhispers2 टूल्स के लिए। https://github.com/jthuraisamy/SysWhispers) https://github.com/jthuraisamy/SysWhispers2 |
| @KlezVirus | उनके ब्लॉग, शोध, EDRs, syscalls आदि के बारे में बेहतरीन चर्चाओं और SysWhispers3 के लिए। https://github.com/klezVirus/SysWhispers3 https://klezvirus.github.io/RedTeaming/AV_Evasion/NoSysWhisper/ https://github.com/klezVirus/SilentMoonwalk |
| @j00ru | https://j00ru.vexillium.org/syscalls/nt/64/ |
| @modexpblog | https://www.mdsec.co.uk/2020/12/bypassing-user-mode-hooks-and-direct-invocation-of-system-calls-for-red-teams/ |
| @netero_1010 | https://www.netero1010-securitylab.com/evasion/indirect-syscall-in-csharp) |
| @CaptMeelo | https://captmeelo.com/redteam/maldev/2021/11/18/av-evasion-syswhisper.html |
| Paul Laîné @am0nsec और smelly__vx @RtlMateusz | https://github.com/am0nsec/HellsGate/tree/master |
| @mrd0x | https://github.com/Maldev-Academy/HellHall |
| @SEKTOR7net | https://blog.sektor7.net/#!res/2021/halosgate.md |
| @D1rkMtr | https://github.com/TheD1rkMtr/D1rkLdr |
| @trickster012 | https://github.com/trickster0/TartarusGate |
| @thefLinkk | https://github.com/thefLink/RecycledGate |
| @ElephantSe4l और MarioBartolome | https://github.com/crummie5/FreshyCalls |
अतिरिक्त संसाधन
- Windows Internals, भाग 1: सिस्टम आर्किटेक्चर, प्रोसेस, थ्रेड, मेमोरी प्रबंधन, और अधिक (7वां संस्करण), Pavel Yosifovich, David A. Solomon, और Alex Ionescu द्वारा
- Windows Internals, भाग 2 (7वां संस्करण), Pavel Yosifovich, David A. Solomon, और Alex Ionescu द्वारा
- https://offensivecraft.wordpress.com/2022/12/08/the-stack-series-return-address-spoofing-on-x64/
- https://offensivecraft.wordpress.com/2023/02/11/the-stack-series-the-x64-stack/
- https://winternl.com/detecting-manual-syscalls-from-user-mode/