- عنوان: Black Hat Go / Go Programming For Hackers and Pentesters
- نویسنده: Tom Steel
- حوزه: آزمون نفوذ
- سال انتشار: 2019
- تعداد صفحه: 593
- زبان اصلی: انگلیسی
- نوع فایل: pdf
- حجم فایل: 22.5 مگابایت
برای حدود شش سال، ما سه نفر یکی از بزرگترین روشهای مشاوره اختصاصی تست نفوذ آمریکای شمالی را رهبری میکردیم. ما بهعنوان مشاور اصلی، کارهای پروژه فنی، از جمله آزمایشهای نفوذ شبکه را از طرف مشتریان خود اجرا کردیم – اما همچنین در توسعه ابزارها، فرآیندها و روششناسی بهتر پیشگام بودیم. و در برخی موارد، Go را به عنوان یکی از زبان های توسعه اولیه خود پذیرفتیم. Go بهترین ویژگی های سایر زبان های برنامه نویسی را ارائه می دهد و تعادلی بین عملکرد، ایمنی و کاربر پسند بودن ایجاد می کند. به زودی، ما آن را به عنوان زبان انتخابی خود در هنگام توسعه ابزار پیش فرض قرار دادیم. در نهایت، ما حتی متوجه شدیم که به عنوان مدافع زبان عمل می کنیم و از همکاران خود در صنعت امنیت فشار می آوریم تا آن را امتحان کنند. ما احساس کردیم که مزایای Go حداقل قابل بررسی است. در این کتاب، ما شما را به سفری در زبان برنامه نویسی Go از دیدگاه متخصصان امنیتی و هکرها می بریم. برخلاف سایر کتابهای هک، ما فقط به شما نشان نمیدهیم که چگونه ابزارهای شخص ثالث یا تجاری را خودکار کنید (اگرچه کمی به آن خواهیم پرداخت). در عوض، ما به موضوعات کاربردی و متنوعی خواهیم پرداخت که به یک مشکل خاص، پروتکل یا تاکتیک مفید برای دشمنان نزدیک می شود. ما ارتباطات TCP، HTTP و DNS را پوشش خواهیم داد، با Metasploit و Shodan تعامل خواهیم داشت، سیستمهای فایل و پایگاههای داده را جستجو میکنیم، پورتهای بهرهبرداری از زبانهای دیگر به Go، نوشتن توابع اصلی یک کلاینت SMB، حمله به ویندوز، کامپایل متقابل باینریها، خرابکاری کریپتو، با کتابخانه های C تماس بگیرید، با API ویندوز تعامل کنید، و خیلی، خیلی بیشتر. جاه طلبانه است! بهتره شروع کنیم . . این کتاب برای کسانی است که می خواهند یاد بگیرند چگونه ابزارهای هک خود را با استفاده از Go توسعه دهند. در طول دوران حرفه ای خود، و به ویژه به عنوان مشاور، از برنامه نویسی به عنوان یک مهارت اساسی برای آزمایش کنندگان نفوذ و متخصصان امنیتی دفاع کرده ایم. به طور خاص، توانایی کدنویسی درک شما را از نحوه عملکرد نرم افزار و نحوه شکستن آن افزایش می دهد. همچنین، اگر به جای یک توسعهدهنده قدم گذاشتهاید، قدردانی جامعتری از چالشهایی که آنها در امنیت نرمافزار با آنها مواجه هستند به دست خواهید آورد، و میتوانید از تجربه شخصی خود برای توصیه بهتر اقدامات کاهشدهنده، حذف موارد مثبت کاذب و یافتن آسیبپذیریهای مبهم استفاده کنید. کدنویسی اغلب شما را مجبور می کند با کتابخانه های شخص ثالث و پشته ها و چارچوب های برنامه های مختلف تعامل داشته باشید. برای بسیاری از افراد (از جمله ما)، این تجربه عملی و سرهم بندی است که به بزرگترین پیشرفت شخصی منجر می شود. برای استفاده حداکثری از این کتاب، ما شما را تشویق میکنیم که مخزن کد رسمی کتاب را شبیهسازی کنید تا تمام نمونههای کاری را که در مورد آن بحث خواهیم کرد، داشته باشید. نمونه ها را در https://github.com/blackhat-go/bhg/ بیابید.
For about six years, the three of us led one of North America’s largest dedicated penetration-testing consulting practices. As principal consultants, we executed technical project work, including network penetration tests, on behalf of our clients— but we also spearheaded the development of better tools, processes, and methodology. And at some point, we adopted Go as one of our primary development languages. Go provides the best features of other programming languages, striking a balance between performance, safety, and user-friendliness. Soon, we defaulted to it as our language of choice when developing tools. Eventually, we even found ourselves acting as advocates of the language, pushing for our colleagues in the security industry to try it. We felt the benefits of Go were at least worthy of consideration. In this book, we’ll take you on a journey through the Go programming language from the perspective of security practitioners and hackers. Unlike other hacking books, we won’t just show you how to automate third-party or commercial tools (although we’ll touch on that a little). Instead, we’ll delve into practical and diverse topics that approach a specific problem, protocol, or tactic useful to adversaries. We’ll cover TCP, HTTP, and DNS communications, interact with Metasploit and Shodan, search filesystems and databases, port exploits from other languages to Go, write the core functions of an SMB client, attack Windows, cross-compile binaries, mess with crypto, call C libraries, interact with the Windows API, and much, much more. It’s ambitious! We’d better begin . . . This book is for anyone who wants to learn how to develop their own hacking tools using Go. Throughout our professional careers, and particularly as consultants, we’ve advocated for programming as a fundamental skill for penetration testers and security professionals. Specifically, the ability to code enhances your understanding of how software works and how it can be broken. Also, if you’ve walked in a developer’s shoes, you’ll gain a more holistic appreciation for the challenges they face in securing software, and you can use your personal experience to better recommend mitigations, eliminate false positives, and locate obscure vulnerabilities. Coding often forces you to interact with third-party libraries and various application stacks and frameworks. For many people (us included), it’s hands-on experience and tinkering that leads to the greatest personal development. To get the most out of this book, we encourage you to clone the book’s official code repository so you have all the working examples we’ll discuss. Find the examples at https://github.com/blackhat-go/bhg/.
این کتاب را میتوانید بصورت رایگان از لینک زیر دانلود نمایید.
Download: Black Hat Go
نظرات کاربران