TryHackBox
#Roadmap #web_hacking منبع : https://memoryleaks.ir T.ME/TryHackBoxOfficial
دانش پایه
اگرچه شاخههای مختلف امنیت، مسیرهای کاملا جداگانهای از یکدیگر دارند و هر کدام نیازمند مهارتها و دانشهای تخصصی مربوط به آن حوزهاند، اما با این حال، داشتن اطلاعات پایه در ارتباط با شبکه، برنامهنویسی، سیستمعامل و بعضی پروتکلهای متداول رمزنگاری، شتابدهندهی خوبی برای فهم عمیق اتفاقات پشت پرده در همهی شاخههای دیگر است و به خلاقیت و تسریع یادگیری فرد در شاخهی تخصصیاش کمک شایانی میکنند. ضعف در این مقدمات حتی ممکن است منجر به شکست در اجرای درست یک سناریوی طراحی شده یا شکست در فهم صحیح یک فرایند شود.
بنابراین توصیه میشود پیش از انتخاب هر شاخهای از امنیت، در ارتباط با این چند مقوله، اطلاعات کافی کسب کنید. منظور از اطلاعات کافی این نیست که به یک برنامهنویس خبره یا یک طراح سیستمعامل تبدیل شوید؛ بلکه منظور این است که نحوهی توسعه، کامپایل و اجرای یک برنامه توسط سیستمعامل را بیاموزید و با ویژگیها و فرایندهای مختلف داخل سیستمعامل آشنا شوید. مفاهیم مختلف رمزنگاری را یاد بگیرید و در نهایت با عملکرد کلی شبکههای رایانهای و پروتکلهای معروف شبکه آشنا شوید. در فهرست زیر، مجموعهای از کتابهای پیشنهادی برای مجهز شدن به این دانشهای پایه معرفی شدهاند:
CompTIA Network+ Certification
The TCP/IP Guide: A Comprehensive, Illustrated Internet Protocols Reference
HTTP: The Definitive Guide
Internetworking with TCP/IP Volume One
@TryHackBoxOfficial
اگرچه شاخههای مختلف امنیت، مسیرهای کاملا جداگانهای از یکدیگر دارند و هر کدام نیازمند مهارتها و دانشهای تخصصی مربوط به آن حوزهاند، اما با این حال، داشتن اطلاعات پایه در ارتباط با شبکه، برنامهنویسی، سیستمعامل و بعضی پروتکلهای متداول رمزنگاری، شتابدهندهی خوبی برای فهم عمیق اتفاقات پشت پرده در همهی شاخههای دیگر است و به خلاقیت و تسریع یادگیری فرد در شاخهی تخصصیاش کمک شایانی میکنند. ضعف در این مقدمات حتی ممکن است منجر به شکست در اجرای درست یک سناریوی طراحی شده یا شکست در فهم صحیح یک فرایند شود.
بنابراین توصیه میشود پیش از انتخاب هر شاخهای از امنیت، در ارتباط با این چند مقوله، اطلاعات کافی کسب کنید. منظور از اطلاعات کافی این نیست که به یک برنامهنویس خبره یا یک طراح سیستمعامل تبدیل شوید؛ بلکه منظور این است که نحوهی توسعه، کامپایل و اجرای یک برنامه توسط سیستمعامل را بیاموزید و با ویژگیها و فرایندهای مختلف داخل سیستمعامل آشنا شوید. مفاهیم مختلف رمزنگاری را یاد بگیرید و در نهایت با عملکرد کلی شبکههای رایانهای و پروتکلهای معروف شبکه آشنا شوید. در فهرست زیر، مجموعهای از کتابهای پیشنهادی برای مجهز شدن به این دانشهای پایه معرفی شدهاند:
CompTIA Network+ Certification
The TCP/IP Guide: A Comprehensive, Illustrated Internet Protocols Reference
HTTP: The Definitive Guide
Internetworking with TCP/IP Volume One
@TryHackBoxOfficial
👍4
TryHackBox
دانش پایه اگرچه شاخههای مختلف امنیت، مسیرهای کاملا جداگانهای از یکدیگر دارند و هر کدام نیازمند مهارتها و دانشهای تخصصی مربوط به آن حوزهاند، اما با این حال، داشتن اطلاعات پایه در ارتباط با شبکه، برنامهنویسی، سیستمعامل و بعضی پروتکلهای متداول رمزنگاری،…
#1 .TCP/IP :
Download, Pdf
#2 .http :
Download, Pdf
#3 .TCP/IP
Download , PDF
#4 . js :
https://developer.mozilla.org/en-US/docs/Web/JavaScript
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/send
#5 .python :
https://www.python.org/
#6 .OWASP :
https://wiki.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents
#7.hackers Handbook :
https://www.amazon.com/Web-Application-Hackers-Handbook-Exploiting/dp/1118026470
#8 .Burp suite :
https://portswigger.net/burp
#9 .sec642 :
https://www.sans.org/course/advanced-web-app-penetration-testing-ethical-hacking
#10 .dev 522 :
https://www.sans.org/course/defending-web-applications-security-essentials
#11 .thehackerplaybook2,3 :
https://www.amazon.com/Hacker-Playbook-Practical-Penetration-Testing/dp/1512214566
https://www.amazon.com/Hacker-Playbook-Practical-Penetration-Testing-ebook/dp/B07CSPFYZ2
#12 .thebrowser hackers handbook :
https://www.amazon.com/Browser-Hackers-Handbook-Wade-Alcorn/dp/1118662091
#13 .Mastering Modern Web Penetration Testing :
https://www.amazon.fr/Mastering-Modern-Web-Penetration-Testing/dp/1785284584
#14 .Python for Pentesters :
https://www.pentesteracademy.com/course?id=1
#15 .Web Application Obfuscation :
https://www.amazon.com/Web-Application-Obfuscation-Evasion-Filters/dp/1597496049
#16 .Black Hat Python: Python Programming for Hackers and Pentesters:
https://www.amazon.com/Black-Hat-Python-Programming-Pentesters/dp/1593275900
#17 .Real-World Bug Hunting :
https://www.amazon.com/Real-World-Bug-Hunting-Field-Hacking/dp/1593278616
منبع :
https://memoryleaks.ir
T.ME/TryHackBoxOfficial
Download, Pdf
#2 .http :
Download, Pdf
#3 .TCP/IP
Download , PDF
#4 . js :
https://developer.mozilla.org/en-US/docs/Web/JavaScript
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/send
#5 .python :
https://www.python.org/
#6 .OWASP :
https://wiki.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents
#7.hackers Handbook :
https://www.amazon.com/Web-Application-Hackers-Handbook-Exploiting/dp/1118026470
#8 .Burp suite :
https://portswigger.net/burp
#9 .sec642 :
https://www.sans.org/course/advanced-web-app-penetration-testing-ethical-hacking
#10 .dev 522 :
https://www.sans.org/course/defending-web-applications-security-essentials
#11 .thehackerplaybook2,3 :
https://www.amazon.com/Hacker-Playbook-Practical-Penetration-Testing/dp/1512214566
https://www.amazon.com/Hacker-Playbook-Practical-Penetration-Testing-ebook/dp/B07CSPFYZ2
#12 .thebrowser hackers handbook :
https://www.amazon.com/Browser-Hackers-Handbook-Wade-Alcorn/dp/1118662091
#13 .Mastering Modern Web Penetration Testing :
https://www.amazon.fr/Mastering-Modern-Web-Penetration-Testing/dp/1785284584
#14 .Python for Pentesters :
https://www.pentesteracademy.com/course?id=1
#15 .Web Application Obfuscation :
https://www.amazon.com/Web-Application-Obfuscation-Evasion-Filters/dp/1597496049
#16 .Black Hat Python: Python Programming for Hackers and Pentesters:
https://www.amazon.com/Black-Hat-Python-Programming-Pentesters/dp/1593275900
#17 .Real-World Bug Hunting :
https://www.amazon.com/Real-World-Bug-Hunting-Field-Hacking/dp/1593278616
منبع :
https://memoryleaks.ir
T.ME/TryHackBoxOfficial
Telegram
F.P.W Library Sec [ CyberSecurity Book ]
Book Name: TCP/IP GUIDE
Year: 2005
Version: 1
Publisher: Starch Press
Language : English
Pages: 1671
#Tcp_Ip
==================
🍂 T.me/library_sec
Year: 2005
Version: 1
Publisher: Starch Press
Language : English
Pages: 1671
#Tcp_Ip
==================
🍂 T.me/library_sec
🔥5👍2
👎1
نقشه راه برای انالیز بدافزار طبق نظر اقای علی امینی
1 - مباحث سیستم عامل رو یاد بگیرید حالا هر کتابی که خوندید .
2 - لینوکس را یاد بگیرید ( Lpic1 ) کافیه ولی بیشتر معماری یاد بگیرید .
3 - Network +
خواستید میتونید Cisco بکنید زیاد وسواس به خرج ندید .
4 - زبان C رو یاد بگیرید .
5 - زبان اسمبلی که اصل و پایه و اصول این علمه
دانلود کتاب اسمبلی
The Art Of Assembley Language
6 - Reversing : Secrets of reverse engineering
7 - Reverse for Beginners
8 - با انجام تحلیل و تمرین و انجام چلنچ های crackme میتونید خودتون تقویت کنید .
9 - توصیه من اینه که حتما یه مدت زیادی رو بعد از خوندن کتاب بزارید برا تمرین.
خب حالا تو این مرحله شما یه زمینه خوبی پیدا کردید و میتونید یه شاخه انتخاب کنید:
تحلیل بدافزار، تحلیل فایل های سیستم عامل ، و یا تحلیل فریم ور ها.
کتاب برا تحلیل بدافزار:
Practical malware analysis
10 - در ادامه چلنچ حل کنید ولی توصیه من اینه که بدافزار واقعی تحلیل کنید این میتونه توی درک شما از حملات واقعی خیلی موثر باشه .
11 - و در انتها این کتابی که میگم برا کسایی خوبه که میخوان اکسپلویت هم کار کنن. جدایی از اکسپلویت این کتاب خیلی دید خوبی بهتون میده. من انقد این کتابو دوست دارم که همیشه باز میکنم یه نگاهی میندازم بهش.
Art of explotion edition 2
#Malware_Analysis
#roadmap
@TryHackBoxOfficial
1 - مباحث سیستم عامل رو یاد بگیرید حالا هر کتابی که خوندید .
2 - لینوکس را یاد بگیرید ( Lpic1 ) کافیه ولی بیشتر معماری یاد بگیرید .
3 - Network +
خواستید میتونید Cisco بکنید زیاد وسواس به خرج ندید .
4 - زبان C رو یاد بگیرید .
5 - زبان اسمبلی که اصل و پایه و اصول این علمه
دانلود کتاب اسمبلی
The Art Of Assembley Language
6 - Reversing : Secrets of reverse engineering
7 - Reverse for Beginners
8 - با انجام تحلیل و تمرین و انجام چلنچ های crackme میتونید خودتون تقویت کنید .
9 - توصیه من اینه که حتما یه مدت زیادی رو بعد از خوندن کتاب بزارید برا تمرین.
خب حالا تو این مرحله شما یه زمینه خوبی پیدا کردید و میتونید یه شاخه انتخاب کنید:
تحلیل بدافزار، تحلیل فایل های سیستم عامل ، و یا تحلیل فریم ور ها.
کتاب برا تحلیل بدافزار:
Practical malware analysis
10 - در ادامه چلنچ حل کنید ولی توصیه من اینه که بدافزار واقعی تحلیل کنید این میتونه توی درک شما از حملات واقعی خیلی موثر باشه .
11 - و در انتها این کتابی که میگم برا کسایی خوبه که میخوان اکسپلویت هم کار کنن. جدایی از اکسپلویت این کتاب خیلی دید خوبی بهتون میده. من انقد این کتابو دوست دارم که همیشه باز میکنم یه نگاهی میندازم بهش.
Art of explotion edition 2
#Malware_Analysis
#roadmap
@TryHackBoxOfficial
Telegram
F.P.W Library Sec [ CyberSecurity Book ]
Book name: The art of assembly language
Year: 2010
Language: English
Pages: 764
#Programming #assembly
#hardware
=======================
T.me/library_sec 🌿
Year: 2010
Language: English
Pages: 764
#Programming #assembly
#hardware
=======================
T.me/library_sec 🌿
❤5👍3🙏2
Cyber_Security_Roadmap_(Beginners)_ethicalhackx.pdf
185.3 KB
نقشه راه امنیت سایبری 📝: می خواهید در مورد امنیت سایبری، هک، پنتست، ایمن سازی شبکه های بزرگ و وب سایت بیاموزید..💻🖥📱
و گیج شده اید که از کجا شروع کنید و یاد بگیرید؟ این نقشه راه/راهنما فقط برای شماست.
بیاموزید (در این نقشه راه) - چگونه وارد امنیت سایبری برای مبتدیان شوید
#Roadmap
توسط -EthicalHack
@TryHackBoxOfficial
و گیج شده اید که از کجا شروع کنید و یاد بگیرید؟ این نقشه راه/راهنما فقط برای شماست.
بیاموزید (در این نقشه راه) - چگونه وارد امنیت سایبری برای مبتدیان شوید
#Roadmap
توسط -EthicalHack
@TryHackBoxOfficial
🔥2
دوستان رودمپی جدیدی به دستمون برسه خواهیم گذاشت با هشتگ #roadmap دنبال کنید .
یکی از رودمپ هارا انتخاب کنید و شروع به یادگیری کنید ما هم منابع و پست آموزشی میذاریم که به شما در این راه کمک کند .
یکی از رودمپ هارا انتخاب کنید و شروع به یادگیری کنید ما هم منابع و پست آموزشی میذاریم که به شما در این راه کمک کند .
❤5👍1
🗺 🗺 نقشه راه DevOps 2024.
• یک نقشه راه DevOps جالب و بهروز داشته باشید که شامل پیوندهای ضروری به موارد آموزشی برای هر مرحله از مسیر است.
➡️ https://github.com/milanm/DevOps-Roadmap
- GIT;
- Learn one programming language;
- Learn Linux & Scripting;
- Learn Networking & Security;
- Learn Server Management;
- Learn Containers;
- Learn Container Orchestration;
- Learn Infrastructure as a code;
- Learn CI/CD;
- Learn Monitoring & Observability;
- Learn one Cloud provider;
- Learn Software Engineering Practices;
- Additional resources;
- Tools;
- Books.
#DevOps
@TryHackBoxOfficial
• یک نقشه راه DevOps جالب و بهروز داشته باشید که شامل پیوندهای ضروری به موارد آموزشی برای هر مرحله از مسیر است.
➡️ https://github.com/milanm/DevOps-Roadmap
- GIT;
- Learn one programming language;
- Learn Linux & Scripting;
- Learn Networking & Security;
- Learn Server Management;
- Learn Containers;
- Learn Container Orchestration;
- Learn Infrastructure as a code;
- Learn CI/CD;
- Learn Monitoring & Observability;
- Learn one Cloud provider;
- Learn Software Engineering Practices;
- Additional resources;
- Tools;
- Books.
#DevOps
@TryHackBoxOfficial
This media is not supported in your browser
VIEW IN TELEGRAM
⚜⚜⚜⚜⚜⚜ “نوروز” یادگار دین زرتشت مهر کوروش جام جمشید تیرآرش خون سهراب رخش رستم عشق بابک و یادگار جمشید بزرگ بزرگترین جشن ایرانیان بر شما خجسته باد. ���
@TryHackBox
@TryHackBoxOfficial
@TryHackBox
@TryHackBoxOfficial
👍2❤1
آماده کردن خُوان نوروزی ( سفره هفت سین ) به رسم نیاکان ؛ در کنار آرامگاه پدر ایرانزمین « کوروش بزرگ »
پیشاپیش نوروز را بر همه همراهان تبریک گفته و سال خوبی را برای همگی آرزو داریم
@TryHackBoxOfficial
پیشاپیش نوروز را بر همه همراهان تبریک گفته و سال خوبی را برای همگی آرزو داریم
@TryHackBoxOfficial
👍5❤2
مهارت های جدید را رایگان بیاموزید:
1. HTML ➝ http://freecodecamp.org
2. CSS ➝http://css-tricks.com
3. JavaScript ➝ http://javanoscript30.com
4. React ➝ http://react-tutorial.app
5. Tailwind CSS ➝ http://scrimba.com
6. Vue ➝ http://vueschool.io
7. Python ➝ http://pythontutorial.net
8. SQL ➝http://sqlbolt.com
9. Git and GitHub ➝ http://GitFluence.com
10. Blockchain ➝ http://Cryptozombies.io
11. Mongo DB ➝ http://mongodb.com
12. Node JS ➝ http://nodejsera.com
@TryHackBoxOfficial
1. HTML ➝ http://freecodecamp.org
2. CSS ➝http://css-tricks.com
3. JavaScript ➝ http://javanoscript30.com
4. React ➝ http://react-tutorial.app
5. Tailwind CSS ➝ http://scrimba.com
6. Vue ➝ http://vueschool.io
7. Python ➝ http://pythontutorial.net
8. SQL ➝http://sqlbolt.com
9. Git and GitHub ➝ http://GitFluence.com
10. Blockchain ➝ http://Cryptozombies.io
11. Mongo DB ➝ http://mongodb.com
12. Node JS ➝ http://nodejsera.com
@TryHackBoxOfficial
www.freecodecamp.org
Learn to Code — For Free
👍5❤1
رودمپ یادگیری رایگان Binary Exploitation از دید DayZeroSec (نسخه 2024)
برای افرادی که علاقمند به توسعه ی اکسپلویت در باینری هستن، معمولا دو سوال مطرحه:
۱. آیا در سال 2024، توسعه اکسپلویت در باینری، ارزش وقت گذاشتن رو داره یا نه؟
۲. اگه ارزشش داره، چطوری شروع کنیم، آیا یک رودمپ یا مسیر یادگیری (رایگان) برای توسعه اکسپلویت در باینری وجود داره یا نه؟
در این پست میخواییم به این دو سوال مهم و کلیدی از دید DayZeroSec جواب بدیم.
DayZeroSec
یک بلاگ و پادکست در خصوص امنیت سایبری هستش که از دو محقق امنیتی در زمینه کشف آسیب پذیری و توسعه اکسپلویت، بنام Specter و ZI تشکیل شده. اغلب موضوعاتی هم که پوشش میدن در خصوص اکسپلویت کردن باینری یا Binary Exploitation هستش. نوشته پیشرو هم توسط ZI نوشته شده.
@TryHackBoxOfficial
برای افرادی که علاقمند به توسعه ی اکسپلویت در باینری هستن، معمولا دو سوال مطرحه:
۱. آیا در سال 2024، توسعه اکسپلویت در باینری، ارزش وقت گذاشتن رو داره یا نه؟
۲. اگه ارزشش داره، چطوری شروع کنیم، آیا یک رودمپ یا مسیر یادگیری (رایگان) برای توسعه اکسپلویت در باینری وجود داره یا نه؟
در این پست میخواییم به این دو سوال مهم و کلیدی از دید DayZeroSec جواب بدیم.
DayZeroSec
یک بلاگ و پادکست در خصوص امنیت سایبری هستش که از دو محقق امنیتی در زمینه کشف آسیب پذیری و توسعه اکسپلویت، بنام Specter و ZI تشکیل شده. اغلب موضوعاتی هم که پوشش میدن در خصوص اکسپلویت کردن باینری یا Binary Exploitation هستش. نوشته پیشرو هم توسط ZI نوشته شده.
@TryHackBoxOfficial
dayzerosec
Keeping it technical since 2019. Providing exploit developers, security researchers, bug bounty hunters and others interested in the latest vulnerability research with a weekly podcast.
توسعه ی اکسپلویت چیه؟
توسعه ی اکسپلویت (Exploit development یا ExploitDev)، بویژه اکسپلویت کردن در باینری (Binary Exploitation) ، شامل تبدیل یک باگ خرابی حافظه (Memory Corruption) در نرمافزار، به چیزی مفید مانند اجرای کد دلخواه (RCE) هستش.
برخلاف اکسپلویتهای سطح بالاتر مانند SQL injection، توسعه اکسپلویت در باینری، نیازمند یک فرآیند توسعه پیچیدهتر هستش که شبیه به برنامه نویسی مجدد نرمافزار برای اهداف مدنظرتون هستش. با این حال، با پیچیدهتر شدن اکسپلویتهای سطح بالاتر، این اصطلاح بطور گستردهتری استفاده میشه و انتظار میره این روند ادامه پیدا کنه.
آیا توسعه اکسپلویت در حال از بین رفتن؟ آیا هنوز ارزش یادگیری رو داره؟
توسعه اکسپلویت یک مهارت تخصصیِ که حتی در بین هکرها هم خیلی برجسته هستش و اغلب به عنوان نوعی جادوی سیاه دیده میشه. در حالیکه تقاضا برای رسیدگی به مسائل امنیتی سطح بالا بیشتر هستش، باگهای خرابی حافظه بدلیل شدت بالقوه اونا همچنان حیاتی هستن.
نمیشه گفت که یادگیری اون برای شما ارزش داره یا نه، اما میشه گفت که هنوز آیندهای برای این کار وجود داره. برای برخی افکار درباره آینده اکسپلویت، میتونید قسمت 250 ام پادکست DAY[0] با موضوع Future of Exploitation Development رو گوش بدید. (ویدئو در پایین )
@TryHackBoxOfficial
توسعه ی اکسپلویت (Exploit development یا ExploitDev)، بویژه اکسپلویت کردن در باینری (Binary Exploitation) ، شامل تبدیل یک باگ خرابی حافظه (Memory Corruption) در نرمافزار، به چیزی مفید مانند اجرای کد دلخواه (RCE) هستش.
برخلاف اکسپلویتهای سطح بالاتر مانند SQL injection، توسعه اکسپلویت در باینری، نیازمند یک فرآیند توسعه پیچیدهتر هستش که شبیه به برنامه نویسی مجدد نرمافزار برای اهداف مدنظرتون هستش. با این حال، با پیچیدهتر شدن اکسپلویتهای سطح بالاتر، این اصطلاح بطور گستردهتری استفاده میشه و انتظار میره این روند ادامه پیدا کنه.
آیا توسعه اکسپلویت در حال از بین رفتن؟ آیا هنوز ارزش یادگیری رو داره؟
توسعه اکسپلویت یک مهارت تخصصیِ که حتی در بین هکرها هم خیلی برجسته هستش و اغلب به عنوان نوعی جادوی سیاه دیده میشه. در حالیکه تقاضا برای رسیدگی به مسائل امنیتی سطح بالا بیشتر هستش، باگهای خرابی حافظه بدلیل شدت بالقوه اونا همچنان حیاتی هستن.
نمیشه گفت که یادگیری اون برای شما ارزش داره یا نه، اما میشه گفت که هنوز آیندهای برای این کار وجود داره. برای برخی افکار درباره آینده اکسپلویت، میتونید قسمت 250 ام پادکست DAY[0] با موضوع Future of Exploitation Development رو گوش بدید. (ویدئو در پایین )
@TryHackBoxOfficial
Media is too big
VIEW IN TELEGRAM
Future of Exploit Development Follow-up (Episode 250)
@TryHackBoxOfficial
@TryHackBoxOfficial
پیش نیازها:
انگیزه داشته باشید:
انگیزه در یادگیری توسعه اکسپلویت امری کلیدی هستش. بجای اینکه خودتون رو مجبور به گذروندن موضوعاتی کنید که احساس خستگی میکنید، به علایق خودتون عمل کنید. اگه علاقه خودتون رو از دست دادید، موضوع رو عوض کنید و بعداً برگردید. حفظ انگیزه مهمتر از دنبال کردن ترتیب “درست” هستش. در طول این مسیر ناامید خواهید شد، ناامیدی بخش کلیدی توسعه اکسپلویت هستش و شما باید یاد بگیرید که اونرو بپذیرید و به پیش برید.
یادگیری زبان برنامه نویسی C :
یادگیری C به معنای تبدیل شدن به یک برنامهنویس C نیست، بلکه درک مدل حافظه CPU هستش. از اونجایی که باگهای خرابی حافظه در این سطح به حافظه حمله میکنن، C دقیقترین مدل ذهنی رو ارائه میده.
شما باید درک جامعی از حافظه نرمافزار، مناطق مختلف، تخصیص ها و اشاره گرها داشته باشید. پست Evan Miller با عنوان “You Can’t Dig Upwards” مدل ذهنی رو که از نوشتن C بدست میارید و در زبانهایی مانند پایتون بدست نمیارید رو توضیح میده.
کد ماشین/زبان اسمبلی x86-x64 :
بسیاری از منابع توصیه شده بر روی اکسپلویت کردن باینریهای x86-x64 تمرکز دارن که در دسکتاپها و لپتاپها رایج هستن. برخلاف برنامهنویسها، توسعه دهندگان اکسپلویت با کد ماشین “خام” کار میکنن که فاقد اکثر امکانات موجود برای برنامهنویسهاست.
درک اونچه که خود CPU میبینه مهمه. برخی از موضوعات مهم برای درک، شامل موارد زیر هستن:
قراردادهای فراخوانی توابع و سیستم کالها (Syscall)
تقسیم بندی حافظه (Memory segmentation)
ترجمه نوعهای سطح بالا به بایتهای خام (raw bytes) (در اسمبلی، همه چیز فقط بایت در حافظه یا رجیستر هستش)
برای یادگیری این موارد میتونید از دوره ی رایگان مهندسی معکوس نرم افزار (Software Reverse Engineering) استفاده کنید که با محوریت درک کدهای اسمبی در حال انتشار هستش.
دانش یک زبان اسکریپت نویسی:
اکسپلویت کردن شامل تعامل با نرمافزارهای دیگه هستش که اغلب با استفاده از یک زبان اسکریپتنویسی انجام میشه. پایتون و کتابخونه PwnTools انتخابهای رایجی هستن، اما هر زبانی دیگه ای رو میتونید برای این کار انتخاب کنید.
دانش اولیه استفاده از لینوکس:
بیشتر منابع مبتنی بر لینوکس هستن، بنابراین باید با ترمینال لینوکس و ابزارهای خط فرمان رایج راحت باشید.
Pwn College – Fundamentals :
بخش Fundamentals ماژولهایی رو ارائه میده که بیشتر این موضوعات رو پوشش میدن و ارزش بررسی قبل از شروع رو دارن.
راه اندازی محیط:
منابعی که اینجا معرفی میشن، سعی شده مواردی باشن که به راحتی در دسترس باشن. مشکل اصلی نسخه ی قبلی رودمپ، این بود که راه اندازی یک محیط کاری سخت بود.
بیشتر منابعی که اینجا معرفی شدن رو میتونید با یک ویرایشگر متن برای یادداشتهای شخصی و یک مرورگر طی کنید. البته برای اجرای برخی از باینری ها باید دسترسی به لینوکس داشته باشید که برای این کار میتونید از یک ماشین مجازی استفاده کنید. البته یک بخش اختیاری هم وجود داره که هدفش بررسی توسعه ی اکسپلویت در معماری های دیگه هستش و بنابراین برای این بخش، نیاز به اجرای باینری در Qemu دارید.
@TryHackBoxOfficial
انگیزه داشته باشید:
انگیزه در یادگیری توسعه اکسپلویت امری کلیدی هستش. بجای اینکه خودتون رو مجبور به گذروندن موضوعاتی کنید که احساس خستگی میکنید، به علایق خودتون عمل کنید. اگه علاقه خودتون رو از دست دادید، موضوع رو عوض کنید و بعداً برگردید. حفظ انگیزه مهمتر از دنبال کردن ترتیب “درست” هستش. در طول این مسیر ناامید خواهید شد، ناامیدی بخش کلیدی توسعه اکسپلویت هستش و شما باید یاد بگیرید که اونرو بپذیرید و به پیش برید.
یادگیری زبان برنامه نویسی C :
یادگیری C به معنای تبدیل شدن به یک برنامهنویس C نیست، بلکه درک مدل حافظه CPU هستش. از اونجایی که باگهای خرابی حافظه در این سطح به حافظه حمله میکنن، C دقیقترین مدل ذهنی رو ارائه میده.
شما باید درک جامعی از حافظه نرمافزار، مناطق مختلف، تخصیص ها و اشاره گرها داشته باشید. پست Evan Miller با عنوان “You Can’t Dig Upwards” مدل ذهنی رو که از نوشتن C بدست میارید و در زبانهایی مانند پایتون بدست نمیارید رو توضیح میده.
کد ماشین/زبان اسمبلی x86-x64 :
بسیاری از منابع توصیه شده بر روی اکسپلویت کردن باینریهای x86-x64 تمرکز دارن که در دسکتاپها و لپتاپها رایج هستن. برخلاف برنامهنویسها، توسعه دهندگان اکسپلویت با کد ماشین “خام” کار میکنن که فاقد اکثر امکانات موجود برای برنامهنویسهاست.
درک اونچه که خود CPU میبینه مهمه. برخی از موضوعات مهم برای درک، شامل موارد زیر هستن:
قراردادهای فراخوانی توابع و سیستم کالها (Syscall)
تقسیم بندی حافظه (Memory segmentation)
ترجمه نوعهای سطح بالا به بایتهای خام (raw bytes) (در اسمبلی، همه چیز فقط بایت در حافظه یا رجیستر هستش)
برای یادگیری این موارد میتونید از دوره ی رایگان مهندسی معکوس نرم افزار (Software Reverse Engineering) استفاده کنید که با محوریت درک کدهای اسمبی در حال انتشار هستش.
دانش یک زبان اسکریپت نویسی:
اکسپلویت کردن شامل تعامل با نرمافزارهای دیگه هستش که اغلب با استفاده از یک زبان اسکریپتنویسی انجام میشه. پایتون و کتابخونه PwnTools انتخابهای رایجی هستن، اما هر زبانی دیگه ای رو میتونید برای این کار انتخاب کنید.
دانش اولیه استفاده از لینوکس:
بیشتر منابع مبتنی بر لینوکس هستن، بنابراین باید با ترمینال لینوکس و ابزارهای خط فرمان رایج راحت باشید.
Pwn College – Fundamentals :
بخش Fundamentals ماژولهایی رو ارائه میده که بیشتر این موضوعات رو پوشش میدن و ارزش بررسی قبل از شروع رو دارن.
راه اندازی محیط:
منابعی که اینجا معرفی میشن، سعی شده مواردی باشن که به راحتی در دسترس باشن. مشکل اصلی نسخه ی قبلی رودمپ، این بود که راه اندازی یک محیط کاری سخت بود.
بیشتر منابعی که اینجا معرفی شدن رو میتونید با یک ویرایشگر متن برای یادداشتهای شخصی و یک مرورگر طی کنید. البته برای اجرای برخی از باینری ها باید دسترسی به لینوکس داشته باشید که برای این کار میتونید از یک ماشین مجازی استفاده کنید. البته یک بخش اختیاری هم وجود داره که هدفش بررسی توسعه ی اکسپلویت در معماری های دیگه هستش و بنابراین برای این بخش، نیاز به اجرای باینری در Qemu دارید.
@TryHackBoxOfficial