{"id":361,"date":"2025-08-05T06:41:15","date_gmt":"2025-08-05T06:41:15","guid":{"rendered":"https:\/\/hackingwithj.com\/?p=361"},"modified":"2025-08-05T06:41:15","modified_gmt":"2025-08-05T06:41:15","slug":"learning-the-hard-way-my-ceh-experience","status":"publish","type":"post","link":"https:\/\/hackingwithj.com\/?p=361","title":{"rendered":"Learning the Hard Way: My CEH Experience"},"content":{"rendered":"\n<p>So, I\u2019m finally done with CEH. After countless hours of studying and working through labs for both the theory and practical exams, I wanted to take a moment to share my journey \u2014 the highs, the lows, and what I learned along the way.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Theory Exam<\/h1>\n\n\n\n<p>To earn the <strong>CEH Master<\/strong> title, you first need to pass the <strong>theory exam<\/strong>. I kicked things off with a 5-day course, which turned out to be super valuable. The instructor gave a lot of useful tips about the exam and how to approach it. I didn\u2019t want to lose momentum, so I scheduled my exam for three weeks after the course ended.<\/p>\n\n\n\n<p>In those three weeks, I read <strong>all 3,000+ pages<\/strong> of the official course material and took extensive notes. I wasn\u2019t just trying to memorize terms \u2014 I really aimed to understand the protocols and concepts in depth. On top of that, I dedicated about <strong>3 hours a day<\/strong> to study and knocked out around <strong>10 ECC labs<\/strong> to get more comfortable with the tools.<\/p>\n\n\n\n<p>For practice, I used a variety of resources:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a class=\"\" href=\"https:\/\/ceh.cagy.org\/\">ceh.cagy.org<\/a><\/li>\n\n\n\n<li>The <strong>CEH Practice Exam Book<\/strong> by Matt Walker<\/li>\n\n\n\n<li><strong>Memotrainer<\/strong>, which was provided by my learning institution<\/li>\n<\/ul>\n\n\n\n<p>All this prep had me feeling pretty confident going into my <strong>first attempt<\/strong>. On exam day, I showed up 30 minutes early, did a quick warm-up quiz, and headed in. The guy next to me had like 40 flagged questions, which made me go, <em>&#8220;Uh&#8230; should I be worried?&#8221;<\/em> Turns out that just means he marked them for review. The exam itself felt more like an English comprehension test than a hacking exam \u2014 not surprising, since I\u2019m not a native English speaker. Every question took extra effort to fully understand. And honestly, the real exam questions were nothing like the practice ones (which I get, but still \u2014 bit of a curveball).<\/p>\n\n\n\n<p>Even so, I felt alright during the test. I understood most of the questions and finished in about <strong>two hours<\/strong>. I didn\u2019t bother rereading all 125 questions \u2014 just revisited the ones I doubted and hit submit. When I saw <strong>125\/78<\/strong>, I thought, <em>\u201cHey, 78% \u2014 not bad!\u201d<\/em> But nope \u2014 <strong>78 correct out of 125<\/strong>, which meant <strong>63%<\/strong>. Ouch.<\/p>\n\n\n\n<p>I didn\u2019t want to rush into a retake, so I scheduled it for <strong>five weeks later<\/strong>, giving myself time to rest and then dive back in with a fresh mindset. I reread the book twice, and used Memotrainer daily \u2014 sometimes deliberately answering questions wrong just to see the explanations and understand the logic behind each answer. At this point, I was pushing myself hard. Maybe too hard. My brain felt overloaded by exam week. On the day of the retake, I again arrived early and jumped right into it. <\/p>\n\n\n\n<p>This time, it actually <em>felt<\/em> better \u2014 I could dissect the questions more easily and understood the logic behind nearly every option. After <strong>2.5 hours<\/strong>, I submitted. Result: <strong>125\/83<\/strong>. Just <strong>four questions short<\/strong> of passing. That one stung. I was genuinely crushed. I started thinking that not getting CEH Master might stop me from getting into the pentesting field. I took a day off to reset and get my head right. But then I reminded myself \u2014 the <strong>CEH Practical<\/strong> was still ahead, and that would be my shot to really <em>prove<\/em> my skills. by not getting CEH master, I needed 1 day to reset my mind from this. But I was to still show of my skill in CEH practical<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Practical Exam<\/h1>\n\n\n\n<p>The preparation for the CEH Practical was pretty straightforward. I focused mainly on the ECC labs provided by EC-Council. Most of them were quick to complete \u2014 some took as little as 20 minutes \u2014 and I concentrated on documenting the commands used. Since the exam questions are often a blend of topics from different modules, having organized notes made a big difference.<\/p>\n\n\n\n<p><strong>Example scenario from the exam:<\/strong><\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Find a Linux host in subnet X, exploit a vulnerability, receive file X and decrypt it to retrieve the flag.<\/p>\n<\/blockquote>\n\n\n\n<p>So a big part of the challenge was understanding the question, identifying the correct vulnerable machine, and figuring out the steps to obtain the flag. Taking notes helped build a fast and structured attack path \u2014 or so I thought (more on that later).<\/p>\n\n\n\n<p>I scheduled the exam three weeks in advance, giving myself time to prepare properly. Instead of doing too many TryHackMe learning paths (which don\u2019t align closely with CEH), I practiced with VulnHub machines like the DC series to simulate unknown environments. I also re-did the CEH Engage modules to sharpen my workflow and focused on the questions I struggled with earlier.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Day of the exam<\/h2>\n\n\n\n<p>The exam was scheduled from 13:00 to 19:00 (Amsterdam time). In the morning, I warmed up with one CEH Engage module and watched a bit of Netflix to relax \u2014 I was nervous, especially after failing the theory twice.<\/p>\n\n\n\n<p>When it was time, I joined the GoToMeeting session, but the proctor couldn\u2019t see me. That was stressful because you have a 15-minute grace period before they cancel your session. Luckily, the proctor emailed me an invitation code which worked (shout-out to Proctor 6). After verifying my room, ID, and removing unsupported software (note: TeamViewer is not allowed), I was cleared to begin.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">During the exam<\/h2>\n\n\n\n<p>I used the first few minutes to gather info about the subnets involved and saved that into a file, to avoid repeating slow scans later. I ran the classic: <code>nmap -sCV -A &lt;ip> -a ip_subnet.txt<\/code>  for all three subnets. Then I scanned through the 20 questions, filtering them by perceived difficulty. <strong>Sample question types (without breaking NDA):<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Identify a service version on a given machine.<\/li>\n\n\n\n<li>Perform a vulnerability scan and provide the CVE.<\/li>\n\n\n\n<li>Exploit a vulnerability, obtain a file, and decrypt it.<\/li>\n\n\n\n<li>Identify SQL injection on a web domain and extract a password.<\/li>\n\n\n\n<li>Perform Wireshark analysis.<\/li>\n\n\n\n<li>Malware identification.<\/li>\n\n\n\n<li>Wireless password cracking.<\/li>\n<\/ul>\n\n\n\n<p>I learned you get <strong>three attempts per question<\/strong>, which gave me more confidence. I started with the easiest questions. For longer tasks (like vulnerability scans), I launched them and worked on other questions while waiting. Multitasking is crucial \u2014 it\u2019s easy to waste time in rabbit holes.<\/p>\n\n\n\n<p>To manage that, I used a self-imposed <strong>15-minute timer per question<\/strong>. If I was still stuck, I moved on. Six hours sounds like a lot, but it goes by fast. After three hours, I already had 14 correct \u2014 just enough to pass. That gave me a boost. I went on for another hour and reached 16. Then I took a short break to grab a snack and chat with my girlfriend.<\/p>\n\n\n\n<p>In the final stretch, I managed to solve one more, ending with <strong>18 out of 20<\/strong>. The last two were difficult:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>A Drupal site with no clear attack vector:<\/strong> I tried <code>droopescan<\/code>, Drupalgeddon 1 &amp; 2, scanned for known CVEs based on the enumerated version, looked for hidden directories using <code>gobuster<\/code>, and probed other open ports \u2014 no luck.<\/li>\n\n\n\n<li><strong>A vulnerability scan question:<\/strong> I couldn\u2019t get the CVE to appear, even after digging into the vulnerability for 45 minutes.<\/li>\n<\/ol>\n\n\n\n<p>With an hour left and 18\/20 already confirmed, I decided to submit.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Post-Exam Reflections<\/h2>\n\n\n\n<p>Now that I\u2019ve had time to reflect, I want to share some insights. Many online say the CEH Practical is &#8220;easy.&#8221; I partially agree \u2014 if you either:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Drilled the ECC labs for two months, or<\/li>\n\n\n\n<li>Have solid CTF\/real-world experience.<\/li>\n<\/ul>\n\n\n\n<p>But if something doesn&#8217;t go as expected \u2014 for example, an exploit doesn&#8217;t work \u2014 then your <strong>troubleshooting skills<\/strong> really matter. That\u2019s where CTF experience shines. For instance, I had to perform a <strong>path traversal attack<\/strong> on a DVWA instance. Sounds easy, right? But:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The DVWA had to be set to <em>low security<\/em>, and<\/li>\n\n\n\n<li>It was hosted on a <strong>Windows server<\/strong>, so <code>\/etc\/passwd<\/code> was useless.<\/li>\n<\/ul>\n\n\n\n<p>Instead of using the file inclusion tab, I used the RCE module and started enumerating files with <code>dir<\/code> and <code>type<\/code>. This kind of pivoting isn\u2019t something you just memorize \u2014 it comes from practice. So no, it&#8217;s <strong>not that easy<\/strong> for beginners. I&#8217;d rate it somewhere between beginner and intermediate.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"352\" height=\"352\" src=\"https:\/\/hackingwithj.com\/wp-content\/uploads\/2025\/08\/CEHPRACTICAL_5FB43496785F.png\" alt=\"\" class=\"wp-image-364\" style=\"width:176px;height:auto\" srcset=\"https:\/\/hackingwithj.com\/wp-content\/uploads\/2025\/08\/CEHPRACTICAL_5FB43496785F.png 352w, https:\/\/hackingwithj.com\/wp-content\/uploads\/2025\/08\/CEHPRACTICAL_5FB43496785F-300x300.png 300w, https:\/\/hackingwithj.com\/wp-content\/uploads\/2025\/08\/CEHPRACTICAL_5FB43496785F-150x150.png 150w\" sizes=\"auto, (max-width: 352px) 100vw, 352px\" \/><figcaption class=\"wp-element-caption\"><em>Badge completion<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Final verdict<\/h2>\n\n\n\n<p>Even though I didn\u2019t pass the theory (and thus missed CEH Master), I still feel very proud of this achievement. Pentesting is hard. Failing the theory twice was frustrating, especially knowing I understood the material \u2014 I just don\u2019t perform well under multiple-choice pressure. But the <strong>practical<\/strong> let me prove my skill, and I\u2019m glad I pushed through. There\u2019s a lot of criticism about CEH out there, and I get some of it. But honestly:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>The book was solid.<\/li>\n\n\n\n<li>The ECC labs were stable and helpful.<\/li>\n\n\n\n<li>The Engage modules were a good playground (even after breaking a few machines myself \ud83d\ude05).<\/li>\n<\/ul>\n\n\n\n<p>I\u2019m not done \u2014 maybe someday I\u2019ll try <strong>CPENT<\/strong> \u2014 but that\u2019s for later. Lastly, I\u2019ll share my CEH notes in my GitBook. Even if no one reads them, I want them to be out there. Everyone deserves to learn from someone else&#8217;s struggle.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So, I\u2019m finally done with CEH. After countless hours of studying and working through labs for both the theory and practical exams, I wanted to take a moment to share my journey \u2014 the highs, the lows, and what I learned along the way. Theory Exam To earn the CEH Master title, you first need [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"site-container-style":"default","site-container-layout":"default","site-sidebar-layout":"default","disable-article-header":"default","disable-site-header":"default","disable-site-footer":"default","disable-content-area-spacing":"default","footnotes":""},"categories":[35],"tags":[],"class_list":["post-361","post","type-post","status-publish","format-standard","hentry","category-training"],"_links":{"self":[{"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/posts\/361","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=361"}],"version-history":[{"count":3,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/posts\/361\/revisions"}],"predecessor-version":[{"id":366,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=\/wp\/v2\/posts\/361\/revisions\/366"}],"wp:attachment":[{"href":"https:\/\/hackingwithj.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=361"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=361"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hackingwithj.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=361"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}