└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Information security / Hacking for noobs 2 | 3 | 4 | A gentle introduction for beginners that want to start in information security. Though, the core concepts part will benefit anyone that wants to start in IT. Pull requests welcome. 5 | 6 | The background for this is that @twowreck said one day, hey @kisasondi let’s write a document that will help the beginners at our Faculty that want to learn more about information security, so we can streamline the process of “where to start” for 1st year students. We hope this document will be helpful for them, and everyone else that can find it interesting. Well, we quit the Faculty, but we still want this to be public for benefit of others. 7 | 8 | This is not a in-depth document, but more as a “where to start” document that will give beginners a nice bootstrap (and keep you busy for at least 3-6 months) 9 | 10 | For updates, just send a pull request or send me an e-mail. 11 | 12 | # Core concepts: 13 | “I teached you so that one day you can teach other people...” 14 | * A guy who teached @milobit a lot of things. :) 15 | 16 | **Note:** Expertise is important, and you should strive for expertise in one general field / specialty. Some people say that on average you need 7 years of dedicated work to become proficient and master a field. But with expertise, It’s important to learn concepts in other fields of study. You should strive to identify concepts, learn how things work from a broad outline and then be able to realize the limitations of your knowledge and learn something more about the topic you need. 17 | * See: The T-Shaped individual 18 | 19 | 20 | If you can’t find any article any more, use archive.org and find an archived version, or even better, submit a pull request with a fix :) You can do it straight from the GitHub's UI. Just press the little pencil icon. 21 | 22 | Don’t mistake perceived expertise for actual expertise. Read about the Dunning-Kruger effect: 23 | * https://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect 24 | 25 | 26 | Example: You are facing a tough problem, that problem will be easy to solve if you know: 27 | 1. Why this problem is “hard”, i.e. What is your actual problem. 28 | 2. How we call the components in your problem? 29 | 3. What is the technical name for your issue/problem? 30 | 31 | 32 | After you know that, using Google is simple :) 33 | 34 | 35 | Read some philosophy: 36 | * This document is old, but the old school adages still stand today: http://www.catb.org/esr/faqs/hacker-howto.html 37 | 38 | Read your local misdemeanor and criminal laws! 39 | * https://www.zakon.hr/z/98/Kazneni-zakon 40 | * Especially note computer crime acts: (in Croatia: Kaznena djela protiv računalnih sustava, programa i podataka) 41 | * https://www.zakon.hr/z/52/Prekr%C5%A1ajni-zakon 42 | 43 | 44 | **If you think about becoming an information security professional or a hacker in order to break into systems, DDoS etc, let’s get one thing straight, you will get caught, and put into jail (or worse). It’s inevitable (and why it is inevitable, you will know after you spend some time learning about forensics...). If you want a cool story, do some googling on how they caught "Dread Pirate Roberts" aka Ross Ulbricht** 45 | 46 | Understand this too: https://en.wikipedia.org/wiki/Locard%27s_exchange_principle 47 | 48 | 49 | Like doctors, information security is an honour based profession: 50 | 1. Always follow the law and don’t break the law. 51 | 2. Don’t be evil 52 | 3. Follow ethics and professional codes of conduct: 53 | 1. http://www.issa.org/?page=CodeofEthics 54 | 2. https://www.ieee.org/about/corporate/governance/p7-8.html 55 | 1. Don’t feed your ego. Even if you are 50 years old and you have 30 years experience in Infosec, you still have plenty to learn. Be humble and truthful. Some of the biggest experts i know are more humble than most noobs in the field. 56 | 2. Don’t say you are a hacker. If you keep saying that, trust me, you are not a hacker. 57 | 3. Don’t learn to hack. Get enough IT / Computer science knowledge, and hacking will happen by itself. You need to know how something works to be a expert or bend it to your will 58 | 4. Share knowledge and contribute to open source software. 59 | 1. You should be a force of good and help people, not be a elitist (see under “ego” above) 60 | 61 | 62 | Read about the following concepts, especially Dunning-Kruger: 63 | * https://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect 64 | * https://understandinginnovation.files.wordpress.com/2015/06/dunning-kruger-0011.jpg?w=640 65 | * https://en.wikipedia.org/wiki/Impostor_syndrome 66 | 67 | 68 | Read this (yes, it’s important): 69 | * http://hackingdistributed.com/2018/05/30/choose-your-own-security-disclosure-adventure/ 70 | 71 | Christopher Wiley's book Mindf\*ck gives a great tale about ethics in AI and information security. Read it as a cautionary tale. 72 | 73 | 74 | Dedicate at least 1h a day to learning how X works (where X is anything IT / Computer related), it doesn’t matter if you learn how to code in Python, how BGP works or how FreeBSD works, as long as you are learning more, you are getting better and better. 75 | 76 | 77 | These three articles give a nice outline on how to learn: 78 | * https://azeria-labs.com/the-importance-of-deep-work-the-30-hour-method-for-learning-a-new-skill/ 79 | * https://azeria-labs.com/paradox-of-choice/ 80 | * https://azeria-labs.com/the-process-of-mastering-a-skill/ 81 | 82 | If you want a high level course on information security, covering a large number of topics and concepts, consider the CS50 intro to infosec: 83 | * https://www.youtube.com/playlist?list=PLhQjrBD2T383Cqo5I1oRrbC1EKRAKGKUE 84 | 85 | So, for starts, let’s talk about behaviour and some information, read this: 86 | * https://increment.com/security/approachable-threat-modeling/ 87 | * https://www.belfercenter.org/CyberPlaybook 88 | * https://theintercept.com/2017/11/19/how-to-protect-yourself-against-spearphishing-a-comic-explanation/ 89 | * https://medium.com/@thegrugq/campaign-information-security-ff6ac49966e1 90 | * https://techsolidarity.org/resources/congressional_howto.html 91 | * When you don’t know what to read, read something from this list: 92 | * https://scrty.io/ 93 | 94 | 95 | Learn how to play with systems / devices without breaking stuff and making that playing simple and easy. Use virtual machines (and later on, build your own playground/lab). First off, read on what a Virtual Machine is... 96 | Download and install Virtualbox: 97 | * https://www.virtualbox.org/wiki/Downloads 98 | * Learn what’s NAT, Bridged and Host-Only networking does, and why is it important: 99 | * Learn what’s the VirtualBox Extension Pack (and why you want it) 100 | * Learn what guest additions are (hint: open a terminal and enter: apt update && apt install virtualbox-guest-utils in a VM to enable dynamic screen resizing, shared folders/clipboard etc) 101 | * Learn how shared folders work (and why that’s dangerous if you run malware in a VM) 102 | * Learn what are snapshots! They enable experimenting and reverting to where things were not broken. 103 | * Learn what’s an ova file (appliance export/import) 104 | 105 | 106 | Install Ubuntu desktop and ubuntu server in a VM. If you are wondering if you should go with the “latest and greatest” or LTS (Long term support) - Go with Long Term Support (LTS). 107 | * https://www.ubuntu.com/desktop 108 | * https://www.ubuntu.com/download/server 109 | * Take snapshots, so you can easily revert. 110 | 111 | 112 | Pass the entire LinuxJourney tutorial: https://linuxjourney.com/ 113 | * If you like it or not, you need to know the basics: How a modern operating system works. You don’t have to know how the CFS scheduler works in the kernel (and how it is implemented), but you should know what a scheduler is, what is a kernel etc, and be comfortable in using a modern Linux based operating system (in the shell, ie. command line, not in the GUI :) ). 114 | * The man command will give you the manual for any command. Learn how to use man. Read the manpages (and do some examples) for the following commands: ls, grep, find, which, curl, wget, ssh, systemctl 115 | 116 | 117 | As you get better and better, your curiosity will guide you to explore the systems in depth. Someone might download the entire Linux kernel source and read it through (or you won’t care about operating systems that much, and you will see how your favourite web programming framework works under the hood, or how that nice pair of bluetooth headphones communicate with your PC. It’s irrelevant what, curiosity and getting better and better in knowledge is what’s important) 118 | 119 | Check out the MIT's Missing Semester, it's a good resource on how to use the command line, text editors, etc: 120 | * https://missing.csail.mit.edu/ 121 | 122 | Learn at least one high level language (Python, Ruby, Go… ): 123 | * This is a nice tutorial: 124 | * https://www.codecademy.com/catalog/language/python 125 | * One additional might be the official python tutorial. 126 | * 2.x or 3.x? Learn Python3 as 2.7 is deprecated and not maintained anymore. 127 | * IPython is a very useful shell if you are starting out : https://ipython.org/ 128 | * Install Visual Studio Code, add the python plugin/lint and play around. 129 | * Also very cool python video tutorials: https://www.youtube.com/user/sentdex 130 | * I repeat, you don’t have to be an expert, but pass some problems so you get to at least to the mid of the intermediate list here: 131 | * https://adriann.github.io/programming_problems.html 132 | * This is also a great list: 133 | * https://www.interviewbit.com/ 134 | 135 | 136 | Get a solid intro to computer systems: 137 | * https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11 138 | * https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x 139 | * https://www.amazon.com/Computer-Science-Distilled-Computational-Problems/dp/0997316020 140 | * https://en.wikiversity.org/wiki/Introduction_to_Computer_Science 141 | * Some people like a book called “Computer Science Distilled: Learn the Art of Solving Computational Problems by W. Filho” 142 | * This is an awesome materiel in Computer Architecture: https://www.youtube.com/playlist?list=PL5Q2soXY2Zi9OhoVQBXYFIZywZXCPl4M_ 143 | * https://functionalcs.github.io/curriculum/ 144 | * https://github.com/ossu/computer-science 145 | 146 | Get some background on operating systems: 147 | * http://greenteapress.com/thinkos/thinkos.pdf 148 | * http://www.shubhro.com/2018/01/20/brushing-up-os-c/ 149 | * http://pages.cs.wisc.edu/~remzi/OSTEP/ 150 | 151 | Get to know how databases work: 152 | * https://www.youtube.com/watch?v=oeYBdghaIjc&list=PLSE8ODhjZXjbohkNBWQs_otTrBTrjyohi 153 | 154 | Get to know how networking works: 155 | * https://cs144.github.io/ 156 | 157 | Get a feel on how the web looks/works: 158 | * https://www.codecademy.com/catalog/language/html-css (Learn HTML/CSS) 159 | * https://www.codecademy.com/learn/introduction-to-javascript (Get some basic intro to JS) 160 | 161 | 162 | Important note: If you want to be an expert, let’s say in web application security, you should know how the web works and how web applications work in order to be successful. I.e. put in the work so you know how the underlying system works, and after that it will be easy to understand why something is broken (or to find if something is broken). For example, this is best seen in good developers, when you show them where they introduced a vulnerability, they instantly “get it” and know why this happened. They know the underlying concepts well enough to easily grasp the security concepts needed. This can be applied to any field: reverse engineering, hardware hacking, social engineering… 163 | 164 | One of the key concepts for technical and organizational parts of security is threat modeling. There are two books, i highly recommend "Threat Modeling" by Izar Tarandach and Matthew J. Coles: 165 | * https://www.oreilly.com/library/view/threat-modeling/9781492056546/ 166 | 167 | Another great book threat modeling book is by A. Shostack: “Threat Modeling: Designing for Security” 168 | * https://www.amazon.com/Threat-Modeling-Designing-Adam-Shostack/dp/1118809998 169 | 170 | Second book you need to read is “Security Engineering” by Ross Anderson: 171 | * The whole book (get the third edition) is available for free here: https://www.cl.cam.ac.uk/~rja14/book.html 172 | * Lecture materials and videos are available here: https://www.cl.cam.ac.uk/teaching/1920/SWSecEng/materials.html 173 | * Or the print version of the book is available here: https://www.amazon.com/Security-Engineering-Building-Dependable-Distributed/dp/0470068523 174 | * If you can, read the latest edition. 175 | 176 | ## Learn how to think 177 | * The list of awesome falsehoods will help you challenge your assumptions about understanding simpleish problems https://github.com/kdeldycke/awesome-falsehood 178 | * This repository of mental models helps guide better decisions: https://fs.blog/mental-models/ 179 | * Check out this list of cognitive biases: https://en.wikipedia.org/wiki/List_of_cognitive_biases 180 | * Check out this list of common fallacies: https://en.wikipedia.org/wiki/List_of_fallacies 181 | 182 | ## Learn how to write better 183 | * Vonnegut's recommendations are simple, and applicable to reports and documents https://kmh-lanl.hansonhub.com/pc-24-66-vonnegut.pdf 184 | * Read Zinsser's book "On Writing Well" 185 | * Read Strunk & White's Elements of Style: http://www.gutenberg.org/ebooks/37134 186 | 187 | ## General carrer advice: 188 | * Moxie Marlinspike's carrer advice: https://moxie.org/2013/01/07/career-advice.html 189 | 190 | # Specializations 191 | 192 | 193 | ## Reverse engineering / malware analysis: 194 | 195 | You won’t be able to properly understand reverse engineering / binary exploitation if you don’t know a Low level language, start with C and ASM 196 | * Here are some cool resources to help you get started in C: 197 | * https://viewsourcecode.org/snaptoken/ 198 | * http://goalkicker.com/CBook/ 199 | * http://www.shubhro.com/2018/01/20/brushing-up-os-c/ 200 | 201 | 202 | Check this out: 203 | * Malwareunicorn’s RE 101 / 102 workshops: https://securedorg.github.io/ 204 | * Malwaretech’s RE challenges: https://www.malwaretech.com/beginner-malware-reversing-challenges 205 | Specialities: 206 | 207 | Wrongbaud's introduction to RE with Ghidra course is pretty interesting and approachable: 208 | * https://github.com/wrongbaud/hackaday-u 209 | * https://hackaday.io/course/172292-introduction-to-reverse-engineering-with-ghidra 210 | 211 | ## Appsec / WebAppSec: 212 | 213 | * Stanfords CS 253 is a good university level course that you can watch for an intro: 214 | * https://web.stanford.edu/class/cs253/ 215 | * https://www.youtube.com/playlist?list=PL1y1iaEtjSYiiSGVlL1cHsXN_kvJOOhu- 216 | * First: Write a couple of simple applications (a small blog engine, a twitter clone, a RESTfull API for a bookstore...) 217 | * Preferably in PHP, Java, Python, Golang :) 218 | * Try to do it manually. Now use the most popular framework for that language. 219 | * Try to become a semi competent developer. We have a lot of people who can find bugs, but not enough people who can find bugs and fix bugs. Try to become competent in development as this will pay dividends down the road. 220 | * Run and configure OWASP ZAP on your machine (https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project), yes ZAP has come a long way in the last year or two. 221 | * Try out Burp Suite Community Edition too (it's available in Kali) 222 | * PortSwigger's Web Security Academy is free (with user registration), but covers almost all crucial bases of todays webappsec: 223 | * https://portswigger.net/web-security 224 | * You can pass the challenges with burp community. 225 | * Rana Khalil has some walkthrough videos from the Web Academy (https://www.youtube.com/c/RanaKhalil101) 226 | * Run this: https://www.owasp.org/index.php/OWASP_Juice_Shop_Project , find all vulns :) 227 | * Now, remember the small apps you wrote? Find vulns in them. Need help? Read trough: 228 | * https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project 229 | * https://www.owasp.org/index.php/OWASP_Testing_Guide_v4_Table_of_Contents 230 | * This is an interesting exercise to pass: https://www.obeythetestinggoat.com/pages/book.html#toc 231 | * This is a nice set of writeups on bug bounties: 232 | * https://pentester.land/list-of-bug-bounty-writeups.html 233 | * Check out other appsec hackers tools like: gobuster / dirsearch / sqlmap / ffuf... 234 | 235 | 236 | ## Forensics / Reverse engineering 237 | 238 | * Contributions required :) 239 | * The case of the stolen szechuan sauce is a nice guided forensics challenge image set and walkthrough: https://dfirmadness.com/the-stolen-szechuan-sauce/ 240 | 241 | ## Cryptography: 242 | 243 | * Go over Cryptography I by Dan Boneh (Stanford) 244 | * https://www.coursera.org/learn/crypto 245 | * Read the book: Serious Cryptography by JP Aumasson 246 | * If you don’t understand anything from that book, research, google, etc. Make sure you understand the basic concepts and building blocks (primitives) 247 | * How do you use Elliptic curves for cryptography? Why do you have to use ECDH and ECDSA. 248 | * Research on how GnuPG works, explore why the web of trust works and what are the pros and cons of web of trust 249 | * Figure out how TLS works, can you in detail explain the following terms and how they work: 250 | * PKI, TLS handshake, SNI, Ciphersuite, Ephemeral ciphers and Perfect forward secrecy, how ECDHE is used in the handshake, how does the entire TLS process work? 251 | * Read the wireguard spec: https://www.wireguard.com/papers/wireguard.pdf 252 | * Read the Double Rachet spec: https://signal.org/docs/specifications/doubleratchet/ 253 | * Read the Bitcoin paper: https://bitcoin.org/bitcoin.pdf 254 | * All of the above show nice cryptographic systems. If you understand the above 3 papers, you will know how to research further. 255 | 256 | ## Open-source intelligence (OSINT): 257 | * Read some introductory articles to get familiar with what OSINT is: 258 | * [First Draft: How to get started in online investigations with open-source information](https://firstdraftnews.org/latest/how-to-get-started-in-online-investigations-with-open-source-intelligence-osint/) 259 | * [secjuice: An Introduction To Open Source Intelligence (OSINT) Gathering](https://www.secjuice.com/introduction-to-open-source-intelligence-osint/) 260 | * [SecurityTrails: What is OSINT and how can I make use of it?](https://securitytrails.com/blog/what-is-osint-how-can-i-make-use-of-it) 261 | * [Columbia Journalism Review: A Guide to Open-Source Intelligence](https://www.cjr.org/tow_center_reports/guide-to-osint-and-hostile-communities.php) 262 | * Work your way through some training resources and guides: 263 | * [**bellingcat guides:**](https://www.bellingcat.com/category/resources/how-tos/) e.g. ["a begginers guide to plane tracking"](https://www.bellingcat.com/resources/how-tos/2019/10/15/a-beginners-guide-to-flight-tracking/) 264 | * [First Draft: Training](https://firstdraftnews.org/training/) 265 | * [Explore the OSINT Framework](https://osintframework.com/) 266 | * Go through the [US Army Training Program (ATP 2-22.9): Open-Source Intelligence](https://fas.org/irp/doddir/army/atp2-22-9.pdf) to see what a more formal, advanced framework for OSINT looks like 267 | * A good book to read: [Open Source Intelligence Techniques](https://inteltechniques.com/book1.html) 268 | * Get your feet wet by practicing: 269 | * Help find missing people - [Trace Labs: Crowdsourced Open Source Intelligence For Missing Persons](https://www.tracelabs.org/): [Watch a video explaining it here.](https://www.youtube.com/watch?v=2puBmXfi9Z0) 270 | * [a Google a day](http://www.agoogleaday.com/) 271 | * [Verif!cation Twitter Bot](https://twitter.com/quiztime) 272 | * [Geoguessr](http://geoguessr.com/) 273 | * Blogs/Videos/Podcasts to follow: 274 | * [bellingcat](https://www.bellingcat.com) 275 | * [osintcurio.us](https://osintcurio.us/osintvideosandpodcasts/) 276 | * [The OSINT Podcast](http://osintpodcast.com/) 277 | * [Week in OSINT](https://medium.com/week-in-osint/week-in-osint-2019-43-bed274b01f26) 278 | 279 | * Other resources: 280 | * [Awesome OSINT: A GitHub repo full of OSINT resources](https://github.com/jivoi/awesome-osintz) 281 | * [Bellingcat's Online Investigation Toolkit](https://docs.google.com/document/d/1BfLPJpRtyq4RFtHJoNpvWQjmGnyVkfE2HYoICKOGguA/edit) 282 | * [OSINT Techniques: Starting OSINT Research](https://www.osinttechniques.com/blog/starting-osint-research) 283 | * [OSINT Rocket Chat](https://osint.team) 284 | 285 | ## ICS / SCADA security 286 | 287 | * https://tisiphone.net/2020/06/21/so-you-want-to-learn-ics-security/ 288 | * https://www.robertmlee.org/a-collection-of-resources-for-getting-started-in-icsscada-cybersecurity/ 289 | 290 | # Interesting assignment lists: 291 | 292 | 293 | ## Assignment list from @viss (Dan Tentler): 294 | 295 | Pick a company and tell me: 296 | - who is their head of security 297 | - everyone on their team all the way down 298 | - are these recognizable names or people? 299 | - are they randoms or are they part of the community 300 | - every social media profile available with every person found 301 | - an assessment of "are they just a cissp douche who doesnt care" or "are they legit, do they take shit seriously" 302 | - an assessment of "should I try to reach out this company for security services" based on their appetite for "actual security" not "checking boxes" 303 | 304 | Start up wordpress from scratch: 305 | - linux, apache, php, mysql. 306 | - don't harden it, just make it live 307 | - once it's up, install wpscan on another host and scan the blog 308 | - install several vulnerable plugins, and set the blogs password to something easily guessable 309 | - modify htaccess to deny permissions to anybody not you 310 | - install the sucuri security plugin and configure it. 311 | - run wpscan again, observe differences 312 | - using htaccess, block the wpscan user agent, and try wpscan again, observe results 313 | - attempt to shell the blog and gain access 314 | - setup a webshell 315 | - use the webshell against the target 316 | 317 | ## Assignment list from @da_667: 318 | * The original resource is available here: https://twitter.com/da_667/status/1041867361765269505 319 | * cybrary.it is a free resource that provides access to a bunch of different information security and/or general IT training courses. Alot of these courses are built around certifications. and if you don't know my stance on certifications Its true that they are NOT a requirement to get a job, but its also true that they won't hurt you. and even if you don't like them, or don't plan on getting the certification for the material you're watching, you still probably learned something valuable. 320 | * Codecademy and/or Khanacademy are "freemium training resources. That is, for the most part a lot of the stuff is free, some of the stuff may also be behind paywalls. Just to give you forewarning. 321 | * If you're more of a bookworm packt publishing gives out new, free books on a regular schedule. Additionally most of their book choices are fairly affordable as well. 322 | * http://leanpub.com is another website full of cheap books that, depending on the author and/or the material, the book might be in various stages of being done, and allow you to define what you pay for the book. 323 | * Keep a look out for when humble bundle is doing partnerships with nostarch press. NSP books are good and humblebundle makes them REALLY cheap. 324 | * another good, free resource for training would be http://opensecuritytraining.info/Training.html take a look at what they have to provide, there is a ton of valuable knowledge to pick up, and at no charge. 325 | * If you're looking for materials on reverse engineering, Mr. Yurichev's reverse engineering for beginners has been recommended repeatedly. https://yurichev.com/ 326 | * do you wanna learn how to fuckin' annihilate malware? @malwareunicorn 's RE101 and RE102 courses are extremely well put together, high quality and free: https://sites.google.com/secured.org/malwareunicorn/reverse-engineering 327 | * Want to learn about web applications and how to attack them? Samurai WTF. Comes with course documentation and a self-contained VM for practicing on. (please note that it is a little bit long in the tooth, but still serves the purpose): https://sourceforge.net/projects/samurai/ 328 | * Don’t forget the slides: https://sourceforge.net/projects/samurai/files/SamuraiWTF%20Course/ 329 | * While we're talking exploitation resources, its pretty basic, but metasploit unleashed is a GREAT resources for getting familiar with the metasploit framework and/or using as a cross-reference for remember command syntax.While we're talking about metasploit unleashed, lets talk about metasploitable. Metasploitable is an intentionally vulnerable VM that is older than dirt, and so full of holes it looks like an XCOM mission site after I've been done with it. 330 | * Before we move on to talking about wargames, CTFs and challenges, I almost forgot to mention that SANS cyberaces is a thing. http://www.cyberaces.org/courses/ while its a little bit old, its still a valuable free resource for learning some of the foundations out there. 331 | * Okay so now we talk about CTFs and other exercises. Before I even get started here. Shout out to @blackroomsec This huge catalog of challenges is amazing. https://www.blackroomsec.com/updated-hacking-challenge-site-links/ 332 | * his is a massive list of challenges and must have been a mother to put together. There is just so much to choose from there, you can't really go wrong. But let me tell you about some of my favorites. 333 | * first and foremost, I love the "overthewire" challenges. They have a learning curve that starts off super soft and easy to pick up, especially if you have some systems administration experience, but quickly get HARD once you think you have your shit together. 334 | * best part about it is that, if you get stuck, there are write-ups all over the net and how others managed to solve it. There is NO SHAME in looking up others write-ups if only to see if you can replicate their work. this isn't a competition. Its for your training and benefit. 335 | * along those lines, http://vulnhub.com is a website that hosts a huge variety of vulnerable virtual machines that are a unique challenge all their own. Most of them are called "boot2root" vms in that you are supposed to boot them up and through a trail of breadcrumbs get root 336 | 337 | 338 | # Misc interesting resources 339 | 340 | ARBCTF resources: 341 | * https://github.com/ARBCTF/resources/blob/master/README.md 342 | 343 | Misc but interesting stuff: 344 | * https://www.informationsecurity.ws/2015/12/the-cybersecurity-consultants-toolkit/ 345 | * http://www.pse-journal.hr/upload/files/pse/2017/4/vukovic.pdf 346 | 347 | Youtube - Infosec Educational Playlist: 348 | * https://www.youtube.com/playlist?list=PL091tVBWhjdRwEx2alle3d-qkGO5Rh05i 349 | 350 | HackTricks - Penetration Methodologies: 351 | * https://book.hacktricks.xyz/ 352 | 353 | # Youtube channels worth looking: 354 | 355 | **Really good stuff:** 356 | * [LiveOverflow](https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w) 357 | * [MalwareAnalysisForHedgehogs](https://www.youtube.com/channel/UCVFXrUwuWxNlm6UNZtBLJ-A) 358 | 359 | **Good stuff:** 360 | * [Nickolai Zeldovich](https://www.youtube.com/channel/UCgKtZlTRV1ruNPO_QOhCpVw) 361 | * [Pentester Academy TV](https://www.youtube.com/channel/UChjC1q6Ami7W0E71TzPZELA) 362 | * [scanlime](https://www.youtube.com/channel/UCaEgw3321ct_PE4PJvdhXEQ) 363 | * [noopkat](https://www.youtube.com/channel/UCoFU24KMXmCi4Sl3KIFPSVg) 364 | * [Onur Mutlu Lectures](https://www.youtube.com/channel/UCIwQ8uOeRFgOEvBLYc3kc3g) 365 | * [Marcus Niemietz](https://www.youtube.com/channel/UCtThfJl65L04ukWp0XZi3yg) 366 | * [Derek Rook](https://www.youtube.com/channel/UCMACXuWd2w6_IEGog744UaA) 367 | * [Samy Kamkar](https://www.youtube.com/channel/UC4m2G6T18_JcjwxwtwKJijw) 368 | * [IppSec](https://www.youtube.com/channel/UCa6eh7gCkpPo5XXUDfygQQA) 369 | * [OJ Reeves](https://www.youtube.com/channel/UCz2aqRQWMhJ4wcJq3XneqRg) 370 | * [Metasploitation](https://www.youtube.com/channel/UC9Qa_gXarSmObPX3ooIQZrg) 371 | * [Infected Packets](https://www.youtube.com/channel/UCio4BvuxdzRGWR9aXg7ztfQ) 372 | * [PyMoondra](https://www.youtube.com/channel/UC0bkqrWNBKxGZi-4gIfaCpg) 373 | * [Murmus CTF](https://www.youtube.com/channel/UCUB9vOGEUpw7IKJRoR4PK-A) 374 | * [fuzzysecurity](https://www.youtube.com/channel/UCF0HwgCMJ3ZXSktymhtIIqA) 375 | 376 | 377 | ## Etgar’s list: 378 | 379 | 380 | Liveoverflow 381 | * [Liveoverflow](https://www.youtube.com/channel/UClcE-kVhqyiHCcjYwcpfj9w) 382 | * [Murmus CTF](https://www.youtube.com/channel/UCUB9vOGEUpw7IKJRoR4PK-A) 383 | * [Gynvael](https://www.youtube.com/user/GynvaelEN) 384 | * [MalwareAnalysisHedgehog](https://www.youtube.com/channel/UCVFXrUwuWxNlm6UNZtBLJ-A) 385 | * [DefconConference](https://www.youtube.com/channel/UC6Om9kAkl32dWlDSNlDS9Iw) 386 | * [TheExploiteers](https://www.youtube.com/channel/UC3yU54eqJZeAXMcJCErj_DQ) 387 | * [CryptoCat](https://www.youtube.com/channel/UCEeuul0q7C8Zs5C8rc4REFQ) 388 | * [TheSecurityTube](https://www.youtube.com/channel/UCBRNlyf9lURksAEnM-pyQdA) 389 | * [S1GM4](https://www.youtube.com/channel/UCLzsoLvkQI7XXQfPG5XM47w) 390 | * [Derek Rook](https://www.youtube.com/channel/UCMACXuWd2w6_IEGog744UaA) 391 | * [Army cyber institute](https://www.youtube.com/user/ArmyCyberInstituteWP) 392 | * [HackHappy](https://www.youtube.com/channel/UCVakgfsqxUDo2uTmv9MV_cA) 393 | * [JackkTutorials](https://www.youtube.com/user/JackkTutorials) 394 | * [Seytonic](https://www.youtube.com/channel/UCW6xlqxSY3gGur4PkGPEUeA) 395 | * [HackerSploit](https://www.youtube.com/channel/UC0ZTPkdxlAKf-V33tqXwi3Q) 396 | * [Abdelkader Belcaid](https://www.youtube.com/channel/UCCKCh5N2MLGhtqEqIZYjP1Q) 397 | * [Cyber Security IPB](https://www.youtube.com/channel/UCH6CPf10u9uQu3w1DRhOliw) 398 | * [Black Hat](https://www.youtube.com/watch?v=bfH_Ah5X9v8) 399 | * [Tony Gambacorta](https://www.youtube.com/channel/UCGbeTQOPHwFikUlme8Txzvw) 400 | * [GalaxyNinja Top-Hat-Sec](https://www.youtube.com/channel/UCI9pfCytpEy89dJmMAl6p1Q) 401 | * [MalwareAnalysisForHedgehogs](https://www.youtube.com/channel/UCVFXrUwuWxNlm6UNZtBLJ-A) 402 | * [Candan BÖLÜKBAŞ](https://www.youtube.com/channel/UC7NmOUOJn0Vr5BrfzjgBD2A) 403 | * [L!NK](https://www.youtube.com/channel/UCv6i6WVf-KeUeXFmp9oy29w) 404 | * [HackersOnBoard](https://www.youtube.com/channel/UChGDEluRG9r5kCecRAQTx_Q) 405 | * [NetSecProf](https://www.youtube.com/channel/UCyoaOIKSqZTiM9-QcoIbNSg) 406 | * [howCode (general programming)](https://www.youtube.com/channel/UCovR8D97-8qmQ8hWQW0d3ew) 407 | * [betaCoding](https://www.youtube.com/user/betacoding) 408 | * [DrapsTV](https://www.youtube.com/user/DrapsTV) 409 | * [Coding Tech](https://www.youtube.com/channel/UCtxCXg-UvSnTKPOzLH4wJaQ) 410 | * [Fun fun functions](https://www.youtube.com/channel/UCO1cgjhGzsSYb1rsB4bFe4Q) 411 | * [Siraj Raval](https://www.youtube.com/channel/UCWN3xxRkmTPmbKwht9FuE5A) 412 | * [Free Training](https://www.youtube.com/channel/UC3RYdKzMQmdz8I8IU2iQDZA) 413 | * [OWASP](https://www.youtube.com/user/OWASPGLOBAL) 414 | * [Elias Osif](https://www.youtube.com/channel/UCcxmD7gdooV5Qkb-6b8RU6w) 415 | * [Deep Web Academy](https://www.youtube.com/channel/UCJ31aJo8U-ZaRnZ4Y27so_Q) 416 | * [The PC Security Channel (TPSC)](https://www.youtube.com/channel/UCKGe7fZ_S788Jaspxg-_5Sg) 417 | * [David Hoelzer](https://www.youtube.com/channel/UCpi0MkJ23w83bHpxA4ZvGFg) 418 | * [Binary adventure](https://www.youtube.com/channel/UCSLlgiYtOXZnYPba_W4bHqQ) 419 | * [OALabs](https://www.youtube.com/channel/UC--DwaiMV-jtO-6EvmKOnqg) 420 | * [Da532](https://www.youtube.com/user/iewan64) 421 | * [HazardEdit](https://www.youtube.com/channel/UCG0LukbgMa6vJkA_JJ4Jepg) 422 | 423 | ## Legal playgrounds 424 | 425 | * HackTheBox (Make sure to use separate environment not the one that's used on daily bases. Connecting to those challenges through a VM for example a kali VM will be enough, since everyone is hacking on those platforms, so you don't become collateral damage. 426 | https://www.hackthebox.eu/ 427 | * Vulnhub 428 | https://www.vulnhub.com/ 429 | * Overthewire 430 | http://overthewire.org/wargames/ 431 | 432 | 433 | ## Misc interesting articles 434 | 435 | * Fergus Henderson - Software Engineering at Google: https://arxiv.org/pdf/1702.01715.pdf 436 | --------------------------------------------------------------------------------