# PwnTools {{#include ../../../banners/hacktricks-training.md}} ``` pip3 install pwntools ``` ## Pwn asm लाइन या फ़ाइल से **opcodes** प्राप्त करें। ``` pwn asm "jmp esp" pwn asm -i ``` **चुन सकते हैं:** - आउटपुट प्रकार (raw, hex, string, elf) - आउटपुट फ़ाइल संदर्भ (16, 32, 64, linux, windows...) - बाइट्स से बचें (नए पंक्तियाँ, null, एक सूची) - gdb का उपयोग करके डिबग शेलकोड एन्कोडर का चयन करें और आउटपुट चलाएँ ## **Pwn चेकसेक** Checksec स्क्रिप्ट ``` pwn checksec ``` ## Pwn constgrep ## Pwn cyclic एक पैटर्न प्राप्त करें ``` pwn cyclic 3000 pwn cyclic -l faad ``` **चुन सकते हैं:** - उपयोग किया गया वर्णमाला (डिफ़ॉल्ट रूप से छोटे अक्षर) - अद्वितीय पैटर्न की लंबाई (डिफ़ॉल्ट 4) - संदर्भ (16,32,64,linux,windows...) - ऑफसेट लें (-l) ## Pwn debug GDB को एक प्रक्रिया से संलग्न करें ``` pwn debug --exec /bin/bash pwn debug --pid 1234 pwn debug --process bash ``` **चुन सकते हैं:** - निष्पादन योग्य, नाम या पीआईडी संदर्भ द्वारा (16,32,64,linux,windows...) - निष्पादित करने के लिए gdbscript - sysrootpath ## Pwn disablenx बाइनरी का nx बंद करें ``` pwn disablenx ``` ## Pwn disasm डिसास हेक्स ऑपकोड्स ``` pwn disasm ffe4 ``` **चुन सकते हैं:** - संदर्भ (16,32,64,linux,windows...) - आधार पता - रंग (डिफ़ॉल्ट)/कोई रंग नहीं ## Pwn elfdiff 2 फ़ाइलों के बीच के अंतर प्रिंट करें ``` pwn elfdiff ``` ## Pwn hex हेक्साडेसिमल प्रतिनिधित्व प्राप्त करें ```bash pwn hex hola #Get hex of "hola" ascii ``` ## Pwn phd हेक्सडंप प्राप्त करें ``` pwn phd ``` **चुन सकते हैं:** - दिखाने के लिए बाइट्स की संख्या - प्रति पंक्ति हाइलाइट बाइट्स की संख्या - शुरुआत में बाइट्स छोड़ें ## Pwn pwnstrip ## Pwn scrable ## Pwn shellcraft शेलकोड प्राप्त करें ``` pwn shellcraft -l #List shellcodes pwn shellcraft -l amd #Shellcode with amd in the name pwn shellcraft -f hex amd64.linux.sh #Create in C and run pwn shellcraft -r amd64.linux.sh #Run to test. Get shell pwn shellcraft .r amd64.linux.bindsh 9095 #Bind SH to port ``` **चुन सकते हैं:** - शेलकोड और शेलकोड के लिए तर्क - आउट फ़ाइल - आउटपुट प्रारूप - डिबग (शेलकोड पर dbg संलग्न करें) - पहले (कोड से पहले डिबग ट्रैप) - बाद में - ऑपकोड का उपयोग करने से बचें (डिफ़ॉल्ट: नल और नई पंक्ति नहीं) - शेलकोड चलाएँ - रंग/बिना रंग - सिस्टम कॉल की सूची - संभावित शेलकोड की सूची - साझा पुस्तकालय के रूप में ELF उत्पन्न करें ## Pwn टेम्पलेट एक पायथन टेम्पलेट प्राप्त करें ``` pwn template ``` **चुन सकते हैं:** होस्ट, पोर्ट, उपयोगकर्ता, पास, पथ और चुप ## Pwn unhex हेक्स से स्ट्रिंग में ``` pwn unhex 686f6c61 ``` ## Pwn अपडेट pwntools को अपडेट करने के लिए ``` pwn update ``` {{#include ../../../banners/hacktricks-training.md}}