gitleaks.toml 95 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209
  1. # This file has been auto-generated. Do not edit manually.
  2. # If you would like to contribute new rules, please use
  3. # cmd/generate/config/main.go and follow the contributing guidelines
  4. # at https://github.com/gitleaks/gitleaks/blob/master/CONTRIBUTING.md
  5. #
  6. # How the hell does secret scanning work? Read this:
  7. # https://lookingatcomputer.substack.com/p/regex-is-almost-all-you-need
  8. #
  9. # This is the default gitleaks configuration file.
  10. # Rules and allowlists are defined within this file.
  11. # Rules instruct gitleaks on what should be considered a secret.
  12. # Allowlists instruct gitleaks on what is allowed, i.e. not a secret.
  13. title = "gitleaks config"
  14. # minVersion indicates the minimum Gitleaks version required to use this config.
  15. # If the running version is older, a warning will be logged and not all
  16. # config-enabled features are guaranteed to work.
  17. minVersion = "v8.25.0"
  18. # TODO: change to [[allowlists]]
  19. [allowlist]
  20. description = "global allow lists"
  21. paths = [
  22. '''gitleaks\.toml''',
  23. '''(?i)\.(?:bmp|gif|jpe?g|png|svg|tiff?)$''',
  24. '''(?i)\.(?:eot|[ot]tf|woff2?)$''',
  25. '''(?i)\.(?:docx?|xlsx?|pdf|bin|socket|vsidx|v2|suo|wsuo|.dll|pdb|exe|gltf)$''',
  26. '''go\.(?:mod|sum|work(?:\.sum)?)$''',
  27. '''(?:^|/)vendor/modules\.txt$''',
  28. '''(?:^|/)vendor/(?:github\.com|golang\.org/x|google\.golang\.org|gopkg\.in|istio\.io|k8s\.io|sigs\.k8s\.io)(?:/.*)?$''',
  29. '''(?:^|/)gradlew(?:\.bat)?$''',
  30. '''(?:^|/)gradle\.lockfile$''',
  31. '''(?:^|/)mvnw(?:\.cmd)?$''',
  32. '''(?:^|/)\.mvn/wrapper/MavenWrapperDownloader\.java$''',
  33. '''(?:^|/)node_modules(?:/.*)?$''',
  34. '''(?:^|/)(?:deno\.lock|npm-shrinkwrap\.json|package-lock\.json|pnpm-lock\.yaml|yarn\.lock)$''',
  35. '''(?:^|/)bower_components(?:/.*)?$''',
  36. '''(?:^|/)(?:angular|bootstrap|jquery(?:-?ui)?|plotly|swagger-?ui)[a-zA-Z0-9.-]*(?:\.min)?\.js(?:\.map)?$''',
  37. '''(?:^|/)javascript\.json$''',
  38. '''(?:^|/)(?:Pipfile|poetry)\.lock$''',
  39. '''(?i)(?:^|/)(?:v?env|virtualenv)/lib(?:64)?(?:/.*)?$''',
  40. '''(?i)(?:^|/)(?:lib(?:64)?/python[23](?:\.\d{1,2})+|python/[23](?:\.\d{1,2})+/lib(?:64)?)(?:/.*)?$''',
  41. '''(?i)(?:^|/)[a-z0-9_.]+-[0-9.]+\.dist-info(?:/.+)?$''',
  42. '''(?:^|/)vendor/(?:bundle|ruby)(?:/.*?)?$''',
  43. '''\.gem$''',
  44. '''verification-metadata\.xml''',
  45. '''Database.refactorlog''',
  46. '''(?:^|/)\.git$''',
  47. ]
  48. regexes = [
  49. '''(?i)^true|false|null$''',
  50. '''^(?i:a+|b+|c+|d+|e+|f+|g+|h+|i+|j+|k+|l+|m+|n+|o+|p+|q+|r+|s+|t+|u+|v+|w+|x+|y+|z+|\*+|\.+)$''',
  51. '''^\$(?:\d+|{\d+})$''',
  52. '''^\$(?:[A-Z_]+|[a-z_]+)$''',
  53. '''^\${(?:[A-Z_]+|[a-z_]+)}$''',
  54. '''^\{\{[ \t]*[\w ().|]+[ \t]*}}$''',
  55. '''^\$\{\{[ \t]*(?:(?:env|github|secrets|vars)(?:\.[A-Za-z]\w+)+[\w "'&./=|]*)[ \t]*}}$''',
  56. '''^%(?:[A-Z_]+|[a-z_]+)%$''',
  57. '''^%[+\-# 0]?[bcdeEfFgGoOpqstTUvxX]$''',
  58. '''^\{\d{0,2}}$''',
  59. '''^@(?:[A-Z_]+|[a-z_]+)@$''',
  60. '''^/Users/(?i)[a-z0-9]+/[\w .-/]+$''',
  61. '''^/(?:bin|etc|home|opt|tmp|usr|var)/[\w ./-]+$''',
  62. ]
  63. stopwords = [
  64. "014df517-39d1-4453-b7b3-9930c563627c",
  65. "abcdefghijklmnopqrstuvwxyz",
  66. ]
  67. [[rules]]
  68. id = "1password-secret-key"
  69. description = "Uncovered a possible 1Password secret key, potentially compromising access to secrets in vaults."
  70. regex = '''\bA3-[A-Z0-9]{6}-(?:(?:[A-Z0-9]{11})|(?:[A-Z0-9]{6}-[A-Z0-9]{5}))-[A-Z0-9]{5}-[A-Z0-9]{5}-[A-Z0-9]{5}\b'''
  71. entropy = 3.8
  72. keywords = ["a3-"]
  73. [[rules]]
  74. id = "1password-service-account-token"
  75. description = "Uncovered a possible 1Password service account token, potentially compromising access to secrets in vaults."
  76. regex = '''ops_eyJ[a-zA-Z0-9+/]{250,}={0,3}'''
  77. entropy = 4
  78. keywords = ["ops_"]
  79. [[rules]]
  80. id = "adafruit-api-key"
  81. description = "Identified a potential Adafruit API Key, which could lead to unauthorized access to Adafruit services and sensitive data exposure."
  82. regex = '''(?i)[\w.-]{0,50}?(?:adafruit)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9_-]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  83. keywords = ["adafruit"]
  84. [[rules]]
  85. id = "adobe-client-id"
  86. description = "Detected a pattern that resembles an Adobe OAuth Web Client ID, posing a risk of compromised Adobe integrations and data breaches."
  87. regex = '''(?i)[\w.-]{0,50}?(?:adobe)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  88. entropy = 2
  89. keywords = ["adobe"]
  90. [[rules]]
  91. id = "adobe-client-secret"
  92. description = "Discovered a potential Adobe Client Secret, which, if exposed, could allow unauthorized Adobe service access and data manipulation."
  93. regex = '''\b(p8e-(?i)[a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  94. entropy = 2
  95. keywords = ["p8e-"]
  96. [[rules]]
  97. id = "age-secret-key"
  98. description = "Discovered a potential Age encryption tool secret key, risking data decryption and unauthorized access to sensitive information."
  99. regex = '''AGE-SECRET-KEY-1[QPZRY9X8GF2TVDW0S3JN54KHCE6MUA7L]{58}'''
  100. keywords = ["age-secret-key-1"]
  101. [[rules]]
  102. id = "airtable-api-key"
  103. description = "Uncovered a possible Airtable API Key, potentially compromising database access and leading to data leakage or alteration."
  104. regex = '''(?i)[\w.-]{0,50}?(?:airtable)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{17})(?:[\x60'"\s;]|\\[nr]|$)'''
  105. keywords = ["airtable"]
  106. [[rules]]
  107. id = "airtable-personnal-access-token"
  108. description = "Uncovered a possible Airtable Personal AccessToken, potentially compromising database access and leading to data leakage or alteration."
  109. regex = '''\b(pat[[:alnum:]]{14}\.[a-f0-9]{64})\b'''
  110. keywords = ["airtable"]
  111. [[rules]]
  112. id = "algolia-api-key"
  113. description = "Identified an Algolia API Key, which could result in unauthorized search operations and data exposure on Algolia-managed platforms."
  114. regex = '''(?i)[\w.-]{0,50}?(?:algolia)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  115. keywords = ["algolia"]
  116. [[rules]]
  117. id = "alibaba-access-key-id"
  118. description = "Detected an Alibaba Cloud AccessKey ID, posing a risk of unauthorized cloud resource access and potential data compromise."
  119. regex = '''\b(LTAI(?i)[a-z0-9]{20})(?:[\x60'"\s;]|\\[nr]|$)'''
  120. entropy = 2
  121. keywords = ["ltai"]
  122. [[rules]]
  123. id = "alibaba-secret-key"
  124. description = "Discovered a potential Alibaba Cloud Secret Key, potentially allowing unauthorized operations and data access within Alibaba Cloud."
  125. regex = '''(?i)[\w.-]{0,50}?(?:alibaba)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{30})(?:[\x60'"\s;]|\\[nr]|$)'''
  126. entropy = 2
  127. keywords = ["alibaba"]
  128. [[rules]]
  129. id = "anthropic-admin-api-key"
  130. description = "Detected an Anthropic Admin API Key, risking unauthorized access to administrative functions and sensitive AI model configurations."
  131. regex = '''\b(sk-ant-admin01-[a-zA-Z0-9_\-]{93}AA)(?:[\x60'"\s;]|\\[nr]|$)'''
  132. keywords = ["sk-ant-admin01"]
  133. [[rules]]
  134. id = "anthropic-api-key"
  135. description = "Identified an Anthropic API Key, which may compromise AI assistant integrations and expose sensitive data to unauthorized access."
  136. regex = '''\b(sk-ant-api03-[a-zA-Z0-9_\-]{93}AA)(?:[\x60'"\s;]|\\[nr]|$)'''
  137. keywords = ["sk-ant-api03"]
  138. [[rules]]
  139. id = "artifactory-api-key"
  140. description = "Detected an Artifactory api key, posing a risk unauthorized access to the central repository."
  141. regex = '''\bAKCp[A-Za-z0-9]{69}\b'''
  142. entropy = 4.5
  143. keywords = ["akcp"]
  144. [[rules]]
  145. id = "artifactory-reference-token"
  146. description = "Detected an Artifactory reference token, posing a risk of impersonation and unauthorized access to the central repository."
  147. regex = '''\bcmVmd[A-Za-z0-9]{59}\b'''
  148. entropy = 4.5
  149. keywords = ["cmvmd"]
  150. [[rules]]
  151. id = "asana-client-id"
  152. description = "Discovered a potential Asana Client ID, risking unauthorized access to Asana projects and sensitive task information."
  153. regex = '''(?i)[\w.-]{0,50}?(?:asana)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  154. keywords = ["asana"]
  155. [[rules]]
  156. id = "asana-client-secret"
  157. description = "Identified an Asana Client Secret, which could lead to compromised project management integrity and unauthorized access."
  158. regex = '''(?i)[\w.-]{0,50}?(?:asana)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  159. keywords = ["asana"]
  160. [[rules]]
  161. id = "atlassian-api-token"
  162. description = "Detected an Atlassian API token, posing a threat to project management and collaboration tool security and data confidentiality."
  163. regex = '''(?i)[\w.-]{0,50}?(?:(?-i:ATLASSIAN|[Aa]tlassian)|(?-i:CONFLUENCE|[Cc]onfluence)|(?-i:JIRA|[Jj]ira))(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{20}[a-f0-9]{4})(?:[\x60'"\s;]|\\[nr]|$)|\b(ATATT3[A-Za-z0-9_\-=]{186})(?:[\x60'"\s;]|\\[nr]|$)'''
  164. entropy = 3.5
  165. keywords = [
  166. "atlassian",
  167. "confluence",
  168. "jira",
  169. "atatt3",
  170. ]
  171. [[rules]]
  172. id = "authress-service-client-access-key"
  173. description = "Uncovered a possible Authress Service Client Access Key, which may compromise access control services and sensitive data."
  174. regex = '''\b((?:sc|ext|scauth|authress)_(?i)[a-z0-9]{5,30}\.[a-z0-9]{4,6}\.(?-i:acc)[_-][a-z0-9-]{10,32}\.[a-z0-9+/_=-]{30,120})(?:[\x60'"\s;]|\\[nr]|$)'''
  175. entropy = 2
  176. keywords = [
  177. "sc_",
  178. "ext_",
  179. "scauth_",
  180. "authress_",
  181. ]
  182. [[rules]]
  183. id = "aws-access-token"
  184. description = "Identified a pattern that may indicate AWS credentials, risking unauthorized cloud resource access and data breaches on AWS platforms."
  185. regex = '''\b((?:A3T[A-Z0-9]|AKIA|ASIA|ABIA|ACCA)[A-Z2-7]{16})\b'''
  186. entropy = 3
  187. keywords = [
  188. "a3t",
  189. "akia",
  190. "asia",
  191. "abia",
  192. "acca",
  193. ]
  194. [[rules.allowlists]]
  195. regexes = [
  196. '''.+EXAMPLE$''',
  197. ]
  198. [[rules]]
  199. id = "aws-amazon-bedrock-api-key-long-lived"
  200. description = "Identified a pattern that may indicate long-lived Amazon Bedrock API keys, risking unauthorized Amazon Bedrock usage"
  201. regex = '''\b(ABSK[A-Za-z0-9+/]{109,269}={0,2})(?:[\x60'"\s;]|\\[nr]|$)'''
  202. entropy = 3
  203. keywords = ["absk"]
  204. [[rules]]
  205. id = "aws-amazon-bedrock-api-key-short-lived"
  206. description = "Identified a pattern that may indicate short-lived Amazon Bedrock API keys, risking unauthorized Amazon Bedrock usage"
  207. regex = '''bedrock-api-key-YmVkcm9jay5hbWF6b25hd3MuY29t'''
  208. entropy = 3
  209. keywords = ["bedrock-api-key-"]
  210. [[rules]]
  211. id = "azure-ad-client-secret"
  212. description = "Azure AD Client Secret"
  213. regex = '''(?:^|[\\'"\x60\s>=:(,)])([a-zA-Z0-9_~.]{3}\dQ~[a-zA-Z0-9_~.-]{31,34})(?:$|[\\'"\x60\s<),])'''
  214. entropy = 3
  215. keywords = ["q~"]
  216. [[rules]]
  217. id = "beamer-api-token"
  218. description = "Detected a Beamer API token, potentially compromising content management and exposing sensitive notifications and updates."
  219. regex = '''(?i)[\w.-]{0,50}?(?:beamer)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(b_[a-z0-9=_\-]{44})(?:[\x60'"\s;]|\\[nr]|$)'''
  220. keywords = ["beamer"]
  221. [[rules]]
  222. id = "bitbucket-client-id"
  223. description = "Discovered a potential Bitbucket Client ID, risking unauthorized repository access and potential codebase exposure."
  224. regex = '''(?i)[\w.-]{0,50}?(?:bitbucket)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  225. keywords = ["bitbucket"]
  226. [[rules]]
  227. id = "bitbucket-client-secret"
  228. description = "Discovered a potential Bitbucket Client Secret, posing a risk of compromised code repositories and unauthorized access."
  229. regex = '''(?i)[\w.-]{0,50}?(?:bitbucket)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  230. keywords = ["bitbucket"]
  231. [[rules]]
  232. id = "bittrex-access-key"
  233. description = "Identified a Bittrex Access Key, which could lead to unauthorized access to cryptocurrency trading accounts and financial loss."
  234. regex = '''(?i)[\w.-]{0,50}?(?:bittrex)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  235. keywords = ["bittrex"]
  236. [[rules]]
  237. id = "bittrex-secret-key"
  238. description = "Detected a Bittrex Secret Key, potentially compromising cryptocurrency transactions and financial security."
  239. regex = '''(?i)[\w.-]{0,50}?(?:bittrex)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  240. keywords = ["bittrex"]
  241. [[rules]]
  242. id = "cisco-meraki-api-key"
  243. description = "Cisco Meraki is a cloud-managed IT solution that provides networking, security, and device management through an easy-to-use interface."
  244. regex = '''[\w.-]{0,50}?(?i:[\w.-]{0,50}?(?:(?-i:[Mm]eraki|MERAKI))(?:[ \t\w.-]{0,20})[\s'"]{0,3})(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  245. entropy = 3
  246. keywords = ["meraki"]
  247. [[rules]]
  248. id = "clickhouse-cloud-api-secret-key"
  249. description = "Identified a pattern that may indicate clickhouse cloud API secret key, risking unauthorized clickhouse cloud api access and data breaches on ClickHouse Cloud platforms."
  250. regex = '''\b(4b1d[A-Za-z0-9]{38})\b'''
  251. entropy = 3
  252. keywords = ["4b1d"]
  253. [[rules]]
  254. id = "clojars-api-token"
  255. description = "Uncovered a possible Clojars API token, risking unauthorized access to Clojure libraries and potential code manipulation."
  256. regex = '''(?i)CLOJARS_[a-z0-9]{60}'''
  257. entropy = 2
  258. keywords = ["clojars_"]
  259. [[rules]]
  260. id = "cloudflare-api-key"
  261. description = "Detected a Cloudflare API Key, potentially compromising cloud application deployments and operational security."
  262. regex = '''(?i)[\w.-]{0,50}?(?:cloudflare)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9_-]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  263. entropy = 2
  264. keywords = ["cloudflare"]
  265. [[rules]]
  266. id = "cloudflare-global-api-key"
  267. description = "Detected a Cloudflare Global API Key, potentially compromising cloud application deployments and operational security."
  268. regex = '''(?i)[\w.-]{0,50}?(?:cloudflare)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{37})(?:[\x60'"\s;]|\\[nr]|$)'''
  269. entropy = 2
  270. keywords = ["cloudflare"]
  271. [[rules]]
  272. id = "cloudflare-origin-ca-key"
  273. description = "Detected a Cloudflare Origin CA Key, potentially compromising cloud application deployments and operational security."
  274. regex = '''\b(v1\.0-[a-f0-9]{24}-[a-f0-9]{146})(?:[\x60'"\s;]|\\[nr]|$)'''
  275. entropy = 2
  276. keywords = [
  277. "cloudflare",
  278. "v1.0-",
  279. ]
  280. [[rules]]
  281. id = "codecov-access-token"
  282. description = "Found a pattern resembling a Codecov Access Token, posing a risk of unauthorized access to code coverage reports and sensitive data."
  283. regex = '''(?i)[\w.-]{0,50}?(?:codecov)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  284. keywords = ["codecov"]
  285. [[rules]]
  286. id = "cohere-api-token"
  287. description = "Identified a Cohere Token, posing a risk of unauthorized access to AI services and data manipulation."
  288. regex = '''[\w.-]{0,50}?(?i:[\w.-]{0,50}?(?:cohere|CO_API_KEY)(?:[ \t\w.-]{0,20})[\s'"]{0,3})(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-zA-Z0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  289. entropy = 4
  290. keywords = [
  291. "cohere",
  292. "co_api_key",
  293. ]
  294. [[rules]]
  295. id = "coinbase-access-token"
  296. description = "Detected a Coinbase Access Token, posing a risk of unauthorized access to cryptocurrency accounts and financial transactions."
  297. regex = '''(?i)[\w.-]{0,50}?(?:coinbase)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9_-]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  298. keywords = ["coinbase"]
  299. [[rules]]
  300. id = "confluent-access-token"
  301. description = "Identified a Confluent Access Token, which could compromise access to streaming data platforms and sensitive data flow."
  302. regex = '''(?i)[\w.-]{0,50}?(?:confluent)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  303. keywords = ["confluent"]
  304. [[rules]]
  305. id = "confluent-secret-key"
  306. description = "Found a Confluent Secret Key, potentially risking unauthorized operations and data access within Confluent services."
  307. regex = '''(?i)[\w.-]{0,50}?(?:confluent)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  308. keywords = ["confluent"]
  309. [[rules]]
  310. id = "contentful-delivery-api-token"
  311. description = "Discovered a Contentful delivery API token, posing a risk to content management systems and data integrity."
  312. regex = '''(?i)[\w.-]{0,50}?(?:contentful)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{43})(?:[\x60'"\s;]|\\[nr]|$)'''
  313. keywords = ["contentful"]
  314. [[rules]]
  315. id = "curl-auth-header"
  316. description = "Discovered a potential authorization token provided in a curl command header, which could compromise the curl accessed resource."
  317. regex = '''\bcurl\b(?:.*?|.*?(?:[\r\n]{1,2}.*?){1,5})[ \t\n\r](?:-H|--header)(?:=|[ \t]{0,5})(?:"(?i)(?:Authorization:[ \t]{0,5}(?:Basic[ \t]([a-z0-9+/]{8,}={0,3})|(?:Bearer|(?:Api-)?Token)[ \t]([\w=~@.+/-]{8,})|([\w=~@.+/-]{8,}))|(?:(?:X-(?:[a-z]+-)?)?(?:Api-?)?(?:Key|Token)):[ \t]{0,5}([\w=~@.+/-]{8,}))"|'(?i)(?:Authorization:[ \t]{0,5}(?:Basic[ \t]([a-z0-9+/]{8,}={0,3})|(?:Bearer|(?:Api-)?Token)[ \t]([\w=~@.+/-]{8,})|([\w=~@.+/-]{8,}))|(?:(?:X-(?:[a-z]+-)?)?(?:Api-?)?(?:Key|Token)):[ \t]{0,5}([\w=~@.+/-]{8,}))')(?:\B|\s|\z)'''
  318. entropy = 2.75
  319. keywords = ["curl"]
  320. [[rules]]
  321. id = "curl-auth-user"
  322. description = "Discovered a potential basic authorization token provided in a curl command, which could compromise the curl accessed resource."
  323. regex = '''\bcurl\b(?:.*|.*(?:[\r\n]{1,2}.*){1,5})[ \t\n\r](?:-u|--user)(?:=|[ \t]{0,5})("(:[^"]{3,}|[^:"]{3,}:|[^:"]{3,}:[^"]{3,})"|'([^:']{3,}:[^']{3,})'|((?:"[^"]{3,}"|'[^']{3,}'|[\w$@.-]+):(?:"[^"]{3,}"|'[^']{3,}'|[\w${}@.-]+)))(?:\s|\z)'''
  324. entropy = 2
  325. keywords = ["curl"]
  326. [[rules.allowlists]]
  327. regexes = [
  328. '''[^:]+:(?:change(?:it|me)|pass(?:word)?|pwd|test|token|\*+|x+)''',
  329. '''['"]?<[^>]+>['"]?:['"]?<[^>]+>|<[^:]+:[^>]+>['"]?''',
  330. '''[^:]+:\[[^]]+]''',
  331. '''['"]?[^:]+['"]?:['"]?\$(?:\d|\w+|\{(?:\d|\w+)})['"]?''',
  332. '''\$\([^)]+\):\$\([^)]+\)''',
  333. '''['"]?\$?{{[^}]+}}['"]?:['"]?\$?{{[^}]+}}['"]?''',
  334. ]
  335. [[rules]]
  336. id = "databricks-api-token"
  337. description = "Uncovered a Databricks API token, which may compromise big data analytics platforms and sensitive data processing."
  338. regex = '''\b(dapi[a-f0-9]{32}(?:-\d)?)(?:[\x60'"\s;]|\\[nr]|$)'''
  339. entropy = 3
  340. keywords = ["dapi"]
  341. [[rules]]
  342. id = "datadog-access-token"
  343. description = "Detected a Datadog Access Token, potentially risking monitoring and analytics data exposure and manipulation."
  344. regex = '''(?i)[\w.-]{0,50}?(?:datadog)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  345. keywords = ["datadog"]
  346. [[rules]]
  347. id = "defined-networking-api-token"
  348. description = "Identified a Defined Networking API token, which could lead to unauthorized network operations and data breaches."
  349. regex = '''(?i)[\w.-]{0,50}?(?:dnkey)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(dnkey-[a-z0-9=_\-]{26}-[a-z0-9=_\-]{52})(?:[\x60'"\s;]|\\[nr]|$)'''
  350. keywords = ["dnkey"]
  351. [[rules]]
  352. id = "digitalocean-access-token"
  353. description = "Found a DigitalOcean OAuth Access Token, risking unauthorized cloud resource access and data compromise."
  354. regex = '''\b(doo_v1_[a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  355. entropy = 3
  356. keywords = ["doo_v1_"]
  357. [[rules]]
  358. id = "digitalocean-pat"
  359. description = "Discovered a DigitalOcean Personal Access Token, posing a threat to cloud infrastructure security and data privacy."
  360. regex = '''\b(dop_v1_[a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  361. entropy = 3
  362. keywords = ["dop_v1_"]
  363. [[rules]]
  364. id = "digitalocean-refresh-token"
  365. description = "Uncovered a DigitalOcean OAuth Refresh Token, which could allow prolonged unauthorized access and resource manipulation."
  366. regex = '''(?i)\b(dor_v1_[a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  367. keywords = ["dor_v1_"]
  368. [[rules]]
  369. id = "discord-api-token"
  370. description = "Detected a Discord API key, potentially compromising communication channels and user data privacy on Discord."
  371. regex = '''(?i)[\w.-]{0,50}?(?:discord)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  372. keywords = ["discord"]
  373. [[rules]]
  374. id = "discord-client-id"
  375. description = "Identified a Discord client ID, which may lead to unauthorized integrations and data exposure in Discord applications."
  376. regex = '''(?i)[\w.-]{0,50}?(?:discord)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9]{18})(?:[\x60'"\s;]|\\[nr]|$)'''
  377. entropy = 2
  378. keywords = ["discord"]
  379. [[rules]]
  380. id = "discord-client-secret"
  381. description = "Discovered a potential Discord client secret, risking compromised Discord bot integrations and data leaks."
  382. regex = '''(?i)[\w.-]{0,50}?(?:discord)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  383. entropy = 2
  384. keywords = ["discord"]
  385. [[rules]]
  386. id = "doppler-api-token"
  387. description = "Discovered a Doppler API token, posing a risk to environment and secrets management security."
  388. regex = '''dp\.pt\.(?i)[a-z0-9]{43}'''
  389. entropy = 2
  390. keywords = ["dp.pt."]
  391. [[rules]]
  392. id = "droneci-access-token"
  393. description = "Detected a Droneci Access Token, potentially compromising continuous integration and deployment workflows."
  394. regex = '''(?i)[\w.-]{0,50}?(?:droneci)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  395. keywords = ["droneci"]
  396. [[rules]]
  397. id = "dropbox-api-token"
  398. description = "Identified a Dropbox API secret, which could lead to unauthorized file access and data breaches in Dropbox storage."
  399. regex = '''(?i)[\w.-]{0,50}?(?:dropbox)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{15})(?:[\x60'"\s;]|\\[nr]|$)'''
  400. keywords = ["dropbox"]
  401. [[rules]]
  402. id = "dropbox-long-lived-api-token"
  403. description = "Found a Dropbox long-lived API token, risking prolonged unauthorized access to cloud storage and sensitive data."
  404. regex = '''(?i)[\w.-]{0,50}?(?:dropbox)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{11}(AAAAAAAAAA)[a-z0-9\-_=]{43})(?:[\x60'"\s;]|\\[nr]|$)'''
  405. keywords = ["dropbox"]
  406. [[rules]]
  407. id = "dropbox-short-lived-api-token"
  408. description = "Discovered a Dropbox short-lived API token, posing a risk of temporary but potentially harmful data access and manipulation."
  409. regex = '''(?i)[\w.-]{0,50}?(?:dropbox)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(sl\.[a-z0-9\-=_]{135})(?:[\x60'"\s;]|\\[nr]|$)'''
  410. keywords = ["dropbox"]
  411. [[rules]]
  412. id = "duffel-api-token"
  413. description = "Uncovered a Duffel API token, which may compromise travel platform integrations and sensitive customer data."
  414. regex = '''duffel_(?:test|live)_(?i)[a-z0-9_\-=]{43}'''
  415. entropy = 2
  416. keywords = ["duffel_"]
  417. [[rules]]
  418. id = "dynatrace-api-token"
  419. description = "Detected a Dynatrace API token, potentially risking application performance monitoring and data exposure."
  420. regex = '''dt0c01\.(?i)[a-z0-9]{24}\.[a-z0-9]{64}'''
  421. entropy = 4
  422. keywords = ["dt0c01."]
  423. [[rules]]
  424. id = "easypost-api-token"
  425. description = "Identified an EasyPost API token, which could lead to unauthorized postal and shipment service access and data exposure."
  426. regex = '''\bEZAK(?i)[a-z0-9]{54}\b'''
  427. entropy = 2
  428. keywords = ["ezak"]
  429. [[rules]]
  430. id = "easypost-test-api-token"
  431. description = "Detected an EasyPost test API token, risking exposure of test environments and potentially sensitive shipment data."
  432. regex = '''\bEZTK(?i)[a-z0-9]{54}\b'''
  433. entropy = 2
  434. keywords = ["eztk"]
  435. [[rules]]
  436. id = "etsy-access-token"
  437. description = "Found an Etsy Access Token, potentially compromising Etsy shop management and customer data."
  438. regex = '''(?i)[\w.-]{0,50}?(?:(?-i:ETSY|[Ee]tsy))(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{24})(?:[\x60'"\s;]|\\[nr]|$)'''
  439. entropy = 3
  440. keywords = ["etsy"]
  441. [[rules]]
  442. id = "facebook-access-token"
  443. description = "Discovered a Facebook Access Token, posing a risk of unauthorized access to Facebook accounts and personal data exposure."
  444. regex = '''(?i)\b(\d{15,16}(\||%)[0-9a-z\-_]{27,40})(?:[\x60'"\s;]|\\[nr]|$)'''
  445. entropy = 3
  446. keywords = ["facebook"]
  447. [[rules]]
  448. id = "facebook-page-access-token"
  449. description = "Discovered a Facebook Page Access Token, posing a risk of unauthorized access to Facebook accounts and personal data exposure."
  450. regex = '''\b(EAA[MC](?i)[a-z0-9]{100,})(?:[\x60'"\s;]|\\[nr]|$)'''
  451. entropy = 4
  452. keywords = [
  453. "eaam",
  454. "eaac",
  455. ]
  456. [[rules]]
  457. id = "facebook-secret"
  458. description = "Discovered a Facebook Application secret, posing a risk of unauthorized access to Facebook accounts and personal data exposure."
  459. regex = '''(?i)[\w.-]{0,50}?(?:facebook)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  460. entropy = 3
  461. keywords = ["facebook"]
  462. [[rules]]
  463. id = "fastly-api-token"
  464. description = "Uncovered a Fastly API key, which may compromise CDN and edge cloud services, leading to content delivery and security issues."
  465. regex = '''(?i)[\w.-]{0,50}?(?:fastly)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  466. keywords = ["fastly"]
  467. [[rules]]
  468. id = "finicity-api-token"
  469. description = "Detected a Finicity API token, potentially risking financial data access and unauthorized financial operations."
  470. regex = '''(?i)[\w.-]{0,50}?(?:finicity)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  471. keywords = ["finicity"]
  472. [[rules]]
  473. id = "finicity-client-secret"
  474. description = "Identified a Finicity Client Secret, which could lead to compromised financial service integrations and data breaches."
  475. regex = '''(?i)[\w.-]{0,50}?(?:finicity)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{20})(?:[\x60'"\s;]|\\[nr]|$)'''
  476. keywords = ["finicity"]
  477. [[rules]]
  478. id = "finnhub-access-token"
  479. description = "Found a Finnhub Access Token, risking unauthorized access to financial market data and analytics."
  480. regex = '''(?i)[\w.-]{0,50}?(?:finnhub)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{20})(?:[\x60'"\s;]|\\[nr]|$)'''
  481. keywords = ["finnhub"]
  482. [[rules]]
  483. id = "flickr-access-token"
  484. description = "Discovered a Flickr Access Token, posing a risk of unauthorized photo management and potential data leakage."
  485. regex = '''(?i)[\w.-]{0,50}?(?:flickr)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  486. keywords = ["flickr"]
  487. [[rules]]
  488. id = "flutterwave-encryption-key"
  489. description = "Uncovered a Flutterwave Encryption Key, which may compromise payment processing and sensitive financial information."
  490. regex = '''FLWSECK_TEST-(?i)[a-h0-9]{12}'''
  491. entropy = 2
  492. keywords = ["flwseck_test"]
  493. [[rules]]
  494. id = "flutterwave-public-key"
  495. description = "Detected a Finicity Public Key, potentially exposing public cryptographic operations and integrations."
  496. regex = '''FLWPUBK_TEST-(?i)[a-h0-9]{32}-X'''
  497. entropy = 2
  498. keywords = ["flwpubk_test"]
  499. [[rules]]
  500. id = "flutterwave-secret-key"
  501. description = "Identified a Flutterwave Secret Key, risking unauthorized financial transactions and data breaches."
  502. regex = '''FLWSECK_TEST-(?i)[a-h0-9]{32}-X'''
  503. entropy = 2
  504. keywords = ["flwseck_test"]
  505. [[rules]]
  506. id = "flyio-access-token"
  507. description = "Uncovered a Fly.io API key"
  508. regex = '''\b((?:fo1_[\w-]{43}|fm1[ar]_[a-zA-Z0-9+\/]{100,}={0,3}|fm2_[a-zA-Z0-9+\/]{100,}={0,3}))(?:[\x60'"\s;]|\\[nr]|$)'''
  509. entropy = 4
  510. keywords = [
  511. "fo1_",
  512. "fm1",
  513. "fm2_",
  514. ]
  515. [[rules]]
  516. id = "frameio-api-token"
  517. description = "Found a Frame.io API token, potentially compromising video collaboration and project management."
  518. regex = '''fio-u-(?i)[a-z0-9\-_=]{64}'''
  519. keywords = ["fio-u-"]
  520. [[rules]]
  521. id = "freemius-secret-key"
  522. description = "Detected a Freemius secret key, potentially exposing sensitive information."
  523. regex = '''(?i)["']secret_key["']\s*=>\s*["'](sk_[\S]{29})["']'''
  524. path = '''(?i)\.php$'''
  525. keywords = ["secret_key"]
  526. [[rules]]
  527. id = "freshbooks-access-token"
  528. description = "Discovered a Freshbooks Access Token, posing a risk to accounting software access and sensitive financial data exposure."
  529. regex = '''(?i)[\w.-]{0,50}?(?:freshbooks)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  530. keywords = ["freshbooks"]
  531. [[rules]]
  532. id = "gcp-api-key"
  533. description = "Uncovered a GCP API key, which could lead to unauthorized access to Google Cloud services and data breaches."
  534. regex = '''\b(AIza[\w-]{35})(?:[\x60'"\s;]|\\[nr]|$)'''
  535. entropy = 4
  536. keywords = ["aiza"]
  537. [[rules.allowlists]]
  538. regexes = [
  539. '''AIzaSyabcdefghijklmnopqrstuvwxyz1234567''',
  540. '''AIzaSyAnLA7NfeLquW1tJFpx_eQCxoX-oo6YyIs''',
  541. '''AIzaSyCkEhVjf3pduRDt6d1yKOMitrUEke8agEM''',
  542. '''AIzaSyDMAScliyLx7F0NPDEJi1QmyCgHIAODrlU''',
  543. '''AIzaSyD3asb-2pEZVqMkmL6M9N6nHZRR_znhrh0''',
  544. '''AIzayDNSXIbFmlXbIE6mCzDLQAqITYefhixbX4A''',
  545. '''AIzaSyAdOS2zB6NCsk1pCdZ4-P6GBdi_UUPwX7c''',
  546. '''AIzaSyASWm6HmTMdYWpgMnjRBjxcQ9CKctWmLd4''',
  547. '''AIzaSyANUvH9H9BsUccjsu2pCmEkOPjjaXeDQgY''',
  548. '''AIzaSyA5_iVawFQ8ABuTZNUdcwERLJv_a_p4wtM''',
  549. '''AIzaSyA4UrcGxgwQFTfaI3no3t7Lt1sjmdnP5sQ''',
  550. '''AIzaSyDSb51JiIcB6OJpwwMicseKRhhrOq1cS7g''',
  551. '''AIzaSyBF2RrAIm4a0mO64EShQfqfd2AFnzAvvuU''',
  552. '''AIzaSyBcE-OOIbhjyR83gm4r2MFCu4MJmprNXsw''',
  553. '''AIzaSyB8qGxt4ec15vitgn44duC5ucxaOi4FmqE''',
  554. '''AIzaSyA8vmApnrHNFE0bApF4hoZ11srVL_n0nvY''',
  555. ]
  556. [[rules]]
  557. id = "generic-api-key"
  558. description = "Detected a Generic API Key, potentially exposing access to various services and sensitive operations."
  559. regex = '''(?i)[\w.-]{0,50}?(?:access|auth|(?-i:[Aa]pi|API)|credential|creds|key|passw(?:or)?d|secret|token)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([\w.=-]{10,150}|[a-z0-9][a-z0-9+/]{11,}={0,3})(?:[\x60'"\s;]|\\[nr]|$)'''
  560. entropy = 3.5
  561. keywords = [
  562. "access",
  563. "api",
  564. "auth",
  565. "key",
  566. "credential",
  567. "creds",
  568. "passwd",
  569. "password",
  570. "secret",
  571. "token",
  572. ]
  573. [[rules.allowlists]]
  574. regexes = [
  575. '''^[a-zA-Z_.-]+$''',
  576. ]
  577. [[rules.allowlists]]
  578. description = "Allowlist for Generic API Keys"
  579. regexTarget = "match"
  580. regexes = [
  581. '''(?i)(?:access(?:ibility|or)|access[_.-]?id|random[_.-]?access|api[_.-]?(?:id|name|version)|rapid|capital|[a-z0-9-]*?api[a-z0-9-]*?:jar:|author|X-MS-Exchange-Organization-Auth|Authentication-Results|(?:credentials?[_.-]?id|withCredentials)|(?:bucket|foreign|hot|idx|natural|primary|pub(?:lic)?|schema|sequence)[_.-]?key|(?:turkey)|key[_.-]?(?:alias|board|code|frame|id|length|mesh|name|pair|press(?:ed)?|ring|selector|signature|size|stone|storetype|word|up|down|left|right)|key[_.-]?vault[_.-]?(?:id|name)|keyVaultToStoreSecrets|key(?:store|tab)[_.-]?(?:file|path)|issuerkeyhash|(?-i:[DdMm]onkey|[DM]ONKEY)|keying|(?:secret)[_.-]?(?:length|name|size)|UserSecretsId|(?:csrf)[_.-]?token|(?:io\.jsonwebtoken[ \t]?:[ \t]?[\w-]+)|(?:api|credentials|token)[_.-]?(?:endpoint|ur[il])|public[_.-]?token|(?:key|token)[_.-]?file|(?-i:(?:[A-Z_]+=\n[A-Z_]+=|[a-z_]+=\n[a-z_]+=)(?:\n|\z))|(?-i:(?:[A-Z.]+=\n[A-Z.]+=|[a-z.]+=\n[a-z.]+=)(?:\n|\z)))''',
  582. ]
  583. stopwords = [
  584. "000000",
  585. "6fe4476ee5a1832882e326b506d14126",
  586. "_ec2_",
  587. "aaaaaa",
  588. "about",
  589. "abstract",
  590. "academy",
  591. "acces",
  592. "account",
  593. "act-",
  594. "act.",
  595. "act_",
  596. "action",
  597. "active",
  598. "actively",
  599. "activity",
  600. "adapter",
  601. "add-",
  602. "add-on",
  603. "add.",
  604. "add_",
  605. "addon",
  606. "addres",
  607. "admin",
  608. "adobe",
  609. "advanced",
  610. "adventure",
  611. "agent",
  612. "agile",
  613. "air-",
  614. "air.",
  615. "air_",
  616. "ajax",
  617. "akka",
  618. "alert",
  619. "alfred",
  620. "algorithm",
  621. "all-",
  622. "all.",
  623. "all_",
  624. "alloy",
  625. "alpha",
  626. "amazon",
  627. "amqp",
  628. "analysi",
  629. "analytic",
  630. "analyzer",
  631. "android",
  632. "angular",
  633. "angularj",
  634. "animate",
  635. "animation",
  636. "another",
  637. "ansible",
  638. "answer",
  639. "ant-",
  640. "ant.",
  641. "ant_",
  642. "any-",
  643. "any.",
  644. "any_",
  645. "apache",
  646. "app-",
  647. "app.",
  648. "app_",
  649. "apple",
  650. "arch",
  651. "archive",
  652. "archived",
  653. "arduino",
  654. "array",
  655. "art-",
  656. "art.",
  657. "art_",
  658. "article",
  659. "asp-",
  660. "asp.",
  661. "asp_",
  662. "asset",
  663. "async",
  664. "atom",
  665. "attention",
  666. "audio",
  667. "audit",
  668. "aura",
  669. "auth",
  670. "author",
  671. "authorize",
  672. "auto",
  673. "automated",
  674. "automatic",
  675. "awesome",
  676. "aws_",
  677. "azure",
  678. "back",
  679. "backbone",
  680. "backend",
  681. "backup",
  682. "bar-",
  683. "bar.",
  684. "bar_",
  685. "base",
  686. "based",
  687. "bash",
  688. "basic",
  689. "batch",
  690. "been",
  691. "beer",
  692. "behavior",
  693. "being",
  694. "benchmark",
  695. "best",
  696. "beta",
  697. "better",
  698. "big-",
  699. "big.",
  700. "big_",
  701. "binary",
  702. "binding",
  703. "bit-",
  704. "bit.",
  705. "bit_",
  706. "bitcoin",
  707. "block",
  708. "blog",
  709. "board",
  710. "book",
  711. "bookmark",
  712. "boost",
  713. "boot",
  714. "bootstrap",
  715. "bosh",
  716. "bot-",
  717. "bot.",
  718. "bot_",
  719. "bower",
  720. "box-",
  721. "box.",
  722. "box_",
  723. "boxen",
  724. "bracket",
  725. "branch",
  726. "bridge",
  727. "browser",
  728. "brunch",
  729. "buffer",
  730. "bug-",
  731. "bug.",
  732. "bug_",
  733. "build",
  734. "builder",
  735. "building",
  736. "buildout",
  737. "buildpack",
  738. "built",
  739. "bundle",
  740. "busines",
  741. "but-",
  742. "but.",
  743. "but_",
  744. "button",
  745. "cache",
  746. "caching",
  747. "cakephp",
  748. "calendar",
  749. "call",
  750. "camera",
  751. "campfire",
  752. "can-",
  753. "can.",
  754. "can_",
  755. "canva",
  756. "captcha",
  757. "capture",
  758. "card",
  759. "carousel",
  760. "case",
  761. "cassandra",
  762. "cat-",
  763. "cat.",
  764. "cat_",
  765. "category",
  766. "center",
  767. "cento",
  768. "challenge",
  769. "change",
  770. "changelog",
  771. "channel",
  772. "chart",
  773. "chat",
  774. "cheat",
  775. "check",
  776. "checker",
  777. "chef",
  778. "ches",
  779. "chinese",
  780. "chosen",
  781. "chrome",
  782. "ckeditor",
  783. "clas",
  784. "classe",
  785. "classic",
  786. "clean",
  787. "cli-",
  788. "cli.",
  789. "cli_",
  790. "client",
  791. "clojure",
  792. "clone",
  793. "closure",
  794. "cloud",
  795. "club",
  796. "cluster",
  797. "cms-",
  798. "cms_",
  799. "coco",
  800. "code",
  801. "coding",
  802. "coffee",
  803. "color",
  804. "combination",
  805. "combo",
  806. "command",
  807. "commander",
  808. "comment",
  809. "commit",
  810. "common",
  811. "community",
  812. "compas",
  813. "compiler",
  814. "complete",
  815. "component",
  816. "composer",
  817. "computer",
  818. "computing",
  819. "con-",
  820. "con.",
  821. "con_",
  822. "concept",
  823. "conf",
  824. "config",
  825. "connect",
  826. "connector",
  827. "console",
  828. "contact",
  829. "container",
  830. "contao",
  831. "content",
  832. "contest",
  833. "context",
  834. "control",
  835. "convert",
  836. "converter",
  837. "conway'",
  838. "cookbook",
  839. "cookie",
  840. "cool",
  841. "copy",
  842. "cordova",
  843. "core",
  844. "couchbase",
  845. "couchdb",
  846. "countdown",
  847. "counter",
  848. "course",
  849. "craft",
  850. "crawler",
  851. "create",
  852. "creating",
  853. "creator",
  854. "credential",
  855. "crm-",
  856. "crm.",
  857. "crm_",
  858. "cros",
  859. "crud",
  860. "csv-",
  861. "csv.",
  862. "csv_",
  863. "cube",
  864. "cucumber",
  865. "cuda",
  866. "current",
  867. "currently",
  868. "custom",
  869. "daemon",
  870. "dark",
  871. "dart",
  872. "dash",
  873. "dashboard",
  874. "data",
  875. "database",
  876. "date",
  877. "day-",
  878. "day.",
  879. "day_",
  880. "dead",
  881. "debian",
  882. "debug",
  883. "debugger",
  884. "deck",
  885. "define",
  886. "del-",
  887. "del.",
  888. "del_",
  889. "delete",
  890. "demo",
  891. "deploy",
  892. "design",
  893. "designer",
  894. "desktop",
  895. "detection",
  896. "detector",
  897. "dev-",
  898. "dev.",
  899. "dev_",
  900. "develop",
  901. "developer",
  902. "device",
  903. "devise",
  904. "diff",
  905. "digital",
  906. "directive",
  907. "directory",
  908. "discovery",
  909. "display",
  910. "django",
  911. "dns-",
  912. "dns_",
  913. "doc-",
  914. "doc.",
  915. "doc_",
  916. "docker",
  917. "docpad",
  918. "doctrine",
  919. "document",
  920. "doe-",
  921. "doe.",
  922. "doe_",
  923. "dojo",
  924. "dom-",
  925. "dom.",
  926. "dom_",
  927. "domain",
  928. "don't",
  929. "done",
  930. "dot-",
  931. "dot.",
  932. "dot_",
  933. "dotfile",
  934. "download",
  935. "draft",
  936. "drag",
  937. "drill",
  938. "drive",
  939. "driven",
  940. "driver",
  941. "drop",
  942. "dropbox",
  943. "drupal",
  944. "dsl-",
  945. "dsl.",
  946. "dsl_",
  947. "dynamic",
  948. "easy",
  949. "ecdsa",
  950. "eclipse",
  951. "edit",
  952. "editing",
  953. "edition",
  954. "editor",
  955. "element",
  956. "emac",
  957. "email",
  958. "embed",
  959. "embedded",
  960. "ember",
  961. "emitter",
  962. "emulator",
  963. "encoding",
  964. "endpoint",
  965. "engine",
  966. "english",
  967. "enhanced",
  968. "entity",
  969. "entry",
  970. "env_",
  971. "episode",
  972. "erlang",
  973. "error",
  974. "espresso",
  975. "event",
  976. "evented",
  977. "example",
  978. "exchange",
  979. "exercise",
  980. "experiment",
  981. "expire",
  982. "exploit",
  983. "explorer",
  984. "export",
  985. "exporter",
  986. "expres",
  987. "ext-",
  988. "ext.",
  989. "ext_",
  990. "extended",
  991. "extension",
  992. "external",
  993. "extra",
  994. "extractor",
  995. "fabric",
  996. "facebook",
  997. "factory",
  998. "fake",
  999. "fast",
  1000. "feature",
  1001. "feed",
  1002. "fewfwef",
  1003. "ffmpeg",
  1004. "field",
  1005. "file",
  1006. "filter",
  1007. "find",
  1008. "finder",
  1009. "firefox",
  1010. "firmware",
  1011. "first",
  1012. "fish",
  1013. "fix-",
  1014. "fix_",
  1015. "flash",
  1016. "flask",
  1017. "flat",
  1018. "flex",
  1019. "flexible",
  1020. "flickr",
  1021. "flow",
  1022. "fluent",
  1023. "fluentd",
  1024. "fluid",
  1025. "folder",
  1026. "font",
  1027. "force",
  1028. "foreman",
  1029. "fork",
  1030. "form",
  1031. "format",
  1032. "formatter",
  1033. "forum",
  1034. "foundry",
  1035. "framework",
  1036. "free",
  1037. "friend",
  1038. "friendly",
  1039. "front-end",
  1040. "frontend",
  1041. "ftp-",
  1042. "ftp.",
  1043. "ftp_",
  1044. "fuel",
  1045. "full",
  1046. "fun-",
  1047. "fun.",
  1048. "fun_",
  1049. "func",
  1050. "future",
  1051. "gaia",
  1052. "gallery",
  1053. "game",
  1054. "gateway",
  1055. "gem-",
  1056. "gem.",
  1057. "gem_",
  1058. "gen-",
  1059. "gen.",
  1060. "gen_",
  1061. "general",
  1062. "generator",
  1063. "generic",
  1064. "genetic",
  1065. "get-",
  1066. "get.",
  1067. "get_",
  1068. "getenv",
  1069. "getting",
  1070. "ghost",
  1071. "gist",
  1072. "git-",
  1073. "git.",
  1074. "git_",
  1075. "github",
  1076. "gitignore",
  1077. "gitlab",
  1078. "glas",
  1079. "gmail",
  1080. "gnome",
  1081. "gnu-",
  1082. "gnu.",
  1083. "gnu_",
  1084. "goal",
  1085. "golang",
  1086. "gollum",
  1087. "good",
  1088. "google",
  1089. "gpu-",
  1090. "gpu.",
  1091. "gpu_",
  1092. "gradle",
  1093. "grail",
  1094. "graph",
  1095. "graphic",
  1096. "great",
  1097. "grid",
  1098. "groovy",
  1099. "group",
  1100. "grunt",
  1101. "guard",
  1102. "gui-",
  1103. "gui.",
  1104. "gui_",
  1105. "guide",
  1106. "guideline",
  1107. "gulp",
  1108. "gwt-",
  1109. "gwt.",
  1110. "gwt_",
  1111. "hack",
  1112. "hackathon",
  1113. "hacker",
  1114. "hacking",
  1115. "hadoop",
  1116. "haml",
  1117. "handler",
  1118. "hardware",
  1119. "has-",
  1120. "has_",
  1121. "hash",
  1122. "haskell",
  1123. "have",
  1124. "haxe",
  1125. "hello",
  1126. "help",
  1127. "helper",
  1128. "here",
  1129. "hero",
  1130. "heroku",
  1131. "high",
  1132. "hipchat",
  1133. "history",
  1134. "home",
  1135. "homebrew",
  1136. "homepage",
  1137. "hook",
  1138. "host",
  1139. "hosting",
  1140. "hot-",
  1141. "hot.",
  1142. "hot_",
  1143. "house",
  1144. "how-",
  1145. "how.",
  1146. "how_",
  1147. "html",
  1148. "http",
  1149. "hub-",
  1150. "hub.",
  1151. "hub_",
  1152. "hubot",
  1153. "human",
  1154. "icon",
  1155. "ide-",
  1156. "ide.",
  1157. "ide_",
  1158. "idea",
  1159. "identity",
  1160. "idiomatic",
  1161. "image",
  1162. "impact",
  1163. "import",
  1164. "important",
  1165. "importer",
  1166. "impres",
  1167. "index",
  1168. "infinite",
  1169. "info",
  1170. "injection",
  1171. "inline",
  1172. "input",
  1173. "inside",
  1174. "inspector",
  1175. "instagram",
  1176. "install",
  1177. "installer",
  1178. "instant",
  1179. "intellij",
  1180. "interface",
  1181. "internet",
  1182. "interview",
  1183. "into",
  1184. "intro",
  1185. "ionic",
  1186. "iphone",
  1187. "ipython",
  1188. "irc-",
  1189. "irc_",
  1190. "iso-",
  1191. "iso.",
  1192. "iso_",
  1193. "issue",
  1194. "jade",
  1195. "jasmine",
  1196. "java",
  1197. "jbos",
  1198. "jekyll",
  1199. "jenkin",
  1200. "jetbrains",
  1201. "job-",
  1202. "job.",
  1203. "job_",
  1204. "joomla",
  1205. "jpa-",
  1206. "jpa.",
  1207. "jpa_",
  1208. "jquery",
  1209. "json",
  1210. "just",
  1211. "kafka",
  1212. "karma",
  1213. "kata",
  1214. "kernel",
  1215. "keyboard",
  1216. "kindle",
  1217. "kit-",
  1218. "kit.",
  1219. "kit_",
  1220. "kitchen",
  1221. "knife",
  1222. "koan",
  1223. "kohana",
  1224. "lab-",
  1225. "lab.",
  1226. "lab_",
  1227. "lambda",
  1228. "lamp",
  1229. "language",
  1230. "laravel",
  1231. "last",
  1232. "latest",
  1233. "latex",
  1234. "launcher",
  1235. "layer",
  1236. "layout",
  1237. "lazy",
  1238. "ldap",
  1239. "leaflet",
  1240. "league",
  1241. "learn",
  1242. "learning",
  1243. "led-",
  1244. "led.",
  1245. "led_",
  1246. "leetcode",
  1247. "les-",
  1248. "les.",
  1249. "les_",
  1250. "level",
  1251. "leveldb",
  1252. "lib-",
  1253. "lib.",
  1254. "lib_",
  1255. "librarie",
  1256. "library",
  1257. "license",
  1258. "life",
  1259. "liferay",
  1260. "light",
  1261. "lightbox",
  1262. "like",
  1263. "line",
  1264. "link",
  1265. "linked",
  1266. "linkedin",
  1267. "linux",
  1268. "lisp",
  1269. "list",
  1270. "lite",
  1271. "little",
  1272. "load",
  1273. "loader",
  1274. "local",
  1275. "location",
  1276. "lock",
  1277. "log-",
  1278. "log.",
  1279. "log_",
  1280. "logger",
  1281. "logging",
  1282. "logic",
  1283. "login",
  1284. "logstash",
  1285. "longer",
  1286. "look",
  1287. "love",
  1288. "lua-",
  1289. "lua.",
  1290. "lua_",
  1291. "mac-",
  1292. "mac.",
  1293. "mac_",
  1294. "machine",
  1295. "made",
  1296. "magento",
  1297. "magic",
  1298. "mail",
  1299. "make",
  1300. "maker",
  1301. "making",
  1302. "man-",
  1303. "man.",
  1304. "man_",
  1305. "manage",
  1306. "manager",
  1307. "manifest",
  1308. "manual",
  1309. "map-",
  1310. "map.",
  1311. "map_",
  1312. "mapper",
  1313. "mapping",
  1314. "markdown",
  1315. "markup",
  1316. "master",
  1317. "math",
  1318. "matrix",
  1319. "maven",
  1320. "md5",
  1321. "mean",
  1322. "media",
  1323. "mediawiki",
  1324. "meetup",
  1325. "memcached",
  1326. "memory",
  1327. "menu",
  1328. "merchant",
  1329. "message",
  1330. "messaging",
  1331. "meta",
  1332. "metadata",
  1333. "meteor",
  1334. "method",
  1335. "metric",
  1336. "micro",
  1337. "middleman",
  1338. "migration",
  1339. "minecraft",
  1340. "miner",
  1341. "mini",
  1342. "minimal",
  1343. "mirror",
  1344. "mit-",
  1345. "mit.",
  1346. "mit_",
  1347. "mobile",
  1348. "mocha",
  1349. "mock",
  1350. "mod-",
  1351. "mod.",
  1352. "mod_",
  1353. "mode",
  1354. "model",
  1355. "modern",
  1356. "modular",
  1357. "module",
  1358. "modx",
  1359. "money",
  1360. "mongo",
  1361. "mongodb",
  1362. "mongoid",
  1363. "mongoose",
  1364. "monitor",
  1365. "monkey",
  1366. "more",
  1367. "motion",
  1368. "moved",
  1369. "movie",
  1370. "mozilla",
  1371. "mqtt",
  1372. "mule",
  1373. "multi",
  1374. "multiple",
  1375. "music",
  1376. "mustache",
  1377. "mvc-",
  1378. "mvc.",
  1379. "mvc_",
  1380. "mysql",
  1381. "nagio",
  1382. "name",
  1383. "native",
  1384. "need",
  1385. "neo-",
  1386. "neo.",
  1387. "neo_",
  1388. "nest",
  1389. "nested",
  1390. "net-",
  1391. "net.",
  1392. "net_",
  1393. "nette",
  1394. "network",
  1395. "new-",
  1396. "new.",
  1397. "new_",
  1398. "next",
  1399. "nginx",
  1400. "ninja",
  1401. "nlp-",
  1402. "nlp.",
  1403. "nlp_",
  1404. "node",
  1405. "nodej",
  1406. "nosql",
  1407. "not-",
  1408. "not.",
  1409. "not_",
  1410. "note",
  1411. "notebook",
  1412. "notepad",
  1413. "notice",
  1414. "notifier",
  1415. "now-",
  1416. "now.",
  1417. "now_",
  1418. "number",
  1419. "oauth",
  1420. "object",
  1421. "objective",
  1422. "obsolete",
  1423. "ocaml",
  1424. "octopres",
  1425. "official",
  1426. "old-",
  1427. "old.",
  1428. "old_",
  1429. "onboard",
  1430. "online",
  1431. "only",
  1432. "open",
  1433. "opencv",
  1434. "opengl",
  1435. "openshift",
  1436. "openwrt",
  1437. "option",
  1438. "oracle",
  1439. "org-",
  1440. "org.",
  1441. "org_",
  1442. "origin",
  1443. "original",
  1444. "orm-",
  1445. "orm.",
  1446. "orm_",
  1447. "osx-",
  1448. "osx_",
  1449. "our-",
  1450. "our.",
  1451. "our_",
  1452. "out-",
  1453. "out.",
  1454. "out_",
  1455. "output",
  1456. "over",
  1457. "overview",
  1458. "own-",
  1459. "own.",
  1460. "own_",
  1461. "pack",
  1462. "package",
  1463. "packet",
  1464. "page",
  1465. "panel",
  1466. "paper",
  1467. "paperclip",
  1468. "para",
  1469. "parallax",
  1470. "parallel",
  1471. "parse",
  1472. "parser",
  1473. "parsing",
  1474. "particle",
  1475. "party",
  1476. "password",
  1477. "patch",
  1478. "path",
  1479. "pattern",
  1480. "payment",
  1481. "paypal",
  1482. "pdf-",
  1483. "pdf.",
  1484. "pdf_",
  1485. "pebble",
  1486. "people",
  1487. "perl",
  1488. "personal",
  1489. "phalcon",
  1490. "phoenix",
  1491. "phone",
  1492. "phonegap",
  1493. "photo",
  1494. "php-",
  1495. "php.",
  1496. "php_",
  1497. "physic",
  1498. "picker",
  1499. "pipeline",
  1500. "platform",
  1501. "play",
  1502. "player",
  1503. "please",
  1504. "plu-",
  1505. "plu.",
  1506. "plu_",
  1507. "plug-in",
  1508. "plugin",
  1509. "plupload",
  1510. "png-",
  1511. "png.",
  1512. "png_",
  1513. "poker",
  1514. "polyfill",
  1515. "polymer",
  1516. "pool",
  1517. "pop-",
  1518. "pop.",
  1519. "pop_",
  1520. "popcorn",
  1521. "popup",
  1522. "port",
  1523. "portable",
  1524. "portal",
  1525. "portfolio",
  1526. "post",
  1527. "power",
  1528. "powered",
  1529. "powerful",
  1530. "prelude",
  1531. "pretty",
  1532. "preview",
  1533. "principle",
  1534. "print",
  1535. "pro-",
  1536. "pro.",
  1537. "pro_",
  1538. "problem",
  1539. "proc",
  1540. "product",
  1541. "profile",
  1542. "profiler",
  1543. "program",
  1544. "progres",
  1545. "project",
  1546. "protocol",
  1547. "prototype",
  1548. "provider",
  1549. "proxy",
  1550. "public",
  1551. "pull",
  1552. "puppet",
  1553. "pure",
  1554. "purpose",
  1555. "push",
  1556. "pusher",
  1557. "pyramid",
  1558. "python",
  1559. "quality",
  1560. "query",
  1561. "queue",
  1562. "quick",
  1563. "rabbitmq",
  1564. "rack",
  1565. "radio",
  1566. "rail",
  1567. "railscast",
  1568. "random",
  1569. "range",
  1570. "raspberry",
  1571. "rdf-",
  1572. "rdf.",
  1573. "rdf_",
  1574. "react",
  1575. "reactive",
  1576. "read",
  1577. "reader",
  1578. "readme",
  1579. "ready",
  1580. "real",
  1581. "real-time",
  1582. "reality",
  1583. "realtime",
  1584. "recipe",
  1585. "recorder",
  1586. "red-",
  1587. "red.",
  1588. "red_",
  1589. "reddit",
  1590. "redi",
  1591. "redmine",
  1592. "reference",
  1593. "refinery",
  1594. "refresh",
  1595. "registry",
  1596. "related",
  1597. "release",
  1598. "remote",
  1599. "rendering",
  1600. "repo",
  1601. "report",
  1602. "request",
  1603. "require",
  1604. "required",
  1605. "requirej",
  1606. "research",
  1607. "resource",
  1608. "response",
  1609. "resque",
  1610. "rest",
  1611. "restful",
  1612. "resume",
  1613. "reveal",
  1614. "reverse",
  1615. "review",
  1616. "riak",
  1617. "rich",
  1618. "right",
  1619. "ring",
  1620. "robot",
  1621. "role",
  1622. "room",
  1623. "router",
  1624. "routing",
  1625. "rpc-",
  1626. "rpc.",
  1627. "rpc_",
  1628. "rpg-",
  1629. "rpg.",
  1630. "rpg_",
  1631. "rspec",
  1632. "ruby-",
  1633. "ruby.",
  1634. "ruby_",
  1635. "rule",
  1636. "run-",
  1637. "run.",
  1638. "run_",
  1639. "runner",
  1640. "running",
  1641. "runtime",
  1642. "rust",
  1643. "rvm-",
  1644. "rvm.",
  1645. "rvm_",
  1646. "salt",
  1647. "sample",
  1648. "sandbox",
  1649. "sas-",
  1650. "sas.",
  1651. "sas_",
  1652. "sbt-",
  1653. "sbt.",
  1654. "sbt_",
  1655. "scala",
  1656. "scalable",
  1657. "scanner",
  1658. "schema",
  1659. "scheme",
  1660. "school",
  1661. "science",
  1662. "scraper",
  1663. "scratch",
  1664. "screen",
  1665. "script",
  1666. "scroll",
  1667. "scs-",
  1668. "scs.",
  1669. "scs_",
  1670. "sdk-",
  1671. "sdk.",
  1672. "sdk_",
  1673. "sdl-",
  1674. "sdl.",
  1675. "sdl_",
  1676. "search",
  1677. "secure",
  1678. "security",
  1679. "see-",
  1680. "see.",
  1681. "see_",
  1682. "seed",
  1683. "select",
  1684. "selector",
  1685. "selenium",
  1686. "semantic",
  1687. "sencha",
  1688. "send",
  1689. "sentiment",
  1690. "serie",
  1691. "server",
  1692. "service",
  1693. "session",
  1694. "set-",
  1695. "set.",
  1696. "set_",
  1697. "setting",
  1698. "setup",
  1699. "sha1",
  1700. "sha2",
  1701. "sha256",
  1702. "share",
  1703. "shared",
  1704. "sharing",
  1705. "sheet",
  1706. "shell",
  1707. "shield",
  1708. "shipping",
  1709. "shop",
  1710. "shopify",
  1711. "shortener",
  1712. "should",
  1713. "show",
  1714. "showcase",
  1715. "side",
  1716. "silex",
  1717. "simple",
  1718. "simulator",
  1719. "single",
  1720. "site",
  1721. "skeleton",
  1722. "sketch",
  1723. "skin",
  1724. "slack",
  1725. "slide",
  1726. "slider",
  1727. "slim",
  1728. "small",
  1729. "smart",
  1730. "smtp",
  1731. "snake",
  1732. "snapshot",
  1733. "snippet",
  1734. "soap",
  1735. "social",
  1736. "socket",
  1737. "software",
  1738. "solarized",
  1739. "solr",
  1740. "solution",
  1741. "solver",
  1742. "some",
  1743. "soon",
  1744. "source",
  1745. "space",
  1746. "spark",
  1747. "spatial",
  1748. "spec",
  1749. "sphinx",
  1750. "spine",
  1751. "spotify",
  1752. "spree",
  1753. "spring",
  1754. "sprite",
  1755. "sql-",
  1756. "sql.",
  1757. "sql_",
  1758. "sqlite",
  1759. "ssh-",
  1760. "ssh.",
  1761. "ssh_",
  1762. "stack",
  1763. "staging",
  1764. "standard",
  1765. "stanford",
  1766. "start",
  1767. "started",
  1768. "starter",
  1769. "startup",
  1770. "stat",
  1771. "statamic",
  1772. "state",
  1773. "static",
  1774. "statistic",
  1775. "statsd",
  1776. "statu",
  1777. "steam",
  1778. "step",
  1779. "still",
  1780. "stm-",
  1781. "stm.",
  1782. "stm_",
  1783. "storage",
  1784. "store",
  1785. "storm",
  1786. "story",
  1787. "strategy",
  1788. "stream",
  1789. "streaming",
  1790. "string",
  1791. "stripe",
  1792. "structure",
  1793. "studio",
  1794. "study",
  1795. "stuff",
  1796. "style",
  1797. "sublime",
  1798. "sugar",
  1799. "suite",
  1800. "summary",
  1801. "super",
  1802. "support",
  1803. "supported",
  1804. "svg-",
  1805. "svg.",
  1806. "svg_",
  1807. "svn-",
  1808. "svn.",
  1809. "svn_",
  1810. "swagger",
  1811. "swift",
  1812. "switch",
  1813. "switcher",
  1814. "symfony",
  1815. "symphony",
  1816. "sync",
  1817. "synopsi",
  1818. "syntax",
  1819. "system",
  1820. "tab-",
  1821. "tab.",
  1822. "tab_",
  1823. "table",
  1824. "tag-",
  1825. "tag.",
  1826. "tag_",
  1827. "talk",
  1828. "target",
  1829. "task",
  1830. "tcp-",
  1831. "tcp.",
  1832. "tcp_",
  1833. "tdd-",
  1834. "tdd.",
  1835. "tdd_",
  1836. "team",
  1837. "tech",
  1838. "template",
  1839. "term",
  1840. "terminal",
  1841. "testing",
  1842. "tetri",
  1843. "text",
  1844. "textmate",
  1845. "theme",
  1846. "theory",
  1847. "three",
  1848. "thrift",
  1849. "time",
  1850. "timeline",
  1851. "timer",
  1852. "tiny",
  1853. "tinymce",
  1854. "tip-",
  1855. "tip.",
  1856. "tip_",
  1857. "title",
  1858. "todo",
  1859. "todomvc",
  1860. "token",
  1861. "tool",
  1862. "toolbox",
  1863. "toolkit",
  1864. "top-",
  1865. "top.",
  1866. "top_",
  1867. "tornado",
  1868. "touch",
  1869. "tower",
  1870. "tracker",
  1871. "tracking",
  1872. "traffic",
  1873. "training",
  1874. "transfer",
  1875. "translate",
  1876. "transport",
  1877. "tree",
  1878. "trello",
  1879. "try-",
  1880. "try.",
  1881. "try_",
  1882. "tumblr",
  1883. "tut-",
  1884. "tut.",
  1885. "tut_",
  1886. "tutorial",
  1887. "tweet",
  1888. "twig",
  1889. "twitter",
  1890. "type",
  1891. "typo",
  1892. "ubuntu",
  1893. "uiview",
  1894. "ultimate",
  1895. "under",
  1896. "unit",
  1897. "unity",
  1898. "universal",
  1899. "unix",
  1900. "update",
  1901. "updated",
  1902. "upgrade",
  1903. "upload",
  1904. "uploader",
  1905. "uri-",
  1906. "uri.",
  1907. "uri_",
  1908. "url-",
  1909. "url.",
  1910. "url_",
  1911. "usage",
  1912. "usb-",
  1913. "usb.",
  1914. "usb_",
  1915. "use-",
  1916. "use.",
  1917. "use_",
  1918. "used",
  1919. "useful",
  1920. "user",
  1921. "using",
  1922. "util",
  1923. "utilitie",
  1924. "utility",
  1925. "vagrant",
  1926. "validator",
  1927. "value",
  1928. "variou",
  1929. "varnish",
  1930. "version",
  1931. "via-",
  1932. "via.",
  1933. "via_",
  1934. "video",
  1935. "view",
  1936. "viewer",
  1937. "vim-",
  1938. "vim.",
  1939. "vim_",
  1940. "vimrc",
  1941. "virtual",
  1942. "vision",
  1943. "visual",
  1944. "vpn",
  1945. "want",
  1946. "warning",
  1947. "watch",
  1948. "watcher",
  1949. "wave",
  1950. "way-",
  1951. "way.",
  1952. "way_",
  1953. "weather",
  1954. "web-",
  1955. "web_",
  1956. "webapp",
  1957. "webgl",
  1958. "webhook",
  1959. "webkit",
  1960. "webrtc",
  1961. "website",
  1962. "websocket",
  1963. "welcome",
  1964. "what",
  1965. "what'",
  1966. "when",
  1967. "where",
  1968. "which",
  1969. "why-",
  1970. "why.",
  1971. "why_",
  1972. "widget",
  1973. "wifi",
  1974. "wiki",
  1975. "win-",
  1976. "win.",
  1977. "win_",
  1978. "window",
  1979. "wip-",
  1980. "wip.",
  1981. "wip_",
  1982. "within",
  1983. "without",
  1984. "wizard",
  1985. "word",
  1986. "wordpres",
  1987. "work",
  1988. "worker",
  1989. "workflow",
  1990. "working",
  1991. "workshop",
  1992. "world",
  1993. "wrapper",
  1994. "write",
  1995. "writer",
  1996. "writing",
  1997. "written",
  1998. "www-",
  1999. "www.",
  2000. "www_",
  2001. "xamarin",
  2002. "xcode",
  2003. "xml-",
  2004. "xml.",
  2005. "xml_",
  2006. "xmpp",
  2007. "xxxxxx",
  2008. "yahoo",
  2009. "yaml",
  2010. "yandex",
  2011. "yeoman",
  2012. "yet-",
  2013. "yet.",
  2014. "yet_",
  2015. "yii-",
  2016. "yii.",
  2017. "yii_",
  2018. "youtube",
  2019. "yui-",
  2020. "yui.",
  2021. "yui_",
  2022. "zend",
  2023. "zero",
  2024. "zip-",
  2025. "zip.",
  2026. "zip_",
  2027. "zsh-",
  2028. "zsh.",
  2029. "zsh_",
  2030. ]
  2031. [[rules.allowlists]]
  2032. regexTarget = "line"
  2033. regexes = [
  2034. '''--mount=type=secret,''',
  2035. '''import[ \t]+{[ \t\w,]+}[ \t]+from[ \t]+['"][^'"]+['"]''',
  2036. ]
  2037. [[rules.allowlists]]
  2038. condition = "AND"
  2039. paths = [
  2040. '''\.bb$''','''\.bbappend$''','''\.bbclass$''','''\.inc$''',
  2041. ]
  2042. regexTarget = "line"
  2043. regexes = [
  2044. '''LICENSE[^=]*=\s*"[^"]+''',
  2045. '''LIC_FILES_CHKSUM[^=]*=\s*"[^"]+''',
  2046. '''SRC[^=]*=\s*"[a-zA-Z0-9]+''',
  2047. ]
  2048. [[rules]]
  2049. id = "github-app-token"
  2050. description = "Identified a GitHub App Token, which may compromise GitHub application integrations and source code security."
  2051. regex = '''(?:ghu|ghs)_[0-9a-zA-Z]{36}'''
  2052. entropy = 3
  2053. keywords = [
  2054. "ghu_",
  2055. "ghs_",
  2056. ]
  2057. [[rules.allowlists]]
  2058. paths = [
  2059. '''(?:^|/)@octokit/auth-token/README\.md$''',
  2060. ]
  2061. [[rules]]
  2062. id = "github-fine-grained-pat"
  2063. description = "Found a GitHub Fine-Grained Personal Access Token, risking unauthorized repository access and code manipulation."
  2064. regex = '''github_pat_\w{82}'''
  2065. entropy = 3
  2066. keywords = ["github_pat_"]
  2067. [[rules]]
  2068. id = "github-oauth"
  2069. description = "Discovered a GitHub OAuth Access Token, posing a risk of compromised GitHub account integrations and data leaks."
  2070. regex = '''gho_[0-9a-zA-Z]{36}'''
  2071. entropy = 3
  2072. keywords = ["gho_"]
  2073. [[rules]]
  2074. id = "github-pat"
  2075. description = "Uncovered a GitHub Personal Access Token, potentially leading to unauthorized repository access and sensitive content exposure."
  2076. regex = '''ghp_[0-9a-zA-Z]{36}'''
  2077. entropy = 3
  2078. keywords = ["ghp_"]
  2079. [[rules.allowlists]]
  2080. paths = [
  2081. '''(?:^|/)@octokit/auth-token/README\.md$''',
  2082. ]
  2083. [[rules]]
  2084. id = "github-refresh-token"
  2085. description = "Detected a GitHub Refresh Token, which could allow prolonged unauthorized access to GitHub services."
  2086. regex = '''ghr_[0-9a-zA-Z]{36}'''
  2087. entropy = 3
  2088. keywords = ["ghr_"]
  2089. [[rules]]
  2090. id = "gitlab-cicd-job-token"
  2091. description = "Identified a GitLab CI/CD Job Token, potential access to projects and some APIs on behalf of a user while the CI job is running."
  2092. regex = '''glcbt-[0-9a-zA-Z]{1,5}_[0-9a-zA-Z_-]{20}'''
  2093. entropy = 3
  2094. keywords = ["glcbt-"]
  2095. [[rules]]
  2096. id = "gitlab-deploy-token"
  2097. description = "Identified a GitLab Deploy Token, risking access to repositories, packages and containers with write access."
  2098. regex = '''gldt-[0-9a-zA-Z_\-]{20}'''
  2099. entropy = 3
  2100. keywords = ["gldt-"]
  2101. [[rules]]
  2102. id = "gitlab-feature-flag-client-token"
  2103. description = "Identified a GitLab feature flag client token, risks exposing user lists and features flags used by an application."
  2104. regex = '''glffct-[0-9a-zA-Z_\-]{20}'''
  2105. entropy = 3
  2106. keywords = ["glffct-"]
  2107. [[rules]]
  2108. id = "gitlab-feed-token"
  2109. description = "Identified a GitLab feed token, risking exposure of user data."
  2110. regex = '''glft-[0-9a-zA-Z_\-]{20}'''
  2111. entropy = 3
  2112. keywords = ["glft-"]
  2113. [[rules]]
  2114. id = "gitlab-incoming-mail-token"
  2115. description = "Identified a GitLab incoming mail token, risking manipulation of data sent by mail."
  2116. regex = '''glimt-[0-9a-zA-Z_\-]{25}'''
  2117. entropy = 3
  2118. keywords = ["glimt-"]
  2119. [[rules]]
  2120. id = "gitlab-kubernetes-agent-token"
  2121. description = "Identified a GitLab Kubernetes Agent token, risking access to repos and registry of projects connected via agent."
  2122. regex = '''glagent-[0-9a-zA-Z_\-]{50}'''
  2123. entropy = 3
  2124. keywords = ["glagent-"]
  2125. [[rules]]
  2126. id = "gitlab-oauth-app-secret"
  2127. description = "Identified a GitLab OIDC Application Secret, risking access to apps using GitLab as authentication provider."
  2128. regex = '''gloas-[0-9a-zA-Z_\-]{64}'''
  2129. entropy = 3
  2130. keywords = ["gloas-"]
  2131. [[rules]]
  2132. id = "gitlab-pat"
  2133. description = "Identified a GitLab Personal Access Token, risking unauthorized access to GitLab repositories and codebase exposure."
  2134. regex = '''glpat-[\w-]{20}'''
  2135. entropy = 3
  2136. keywords = ["glpat-"]
  2137. [[rules]]
  2138. id = "gitlab-pat-routable"
  2139. description = "Identified a GitLab Personal Access Token (routable), risking unauthorized access to GitLab repositories and codebase exposure."
  2140. regex = '''\bglpat-[0-9a-zA-Z_-]{27,300}\.[0-9a-z]{2}[0-9a-z]{7}\b'''
  2141. entropy = 4
  2142. keywords = ["glpat-"]
  2143. [[rules]]
  2144. id = "gitlab-ptt"
  2145. description = "Found a GitLab Pipeline Trigger Token, potentially compromising continuous integration workflows and project security."
  2146. regex = '''glptt-[0-9a-f]{40}'''
  2147. entropy = 3
  2148. keywords = ["glptt-"]
  2149. [[rules]]
  2150. id = "gitlab-rrt"
  2151. description = "Discovered a GitLab Runner Registration Token, posing a risk to CI/CD pipeline integrity and unauthorized access."
  2152. regex = '''GR1348941[\w-]{20}'''
  2153. entropy = 3
  2154. keywords = ["gr1348941"]
  2155. [[rules]]
  2156. id = "gitlab-runner-authentication-token"
  2157. description = "Discovered a GitLab Runner Authentication Token, posing a risk to CI/CD pipeline integrity and unauthorized access."
  2158. regex = '''glrt-[0-9a-zA-Z_\-]{20}'''
  2159. entropy = 3
  2160. keywords = ["glrt-"]
  2161. [[rules]]
  2162. id = "gitlab-runner-authentication-token-routable"
  2163. description = "Discovered a GitLab Runner Authentication Token (Routable), posing a risk to CI/CD pipeline integrity and unauthorized access."
  2164. regex = '''\bglrt-t\d_[0-9a-zA-Z_\-]{27,300}\.[0-9a-z]{2}[0-9a-z]{7}\b'''
  2165. entropy = 4
  2166. keywords = ["glrt-"]
  2167. [[rules]]
  2168. id = "gitlab-scim-token"
  2169. description = "Discovered a GitLab SCIM Token, posing a risk to unauthorized access for a organization or instance."
  2170. regex = '''glsoat-[0-9a-zA-Z_\-]{20}'''
  2171. entropy = 3
  2172. keywords = ["glsoat-"]
  2173. [[rules]]
  2174. id = "gitlab-session-cookie"
  2175. description = "Discovered a GitLab Session Cookie, posing a risk to unauthorized access to a user account."
  2176. regex = '''_gitlab_session=[0-9a-z]{32}'''
  2177. entropy = 3
  2178. keywords = ["_gitlab_session="]
  2179. [[rules]]
  2180. id = "gitter-access-token"
  2181. description = "Uncovered a Gitter Access Token, which may lead to unauthorized access to chat and communication services."
  2182. regex = '''(?i)[\w.-]{0,50}?(?:gitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9_-]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2183. keywords = ["gitter"]
  2184. [[rules]]
  2185. id = "gocardless-api-token"
  2186. description = "Detected a GoCardless API token, potentially risking unauthorized direct debit payment operations and financial data exposure."
  2187. regex = '''(?i)[\w.-]{0,50}?(?:gocardless)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(live_(?i)[a-z0-9\-_=]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2188. keywords = [
  2189. "live_",
  2190. "gocardless",
  2191. ]
  2192. [[rules]]
  2193. id = "grafana-api-key"
  2194. description = "Identified a Grafana API key, which could compromise monitoring dashboards and sensitive data analytics."
  2195. regex = '''(?i)\b(eyJrIjoi[A-Za-z0-9]{70,400}={0,3})(?:[\x60'"\s;]|\\[nr]|$)'''
  2196. entropy = 3
  2197. keywords = ["eyjrijoi"]
  2198. [[rules]]
  2199. id = "grafana-cloud-api-token"
  2200. description = "Found a Grafana cloud API token, risking unauthorized access to cloud-based monitoring services and data exposure."
  2201. regex = '''(?i)\b(glc_[A-Za-z0-9+/]{32,400}={0,3})(?:[\x60'"\s;]|\\[nr]|$)'''
  2202. entropy = 3
  2203. keywords = ["glc_"]
  2204. [[rules]]
  2205. id = "grafana-service-account-token"
  2206. description = "Discovered a Grafana service account token, posing a risk of compromised monitoring services and data integrity."
  2207. regex = '''(?i)\b(glsa_[A-Za-z0-9]{32}_[A-Fa-f0-9]{8})(?:[\x60'"\s;]|\\[nr]|$)'''
  2208. entropy = 3
  2209. keywords = ["glsa_"]
  2210. [[rules]]
  2211. id = "harness-api-key"
  2212. description = "Identified a Harness Access Token (PAT or SAT), risking unauthorized access to a Harness account."
  2213. regex = '''(?:pat|sat)\.[a-zA-Z0-9_-]{22}\.[a-zA-Z0-9]{24}\.[a-zA-Z0-9]{20}'''
  2214. keywords = [
  2215. "pat.",
  2216. "sat.",
  2217. ]
  2218. [[rules]]
  2219. id = "hashicorp-tf-api-token"
  2220. description = "Uncovered a HashiCorp Terraform user/org API token, which may lead to unauthorized infrastructure management and security breaches."
  2221. regex = '''(?i)[a-z0-9]{14}\.(?-i:atlasv1)\.[a-z0-9\-_=]{60,70}'''
  2222. entropy = 3.5
  2223. keywords = ["atlasv1"]
  2224. [[rules]]
  2225. id = "hashicorp-tf-password"
  2226. description = "Identified a HashiCorp Terraform password field, risking unauthorized infrastructure configuration and security breaches."
  2227. regex = '''(?i)[\w.-]{0,50}?(?:administrator_login_password|password)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}("[a-z0-9=_\-]{8,20}")(?:[\x60'"\s;]|\\[nr]|$)'''
  2228. path = '''(?i)\.(?:tf|hcl)$'''
  2229. entropy = 2
  2230. keywords = [
  2231. "administrator_login_password",
  2232. "password",
  2233. ]
  2234. [[rules]]
  2235. id = "heroku-api-key"
  2236. description = "Detected a Heroku API Key, potentially compromising cloud application deployments and operational security."
  2237. regex = '''(?i)[\w.-]{0,50}?(?:heroku)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2238. keywords = ["heroku"]
  2239. [[rules]]
  2240. id = "heroku-api-key-v2"
  2241. description = "Detected a Heroku API Key, potentially compromising cloud application deployments and operational security."
  2242. regex = '''\b((HRKU-AA[0-9a-zA-Z_-]{58}))(?:[\x60'"\s;]|\\[nr]|$)'''
  2243. entropy = 4
  2244. keywords = ["hrku-aa"]
  2245. [[rules]]
  2246. id = "hubspot-api-key"
  2247. description = "Found a HubSpot API Token, posing a risk to CRM data integrity and unauthorized marketing operations."
  2248. regex = '''(?i)[\w.-]{0,50}?(?:hubspot)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2249. keywords = ["hubspot"]
  2250. [[rules]]
  2251. id = "huggingface-access-token"
  2252. description = "Discovered a Hugging Face Access token, which could lead to unauthorized access to AI models and sensitive data."
  2253. regex = '''\b(hf_(?i:[a-z]{34}))(?:[\x60'"\s;]|\\[nr]|$)'''
  2254. entropy = 2
  2255. keywords = ["hf_"]
  2256. [[rules]]
  2257. id = "huggingface-organization-api-token"
  2258. description = "Uncovered a Hugging Face Organization API token, potentially compromising AI organization accounts and associated data."
  2259. regex = '''\b(api_org_(?i:[a-z]{34}))(?:[\x60'"\s;]|\\[nr]|$)'''
  2260. entropy = 2
  2261. keywords = ["api_org_"]
  2262. [[rules]]
  2263. id = "infracost-api-token"
  2264. description = "Detected an Infracost API Token, risking unauthorized access to cloud cost estimation tools and financial data."
  2265. regex = '''\b(ico-[a-zA-Z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2266. entropy = 3
  2267. keywords = ["ico-"]
  2268. [[rules]]
  2269. id = "intercom-api-key"
  2270. description = "Identified an Intercom API Token, which could compromise customer communication channels and data privacy."
  2271. regex = '''(?i)[\w.-]{0,50}?(?:intercom)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{60})(?:[\x60'"\s;]|\\[nr]|$)'''
  2272. keywords = ["intercom"]
  2273. [[rules]]
  2274. id = "intra42-client-secret"
  2275. description = "Found a Intra42 client secret, which could lead to unauthorized access to the 42School API and sensitive data."
  2276. regex = '''\b(s-s4t2(?:ud|af)-(?i)[abcdef0123456789]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2277. entropy = 3
  2278. keywords = [
  2279. "intra",
  2280. "s-s4t2ud-",
  2281. "s-s4t2af-",
  2282. ]
  2283. [[rules]]
  2284. id = "jfrog-api-key"
  2285. description = "Found a JFrog API Key, posing a risk of unauthorized access to software artifact repositories and build pipelines."
  2286. regex = '''(?i)[\w.-]{0,50}?(?:jfrog|artifactory|bintray|xray)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{73})(?:[\x60'"\s;]|\\[nr]|$)'''
  2287. keywords = [
  2288. "jfrog",
  2289. "artifactory",
  2290. "bintray",
  2291. "xray",
  2292. ]
  2293. [[rules]]
  2294. id = "jfrog-identity-token"
  2295. description = "Discovered a JFrog Identity Token, potentially compromising access to JFrog services and sensitive software artifacts."
  2296. regex = '''(?i)[\w.-]{0,50}?(?:jfrog|artifactory|bintray|xray)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2297. keywords = [
  2298. "jfrog",
  2299. "artifactory",
  2300. "bintray",
  2301. "xray",
  2302. ]
  2303. [[rules]]
  2304. id = "jwt"
  2305. description = "Uncovered a JSON Web Token, which may lead to unauthorized access to web applications and sensitive user data."
  2306. regex = '''\b(ey[a-zA-Z0-9]{17,}\.ey[a-zA-Z0-9\/\\_-]{17,}\.(?:[a-zA-Z0-9\/\\_-]{10,}={0,2})?)(?:[\x60'"\s;]|\\[nr]|$)'''
  2307. entropy = 3
  2308. keywords = ["ey"]
  2309. [[rules]]
  2310. id = "jwt-base64"
  2311. description = "Detected a Base64-encoded JSON Web Token, posing a risk of exposing encoded authentication and data exchange information."
  2312. regex = '''\bZXlK(?:(?P<alg>aGJHY2lPaU)|(?P<apu>aGNIVWlPaU)|(?P<apv>aGNIWWlPaU)|(?P<aud>aGRXUWlPaU)|(?P<b64>aU5qUWlP)|(?P<crit>amNtbDBJanBi)|(?P<cty>amRIa2lPaU)|(?P<epk>bGNHc2lPbn)|(?P<enc>bGJtTWlPaU)|(?P<jku>cWEzVWlPaU)|(?P<jwk>cWQyc2lPb)|(?P<iss>cGMzTWlPaU)|(?P<iv>cGRpSTZJ)|(?P<kid>cmFXUWlP)|(?P<key_ops>clpYbGZiM0J6SWpwY)|(?P<kty>cmRIa2lPaUp)|(?P<nonce>dWIyNWpaU0k2)|(?P<p2c>d01tTWlP)|(?P<p2s>d01uTWlPaU)|(?P<ppt>d2NIUWlPaU)|(?P<sub>emRXSWlPaU)|(?P<svt>emRuUWlP)|(?P<tag>MFlXY2lPaU)|(?P<typ>MGVYQWlPaUp)|(?P<url>MWNtd2l)|(?P<use>MWMyVWlPaUp)|(?P<ver>MlpYSWlPaU)|(?P<version>MlpYSnphVzl1SWpv)|(?P<x>NElqb2)|(?P<x5c>NE5XTWlP)|(?P<x5t>NE5YUWlPaU)|(?P<x5ts256>NE5YUWpVekkxTmlJNkl)|(?P<x5u>NE5YVWlPaU)|(?P<zip>NmFYQWlPaU))[a-zA-Z0-9\/\\_+\-\r\n]{40,}={0,2}'''
  2313. entropy = 2
  2314. keywords = ["zxlk"]
  2315. [[rules]]
  2316. id = "kraken-access-token"
  2317. description = "Identified a Kraken Access Token, potentially compromising cryptocurrency trading accounts and financial security."
  2318. regex = '''(?i)[\w.-]{0,50}?(?:kraken)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9\/=_\+\-]{80,90})(?:[\x60'"\s;]|\\[nr]|$)'''
  2319. keywords = ["kraken"]
  2320. [[rules]]
  2321. id = "kubernetes-secret-yaml"
  2322. description = "Possible Kubernetes Secret detected, posing a risk of leaking credentials/tokens from your deployments"
  2323. regex = '''(?i)(?:\bkind:[ \t]*["']?\bsecret\b["']?(?s:.){0,200}?\bdata:(?s:.){0,100}?\s+([\w.-]+:(?:[ \t]*(?:\||>[-+]?)\s+)?[ \t]*(?:["']?[a-z0-9+/]{10,}={0,3}["']?|\{\{[ \t\w"|$:=,.-]+}}|""|''))|\bdata:(?s:.){0,100}?\s+([\w.-]+:(?:[ \t]*(?:\||>[-+]?)\s+)?[ \t]*(?:["']?[a-z0-9+/]{10,}={0,3}["']?|\{\{[ \t\w"|$:=,.-]+}}|""|''))(?s:.){0,200}?\bkind:[ \t]*["']?\bsecret\b["']?)'''
  2324. path = '''(?i)\.ya?ml$'''
  2325. keywords = ["secret"]
  2326. [[rules.allowlists]]
  2327. regexes = [
  2328. '''[\w.-]+:(?:[ \t]*(?:\||>[-+]?)\s+)?[ \t]*(?:\{\{[ \t\w"|$:=,.-]+}}|""|'')''',
  2329. ]
  2330. [[rules.allowlists]]
  2331. regexTarget = "match"
  2332. regexes = [
  2333. '''(kind:(?s:.)+\n---\n(?s:.)+\bdata:|data:(?s:.)+\n---\n(?s:.)+\bkind:)''',
  2334. ]
  2335. [[rules]]
  2336. id = "kucoin-access-token"
  2337. description = "Found a Kucoin Access Token, risking unauthorized access to cryptocurrency exchange services and transactions."
  2338. regex = '''(?i)[\w.-]{0,50}?(?:kucoin)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{24})(?:[\x60'"\s;]|\\[nr]|$)'''
  2339. keywords = ["kucoin"]
  2340. [[rules]]
  2341. id = "kucoin-secret-key"
  2342. description = "Discovered a Kucoin Secret Key, which could lead to compromised cryptocurrency operations and financial data breaches."
  2343. regex = '''(?i)[\w.-]{0,50}?(?:kucoin)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2344. keywords = ["kucoin"]
  2345. [[rules]]
  2346. id = "launchdarkly-access-token"
  2347. description = "Uncovered a Launchdarkly Access Token, potentially compromising feature flag management and application functionality."
  2348. regex = '''(?i)[\w.-]{0,50}?(?:launchdarkly)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2349. keywords = ["launchdarkly"]
  2350. [[rules]]
  2351. id = "linear-api-key"
  2352. description = "Detected a Linear API Token, posing a risk to project management tools and sensitive task data."
  2353. regex = '''lin_api_(?i)[a-z0-9]{40}'''
  2354. entropy = 2
  2355. keywords = ["lin_api_"]
  2356. [[rules]]
  2357. id = "linear-client-secret"
  2358. description = "Identified a Linear Client Secret, which may compromise secure integrations and sensitive project management data."
  2359. regex = '''(?i)[\w.-]{0,50}?(?:linear)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2360. entropy = 2
  2361. keywords = ["linear"]
  2362. [[rules]]
  2363. id = "linkedin-client-id"
  2364. description = "Found a LinkedIn Client ID, risking unauthorized access to LinkedIn integrations and professional data exposure."
  2365. regex = '''(?i)[\w.-]{0,50}?(?:linked[_-]?in)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{14})(?:[\x60'"\s;]|\\[nr]|$)'''
  2366. entropy = 2
  2367. keywords = [
  2368. "linkedin",
  2369. "linked_in",
  2370. "linked-in",
  2371. ]
  2372. [[rules]]
  2373. id = "linkedin-client-secret"
  2374. description = "Discovered a LinkedIn Client secret, potentially compromising LinkedIn application integrations and user data."
  2375. regex = '''(?i)[\w.-]{0,50}?(?:linked[_-]?in)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  2376. entropy = 2
  2377. keywords = [
  2378. "linkedin",
  2379. "linked_in",
  2380. "linked-in",
  2381. ]
  2382. [[rules]]
  2383. id = "lob-api-key"
  2384. description = "Uncovered a Lob API Key, which could lead to unauthorized access to mailing and address verification services."
  2385. regex = '''(?i)[\w.-]{0,50}?(?:lob)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}((live|test)_[a-f0-9]{35})(?:[\x60'"\s;]|\\[nr]|$)'''
  2386. keywords = [
  2387. "test_",
  2388. "live_",
  2389. ]
  2390. [[rules]]
  2391. id = "lob-pub-api-key"
  2392. description = "Detected a Lob Publishable API Key, posing a risk of exposing mail and print service integrations."
  2393. regex = '''(?i)[\w.-]{0,50}?(?:lob)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}((test|live)_pub_[a-f0-9]{31})(?:[\x60'"\s;]|\\[nr]|$)'''
  2394. keywords = [
  2395. "test_pub",
  2396. "live_pub",
  2397. "_pub",
  2398. ]
  2399. [[rules]]
  2400. id = "looker-client-id"
  2401. description = "Found a Looker Client ID, risking unauthorized access to a Looker account and exposing sensitive data."
  2402. regex = '''(?i)[\w.-]{0,50}?(?:looker)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{20})(?:[\x60'"\s;]|\\[nr]|$)'''
  2403. keywords = ["looker"]
  2404. [[rules]]
  2405. id = "looker-client-secret"
  2406. description = "Found a Looker Client Secret, risking unauthorized access to a Looker account and exposing sensitive data."
  2407. regex = '''(?i)[\w.-]{0,50}?(?:looker)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{24})(?:[\x60'"\s;]|\\[nr]|$)'''
  2408. keywords = ["looker"]
  2409. [[rules]]
  2410. id = "mailchimp-api-key"
  2411. description = "Identified a Mailchimp API key, potentially compromising email marketing campaigns and subscriber data."
  2412. regex = '''(?i)[\w.-]{0,50}?(?:MailchimpSDK.initialize|mailchimp)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{32}-us\d\d)(?:[\x60'"\s;]|\\[nr]|$)'''
  2413. keywords = ["mailchimp"]
  2414. [[rules]]
  2415. id = "mailgun-private-api-token"
  2416. description = "Found a Mailgun private API token, risking unauthorized email service operations and data breaches."
  2417. regex = '''(?i)[\w.-]{0,50}?(?:mailgun)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(key-[a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2418. keywords = ["mailgun"]
  2419. [[rules]]
  2420. id = "mailgun-pub-key"
  2421. description = "Discovered a Mailgun public validation key, which could expose email verification processes and associated data."
  2422. regex = '''(?i)[\w.-]{0,50}?(?:mailgun)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(pubkey-[a-f0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2423. keywords = ["mailgun"]
  2424. [[rules]]
  2425. id = "mailgun-signing-key"
  2426. description = "Uncovered a Mailgun webhook signing key, potentially compromising email automation and data integrity."
  2427. regex = '''(?i)[\w.-]{0,50}?(?:mailgun)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-h0-9]{32}-[a-h0-9]{8}-[a-h0-9]{8})(?:[\x60'"\s;]|\\[nr]|$)'''
  2428. keywords = ["mailgun"]
  2429. [[rules]]
  2430. id = "mapbox-api-token"
  2431. description = "Detected a MapBox API token, posing a risk to geospatial services and sensitive location data exposure."
  2432. regex = '''(?i)[\w.-]{0,50}?(?:mapbox)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(pk\.[a-z0-9]{60}\.[a-z0-9]{22})(?:[\x60'"\s;]|\\[nr]|$)'''
  2433. keywords = ["mapbox"]
  2434. [[rules]]
  2435. id = "mattermost-access-token"
  2436. description = "Identified a Mattermost Access Token, which may compromise team communication channels and data privacy."
  2437. regex = '''(?i)[\w.-]{0,50}?(?:mattermost)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{26})(?:[\x60'"\s;]|\\[nr]|$)'''
  2438. keywords = ["mattermost"]
  2439. [[rules]]
  2440. id = "maxmind-license-key"
  2441. description = "Discovered a potential MaxMind license key."
  2442. regex = '''\b([A-Za-z0-9]{6}_[A-Za-z0-9]{29}_mmk)(?:[\x60'"\s;]|\\[nr]|$)'''
  2443. entropy = 4
  2444. keywords = ["_mmk"]
  2445. [[rules]]
  2446. id = "messagebird-api-token"
  2447. description = "Found a MessageBird API token, risking unauthorized access to communication platforms and message data."
  2448. regex = '''(?i)[\w.-]{0,50}?(?:message[_-]?bird)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{25})(?:[\x60'"\s;]|\\[nr]|$)'''
  2449. keywords = [
  2450. "messagebird",
  2451. "message-bird",
  2452. "message_bird",
  2453. ]
  2454. [[rules]]
  2455. id = "messagebird-client-id"
  2456. description = "Discovered a MessageBird client ID, potentially compromising API integrations and sensitive communication data."
  2457. regex = '''(?i)[\w.-]{0,50}?(?:message[_-]?bird)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2458. keywords = [
  2459. "messagebird",
  2460. "message-bird",
  2461. "message_bird",
  2462. ]
  2463. [[rules]]
  2464. id = "microsoft-teams-webhook"
  2465. description = "Uncovered a Microsoft Teams Webhook, which could lead to unauthorized access to team collaboration tools and data leaks."
  2466. regex = '''https://[a-z0-9]+\.webhook\.office\.com/webhookb2/[a-z0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}@[a-z0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}/IncomingWebhook/[a-z0-9]{32}/[a-z0-9]{8}-([a-z0-9]{4}-){3}[a-z0-9]{12}'''
  2467. keywords = [
  2468. "webhook.office.com",
  2469. "webhookb2",
  2470. "incomingwebhook",
  2471. ]
  2472. [[rules]]
  2473. id = "netlify-access-token"
  2474. description = "Detected a Netlify Access Token, potentially compromising web hosting services and site management."
  2475. regex = '''(?i)[\w.-]{0,50}?(?:netlify)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{40,46})(?:[\x60'"\s;]|\\[nr]|$)'''
  2476. keywords = ["netlify"]
  2477. [[rules]]
  2478. id = "new-relic-browser-api-token"
  2479. description = "Identified a New Relic ingest browser API token, risking unauthorized access to application performance data and analytics."
  2480. regex = '''(?i)[\w.-]{0,50}?(?:new-relic|newrelic|new_relic)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(NRJS-[a-f0-9]{19})(?:[\x60'"\s;]|\\[nr]|$)'''
  2481. keywords = ["nrjs-"]
  2482. [[rules]]
  2483. id = "new-relic-insert-key"
  2484. description = "Discovered a New Relic insight insert key, compromising data injection into the platform."
  2485. regex = '''(?i)[\w.-]{0,50}?(?:new-relic|newrelic|new_relic)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(NRII-[a-z0-9-]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2486. keywords = ["nrii-"]
  2487. [[rules]]
  2488. id = "new-relic-user-api-id"
  2489. description = "Found a New Relic user API ID, posing a risk to application monitoring services and data integrity."
  2490. regex = '''(?i)[\w.-]{0,50}?(?:new-relic|newrelic|new_relic)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2491. keywords = [
  2492. "new-relic",
  2493. "newrelic",
  2494. "new_relic",
  2495. ]
  2496. [[rules]]
  2497. id = "new-relic-user-api-key"
  2498. description = "Discovered a New Relic user API Key, which could lead to compromised application insights and performance monitoring."
  2499. regex = '''(?i)[\w.-]{0,50}?(?:new-relic|newrelic|new_relic)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(NRAK-[a-z0-9]{27})(?:[\x60'"\s;]|\\[nr]|$)'''
  2500. keywords = ["nrak"]
  2501. [[rules]]
  2502. id = "notion-api-token"
  2503. description = "Notion API token"
  2504. regex = '''\b(ntn_[0-9]{11}[A-Za-z0-9]{32}[A-Za-z0-9]{3})(?:[\x60'"\s;]|\\[nr]|$)'''
  2505. entropy = 4
  2506. keywords = ["ntn_"]
  2507. [[rules]]
  2508. id = "npm-access-token"
  2509. description = "Uncovered an npm access token, potentially compromising package management and code repository access."
  2510. regex = '''(?i)\b(npm_[a-z0-9]{36})(?:[\x60'"\s;]|\\[nr]|$)'''
  2511. entropy = 2
  2512. keywords = ["npm_"]
  2513. [[rules]]
  2514. id = "nuget-config-password"
  2515. description = "Identified a password within a Nuget config file, potentially compromising package management access."
  2516. regex = '''(?i)<add key=\"(?:(?:ClearText)?Password)\"\s*value=\"(.{8,})\"\s*/>'''
  2517. path = '''(?i)nuget\.config$'''
  2518. entropy = 1
  2519. keywords = ["<add key="]
  2520. [[rules.allowlists]]
  2521. regexes = [
  2522. '''33f!!lloppa''',
  2523. '''hal\+9ooo_da!sY''',
  2524. '''^\%\S.*\%$''',
  2525. ]
  2526. [[rules]]
  2527. id = "nytimes-access-token"
  2528. description = "Detected a Nytimes Access Token, risking unauthorized access to New York Times APIs and content services."
  2529. regex = '''(?i)[\w.-]{0,50}?(?:nytimes|new-york-times,|newyorktimes)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9=_\-]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2530. keywords = [
  2531. "nytimes",
  2532. "new-york-times",
  2533. "newyorktimes",
  2534. ]
  2535. [[rules]]
  2536. id = "octopus-deploy-api-key"
  2537. description = "Discovered a potential Octopus Deploy API key, risking application deployments and operational security."
  2538. regex = '''\b(API-[A-Z0-9]{26})(?:[\x60'"\s;]|\\[nr]|$)'''
  2539. entropy = 3
  2540. keywords = ["api-"]
  2541. [[rules]]
  2542. id = "okta-access-token"
  2543. description = "Identified an Okta Access Token, which may compromise identity management services and user authentication data."
  2544. regex = '''[\w.-]{0,50}?(?i:[\w.-]{0,50}?(?:(?-i:[Oo]kta|OKTA))(?:[ \t\w.-]{0,20})[\s'"]{0,3})(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(00[\w=\-]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2545. entropy = 4
  2546. keywords = ["okta"]
  2547. [[rules]]
  2548. id = "openai-api-key"
  2549. description = "Found an OpenAI API Key, posing a risk of unauthorized access to AI services and data manipulation."
  2550. regex = '''\b(sk-(?:proj|svcacct|admin)-(?:[A-Za-z0-9_-]{74}|[A-Za-z0-9_-]{58})T3BlbkFJ(?:[A-Za-z0-9_-]{74}|[A-Za-z0-9_-]{58})\b|sk-[a-zA-Z0-9]{20}T3BlbkFJ[a-zA-Z0-9]{20})(?:[\x60'"\s;]|\\[nr]|$)'''
  2551. entropy = 3
  2552. keywords = ["t3blbkfj"]
  2553. [[rules]]
  2554. id = "openshift-user-token"
  2555. description = "Found an OpenShift user token, potentially compromising an OpenShift/Kubernetes cluster."
  2556. regex = '''\b(sha256~[\w-]{43})(?:[^\w-]|\z)'''
  2557. entropy = 3.5
  2558. keywords = ["sha256~"]
  2559. [[rules]]
  2560. id = "perplexity-api-key"
  2561. description = "Detected a Perplexity API key, which could lead to unauthorized access to Perplexity AI services and data exposure."
  2562. regex = '''\b(pplx-[a-zA-Z0-9]{48})(?:[\x60'"\s;]|\\[nr]|$|\b)'''
  2563. entropy = 4
  2564. keywords = ["pplx-"]
  2565. [[rules]]
  2566. id = "pkcs12-file"
  2567. description = "Found a PKCS #12 file, which commonly contain bundled private keys."
  2568. path = '''(?i)(?:^|\/)[^\/]+\.p(?:12|fx)$'''
  2569. [[rules]]
  2570. id = "plaid-api-token"
  2571. description = "Discovered a Plaid API Token, potentially compromising financial data aggregation and banking services."
  2572. regex = '''(?i)[\w.-]{0,50}?(?:plaid)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(access-(?:sandbox|development|production)-[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2573. keywords = ["plaid"]
  2574. [[rules]]
  2575. id = "plaid-client-id"
  2576. description = "Uncovered a Plaid Client ID, which could lead to unauthorized financial service integrations and data breaches."
  2577. regex = '''(?i)[\w.-]{0,50}?(?:plaid)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{24})(?:[\x60'"\s;]|\\[nr]|$)'''
  2578. entropy = 3.5
  2579. keywords = ["plaid"]
  2580. [[rules]]
  2581. id = "plaid-secret-key"
  2582. description = "Detected a Plaid Secret key, risking unauthorized access to financial accounts and sensitive transaction data."
  2583. regex = '''(?i)[\w.-]{0,50}?(?:plaid)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{30})(?:[\x60'"\s;]|\\[nr]|$)'''
  2584. entropy = 3.5
  2585. keywords = ["plaid"]
  2586. [[rules]]
  2587. id = "planetscale-api-token"
  2588. description = "Identified a PlanetScale API token, potentially compromising database management and operations."
  2589. regex = '''\b(pscale_tkn_(?i)[\w=\.-]{32,64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2590. entropy = 3
  2591. keywords = ["pscale_tkn_"]
  2592. [[rules]]
  2593. id = "planetscale-oauth-token"
  2594. description = "Found a PlanetScale OAuth token, posing a risk to database access control and sensitive data integrity."
  2595. regex = '''\b(pscale_oauth_[\w=\.-]{32,64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2596. entropy = 3
  2597. keywords = ["pscale_oauth_"]
  2598. [[rules]]
  2599. id = "planetscale-password"
  2600. description = "Discovered a PlanetScale password, which could lead to unauthorized database operations and data breaches."
  2601. regex = '''(?i)\b(pscale_pw_(?i)[\w=\.-]{32,64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2602. entropy = 3
  2603. keywords = ["pscale_pw_"]
  2604. [[rules]]
  2605. id = "postman-api-token"
  2606. description = "Uncovered a Postman API token, potentially compromising API testing and development workflows."
  2607. regex = '''\b(PMAK-(?i)[a-f0-9]{24}\-[a-f0-9]{34})(?:[\x60'"\s;]|\\[nr]|$)'''
  2608. entropy = 3
  2609. keywords = ["pmak-"]
  2610. [[rules]]
  2611. id = "prefect-api-token"
  2612. description = "Detected a Prefect API token, risking unauthorized access to workflow management and automation services."
  2613. regex = '''\b(pnu_[a-zA-Z0-9]{36})(?:[\x60'"\s;]|\\[nr]|$)'''
  2614. entropy = 2
  2615. keywords = ["pnu_"]
  2616. [[rules]]
  2617. id = "private-key"
  2618. description = "Identified a Private Key, which may compromise cryptographic security and sensitive data encryption."
  2619. regex = '''(?i)-----BEGIN[ A-Z0-9_-]{0,100}PRIVATE KEY(?: BLOCK)?-----[\s\S-]{64,}?KEY(?: BLOCK)?-----'''
  2620. keywords = ["-----begin"]
  2621. [[rules]]
  2622. id = "privateai-api-token"
  2623. description = "Identified a PrivateAI Token, posing a risk of unauthorized access to AI services and data manipulation."
  2624. regex = '''[\w.-]{0,50}?(?i:[\w.-]{0,50}?(?:private[_-]?ai)(?:[ \t\w.-]{0,20})[\s'"]{0,3})(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{32})(?:[\x60'"\s;]|\\[nr]|$)'''
  2625. entropy = 3
  2626. keywords = [
  2627. "privateai",
  2628. "private_ai",
  2629. "private-ai",
  2630. ]
  2631. [[rules]]
  2632. id = "pulumi-api-token"
  2633. description = "Found a Pulumi API token, posing a risk to infrastructure as code services and cloud resource management."
  2634. regex = '''\b(pul-[a-f0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2635. entropy = 2
  2636. keywords = ["pul-"]
  2637. [[rules]]
  2638. id = "pypi-upload-token"
  2639. description = "Discovered a PyPI upload token, potentially compromising Python package distribution and repository integrity."
  2640. regex = '''pypi-AgEIcHlwaS5vcmc[\w-]{50,1000}'''
  2641. entropy = 3
  2642. keywords = ["pypi-ageichlwas5vcmc"]
  2643. [[rules]]
  2644. id = "rapidapi-access-token"
  2645. description = "Uncovered a RapidAPI Access Token, which could lead to unauthorized access to various APIs and data services."
  2646. regex = '''(?i)[\w.-]{0,50}?(?:rapidapi)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9_-]{50})(?:[\x60'"\s;]|\\[nr]|$)'''
  2647. keywords = ["rapidapi"]
  2648. [[rules]]
  2649. id = "readme-api-token"
  2650. description = "Detected a Readme API token, risking unauthorized documentation management and content exposure."
  2651. regex = '''\b(rdme_[a-z0-9]{70})(?:[\x60'"\s;]|\\[nr]|$)'''
  2652. entropy = 2
  2653. keywords = ["rdme_"]
  2654. [[rules]]
  2655. id = "rubygems-api-token"
  2656. description = "Identified a Rubygem API token, potentially compromising Ruby library distribution and package management."
  2657. regex = '''\b(rubygems_[a-f0-9]{48})(?:[\x60'"\s;]|\\[nr]|$)'''
  2658. entropy = 2
  2659. keywords = ["rubygems_"]
  2660. [[rules]]
  2661. id = "scalingo-api-token"
  2662. description = "Found a Scalingo API token, posing a risk to cloud platform services and application deployment security."
  2663. regex = '''\b(tk-us-[\w-]{48})(?:[\x60'"\s;]|\\[nr]|$)'''
  2664. entropy = 2
  2665. keywords = ["tk-us-"]
  2666. [[rules]]
  2667. id = "sendbird-access-id"
  2668. description = "Discovered a Sendbird Access ID, which could compromise chat and messaging platform integrations."
  2669. regex = '''(?i)[\w.-]{0,50}?(?:sendbird)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2670. keywords = ["sendbird"]
  2671. [[rules]]
  2672. id = "sendbird-access-token"
  2673. description = "Uncovered a Sendbird Access Token, potentially risking unauthorized access to communication services and user data."
  2674. regex = '''(?i)[\w.-]{0,50}?(?:sendbird)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2675. keywords = ["sendbird"]
  2676. [[rules]]
  2677. id = "sendgrid-api-token"
  2678. description = "Detected a SendGrid API token, posing a risk of unauthorized email service operations and data exposure."
  2679. regex = '''\b(SG\.(?i)[a-z0-9=_\-\.]{66})(?:[\x60'"\s;]|\\[nr]|$)'''
  2680. entropy = 2
  2681. keywords = ["sg."]
  2682. [[rules]]
  2683. id = "sendinblue-api-token"
  2684. description = "Identified a Sendinblue API token, which may compromise email marketing services and subscriber data privacy."
  2685. regex = '''\b(xkeysib-[a-f0-9]{64}\-(?i)[a-z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  2686. entropy = 2
  2687. keywords = ["xkeysib-"]
  2688. [[rules]]
  2689. id = "sentry-access-token"
  2690. description = "Found a Sentry.io Access Token (old format), risking unauthorized access to error tracking services and sensitive application data."
  2691. regex = '''(?i)[\w.-]{0,50}?(?:sentry)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2692. entropy = 3
  2693. keywords = ["sentry"]
  2694. [[rules]]
  2695. id = "sentry-org-token"
  2696. description = "Found a Sentry.io Organization Token, risking unauthorized access to error tracking services and sensitive application data."
  2697. regex = '''\bsntrys_eyJpYXQiO[a-zA-Z0-9+/]{10,200}(?:LCJyZWdpb25fdXJs|InJlZ2lvbl91cmwi|cmVnaW9uX3VybCI6)[a-zA-Z0-9+/]{10,200}={0,2}_[a-zA-Z0-9+/]{43}(?:[^a-zA-Z0-9+/]|\z)'''
  2698. entropy = 4.5
  2699. keywords = ["sntrys_eyjpyxqio"]
  2700. [[rules]]
  2701. id = "sentry-user-token"
  2702. description = "Found a Sentry.io User Token, risking unauthorized access to error tracking services and sensitive application data."
  2703. regex = '''\b(sntryu_[a-f0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2704. entropy = 3.5
  2705. keywords = ["sntryu_"]
  2706. [[rules]]
  2707. id = "settlemint-application-access-token"
  2708. description = "Found a Settlemint Application Access Token."
  2709. regex = '''\b(sm_aat_[a-zA-Z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  2710. entropy = 3
  2711. keywords = ["sm_aat"]
  2712. [[rules]]
  2713. id = "settlemint-personal-access-token"
  2714. description = "Found a Settlemint Personal Access Token."
  2715. regex = '''\b(sm_pat_[a-zA-Z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  2716. entropy = 3
  2717. keywords = ["sm_pat"]
  2718. [[rules]]
  2719. id = "settlemint-service-access-token"
  2720. description = "Found a Settlemint Service Access Token."
  2721. regex = '''\b(sm_sat_[a-zA-Z0-9]{16})(?:[\x60'"\s;]|\\[nr]|$)'''
  2722. entropy = 3
  2723. keywords = ["sm_sat"]
  2724. [[rules]]
  2725. id = "shippo-api-token"
  2726. description = "Discovered a Shippo API token, potentially compromising shipping services and customer order data."
  2727. regex = '''\b(shippo_(?:live|test)_[a-fA-F0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2728. entropy = 2
  2729. keywords = ["shippo_"]
  2730. [[rules]]
  2731. id = "shopify-access-token"
  2732. description = "Uncovered a Shopify access token, which could lead to unauthorized e-commerce platform access and data breaches."
  2733. regex = '''shpat_[a-fA-F0-9]{32}'''
  2734. entropy = 2
  2735. keywords = ["shpat_"]
  2736. [[rules]]
  2737. id = "shopify-custom-access-token"
  2738. description = "Detected a Shopify custom access token, potentially compromising custom app integrations and e-commerce data security."
  2739. regex = '''shpca_[a-fA-F0-9]{32}'''
  2740. entropy = 2
  2741. keywords = ["shpca_"]
  2742. [[rules]]
  2743. id = "shopify-private-app-access-token"
  2744. description = "Identified a Shopify private app access token, risking unauthorized access to private app data and store operations."
  2745. regex = '''shppa_[a-fA-F0-9]{32}'''
  2746. entropy = 2
  2747. keywords = ["shppa_"]
  2748. [[rules]]
  2749. id = "shopify-shared-secret"
  2750. description = "Found a Shopify shared secret, posing a risk to application authentication and e-commerce platform security."
  2751. regex = '''shpss_[a-fA-F0-9]{32}'''
  2752. entropy = 2
  2753. keywords = ["shpss_"]
  2754. [[rules]]
  2755. id = "sidekiq-secret"
  2756. description = "Discovered a Sidekiq Secret, which could lead to compromised background job processing and application data breaches."
  2757. regex = '''(?i)[\w.-]{0,50}?(?:BUNDLE_ENTERPRISE__CONTRIBSYS__COM|BUNDLE_GEMS__CONTRIBSYS__COM)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-f0-9]{8}:[a-f0-9]{8})(?:[\x60'"\s;]|\\[nr]|$)'''
  2758. keywords = [
  2759. "bundle_enterprise__contribsys__com",
  2760. "bundle_gems__contribsys__com",
  2761. ]
  2762. [[rules]]
  2763. id = "sidekiq-sensitive-url"
  2764. description = "Uncovered a Sidekiq Sensitive URL, potentially exposing internal job queues and sensitive operation details."
  2765. regex = '''(?i)\bhttps?://([a-f0-9]{8}:[a-f0-9]{8})@(?:gems.contribsys.com|enterprise.contribsys.com)(?:[\/|\#|\?|:]|$)'''
  2766. keywords = [
  2767. "gems.contribsys.com",
  2768. "enterprise.contribsys.com",
  2769. ]
  2770. [[rules]]
  2771. id = "slack-app-token"
  2772. description = "Detected a Slack App-level token, risking unauthorized access to Slack applications and workspace data."
  2773. regex = '''(?i)xapp-\d-[A-Z0-9]+-\d+-[a-z0-9]+'''
  2774. entropy = 2
  2775. keywords = ["xapp"]
  2776. [[rules]]
  2777. id = "slack-bot-token"
  2778. description = "Identified a Slack Bot token, which may compromise bot integrations and communication channel security."
  2779. regex = '''xoxb-[0-9]{10,13}-[0-9]{10,13}[a-zA-Z0-9-]*'''
  2780. entropy = 3
  2781. keywords = ["xoxb"]
  2782. [[rules]]
  2783. id = "slack-config-access-token"
  2784. description = "Found a Slack Configuration access token, posing a risk to workspace configuration and sensitive data access."
  2785. regex = '''(?i)xoxe.xox[bp]-\d-[A-Z0-9]{163,166}'''
  2786. entropy = 2
  2787. keywords = [
  2788. "xoxe.xoxb-",
  2789. "xoxe.xoxp-",
  2790. ]
  2791. [[rules]]
  2792. id = "slack-config-refresh-token"
  2793. description = "Discovered a Slack Configuration refresh token, potentially allowing prolonged unauthorized access to configuration settings."
  2794. regex = '''(?i)xoxe-\d-[A-Z0-9]{146}'''
  2795. entropy = 2
  2796. keywords = ["xoxe-"]
  2797. [[rules]]
  2798. id = "slack-legacy-bot-token"
  2799. description = "Uncovered a Slack Legacy bot token, which could lead to compromised legacy bot operations and data exposure."
  2800. regex = '''xoxb-[0-9]{8,14}-[a-zA-Z0-9]{18,26}'''
  2801. entropy = 2
  2802. keywords = ["xoxb"]
  2803. [[rules]]
  2804. id = "slack-legacy-token"
  2805. description = "Detected a Slack Legacy token, risking unauthorized access to older Slack integrations and user data."
  2806. regex = '''xox[os]-\d+-\d+-\d+-[a-fA-F\d]+'''
  2807. entropy = 2
  2808. keywords = [
  2809. "xoxo",
  2810. "xoxs",
  2811. ]
  2812. [[rules]]
  2813. id = "slack-legacy-workspace-token"
  2814. description = "Identified a Slack Legacy Workspace token, potentially compromising access to workspace data and legacy features."
  2815. regex = '''xox[ar]-(?:\d-)?[0-9a-zA-Z]{8,48}'''
  2816. entropy = 2
  2817. keywords = [
  2818. "xoxa",
  2819. "xoxr",
  2820. ]
  2821. [[rules]]
  2822. id = "slack-user-token"
  2823. description = "Found a Slack User token, posing a risk of unauthorized user impersonation and data access within Slack workspaces."
  2824. regex = '''xox[pe](?:-[0-9]{10,13}){3}-[a-zA-Z0-9-]{28,34}'''
  2825. entropy = 2
  2826. keywords = [
  2827. "xoxp-",
  2828. "xoxe-",
  2829. ]
  2830. [[rules]]
  2831. id = "slack-webhook-url"
  2832. description = "Discovered a Slack Webhook, which could lead to unauthorized message posting and data leakage in Slack channels."
  2833. regex = '''(?:https?://)?hooks.slack.com/(?:services|workflows|triggers)/[A-Za-z0-9+/]{43,56}'''
  2834. keywords = ["hooks.slack.com"]
  2835. [[rules]]
  2836. id = "snyk-api-token"
  2837. description = "Uncovered a Snyk API token, potentially compromising software vulnerability scanning and code security."
  2838. regex = '''(?i)[\w.-]{0,50}?(?:snyk[_.-]?(?:(?:api|oauth)[_.-]?)?(?:key|token))(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2839. keywords = ["snyk"]
  2840. [[rules]]
  2841. id = "sonar-api-token"
  2842. description = "Uncovered a Sonar API token, potentially compromising software vulnerability scanning and code security."
  2843. regex = '''(?i)[\w.-]{0,50}?(?:sonar[_.-]?(login|token))(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}((?:squ_|sqp_|sqa_)?[a-z0-9=_\-]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2844. secretGroup = 2
  2845. keywords = ["sonar"]
  2846. [[rules]]
  2847. id = "sourcegraph-access-token"
  2848. description = "Sourcegraph is a code search and navigation engine."
  2849. regex = '''(?i)\b(\b(sgp_(?:[a-fA-F0-9]{16}|local)_[a-fA-F0-9]{40}|sgp_[a-fA-F0-9]{40}|[a-fA-F0-9]{40})\b)(?:[\x60'"\s;]|\\[nr]|$)'''
  2850. entropy = 3
  2851. keywords = [
  2852. "sgp_",
  2853. "sourcegraph",
  2854. ]
  2855. [[rules]]
  2856. id = "square-access-token"
  2857. description = "Detected a Square Access Token, risking unauthorized payment processing and financial transaction exposure."
  2858. regex = '''\b((?:EAAA|sq0atp-)[\w-]{22,60})(?:[\x60'"\s;]|\\[nr]|$)'''
  2859. entropy = 2
  2860. keywords = [
  2861. "sq0atp-",
  2862. "eaaa",
  2863. ]
  2864. [[rules]]
  2865. id = "squarespace-access-token"
  2866. description = "Identified a Squarespace Access Token, which may compromise website management and content control on Squarespace."
  2867. regex = '''(?i)[\w.-]{0,50}?(?:squarespace)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2868. keywords = ["squarespace"]
  2869. [[rules]]
  2870. id = "stripe-access-token"
  2871. description = "Found a Stripe Access Token, posing a risk to payment processing services and sensitive financial data."
  2872. regex = '''\b((?:sk|rk)_(?:test|live|prod)_[a-zA-Z0-9]{10,99})(?:[\x60'"\s;]|\\[nr]|$)'''
  2873. entropy = 2
  2874. keywords = [
  2875. "sk_test",
  2876. "sk_live",
  2877. "sk_prod",
  2878. "rk_test",
  2879. "rk_live",
  2880. "rk_prod",
  2881. ]
  2882. [[rules]]
  2883. id = "sumologic-access-id"
  2884. description = "Discovered a SumoLogic Access ID, potentially compromising log management services and data analytics integrity."
  2885. regex = '''[\w.-]{0,50}?(?i:[\w.-]{0,50}?(?:(?-i:[Ss]umo|SUMO))(?:[ \t\w.-]{0,20})[\s'"]{0,3})(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(su[a-zA-Z0-9]{12})(?:[\x60'"\s;]|\\[nr]|$)'''
  2886. entropy = 3
  2887. keywords = ["sumo"]
  2888. [[rules]]
  2889. id = "sumologic-access-token"
  2890. description = "Uncovered a SumoLogic Access Token, which could lead to unauthorized access to log data and analytics insights."
  2891. regex = '''(?i)[\w.-]{0,50}?(?:(?-i:[Ss]umo|SUMO))(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{64})(?:[\x60'"\s;]|\\[nr]|$)'''
  2892. entropy = 3
  2893. keywords = ["sumo"]
  2894. [[rules]]
  2895. id = "telegram-bot-api-token"
  2896. description = "Detected a Telegram Bot API Token, risking unauthorized bot operations and message interception on Telegram."
  2897. regex = '''(?i)[\w.-]{0,50}?(?:telegr)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9]{5,16}:(?-i:A)[a-z0-9_\-]{34})(?:[\x60'"\s;]|\\[nr]|$)'''
  2898. keywords = ["telegr"]
  2899. [[rules]]
  2900. id = "travisci-access-token"
  2901. description = "Identified a Travis CI Access Token, potentially compromising continuous integration services and codebase security."
  2902. regex = '''(?i)[\w.-]{0,50}?(?:travis)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{22})(?:[\x60'"\s;]|\\[nr]|$)'''
  2903. keywords = ["travis"]
  2904. [[rules]]
  2905. id = "twilio-api-key"
  2906. description = "Found a Twilio API Key, posing a risk to communication services and sensitive customer interaction data."
  2907. regex = '''SK[0-9a-fA-F]{32}'''
  2908. entropy = 3
  2909. keywords = ["sk"]
  2910. [[rules]]
  2911. id = "twitch-api-token"
  2912. description = "Discovered a Twitch API token, which could compromise streaming services and account integrations."
  2913. regex = '''(?i)[\w.-]{0,50}?(?:twitch)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{30})(?:[\x60'"\s;]|\\[nr]|$)'''
  2914. keywords = ["twitch"]
  2915. [[rules]]
  2916. id = "twitter-access-secret"
  2917. description = "Uncovered a Twitter Access Secret, potentially risking unauthorized Twitter integrations and data breaches."
  2918. regex = '''(?i)[\w.-]{0,50}?(?:twitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{45})(?:[\x60'"\s;]|\\[nr]|$)'''
  2919. keywords = ["twitter"]
  2920. [[rules]]
  2921. id = "twitter-access-token"
  2922. description = "Detected a Twitter Access Token, posing a risk of unauthorized account operations and social media data exposure."
  2923. regex = '''(?i)[\w.-]{0,50}?(?:twitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([0-9]{15,25}-[a-zA-Z0-9]{20,40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2924. keywords = ["twitter"]
  2925. [[rules]]
  2926. id = "twitter-api-key"
  2927. description = "Identified a Twitter API Key, which may compromise Twitter application integrations and user data security."
  2928. regex = '''(?i)[\w.-]{0,50}?(?:twitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{25})(?:[\x60'"\s;]|\\[nr]|$)'''
  2929. keywords = ["twitter"]
  2930. [[rules]]
  2931. id = "twitter-api-secret"
  2932. description = "Found a Twitter API Secret, risking the security of Twitter app integrations and sensitive data access."
  2933. regex = '''(?i)[\w.-]{0,50}?(?:twitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{50})(?:[\x60'"\s;]|\\[nr]|$)'''
  2934. keywords = ["twitter"]
  2935. [[rules]]
  2936. id = "twitter-bearer-token"
  2937. description = "Discovered a Twitter Bearer Token, potentially compromising API access and data retrieval from Twitter."
  2938. regex = '''(?i)[\w.-]{0,50}?(?:twitter)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(A{22}[a-zA-Z0-9%]{80,100})(?:[\x60'"\s;]|\\[nr]|$)'''
  2939. keywords = ["twitter"]
  2940. [[rules]]
  2941. id = "typeform-api-token"
  2942. description = "Uncovered a Typeform API token, which could lead to unauthorized survey management and data collection."
  2943. regex = '''(?i)[\w.-]{0,50}?(?:typeform)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(tfp_[a-z0-9\-_\.=]{59})(?:[\x60'"\s;]|\\[nr]|$)'''
  2944. keywords = ["tfp_"]
  2945. [[rules]]
  2946. id = "vault-batch-token"
  2947. description = "Detected a Vault Batch Token, risking unauthorized access to secret management services and sensitive data."
  2948. regex = '''\b(hvb\.[\w-]{138,300})(?:[\x60'"\s;]|\\[nr]|$)'''
  2949. entropy = 4
  2950. keywords = ["hvb."]
  2951. [[rules]]
  2952. id = "vault-service-token"
  2953. description = "Identified a Vault Service Token, potentially compromising infrastructure security and access to sensitive credentials."
  2954. regex = '''\b((?:hvs\.[\w-]{90,120}|s\.(?i:[a-z0-9]{24})))(?:[\x60'"\s;]|\\[nr]|$)'''
  2955. entropy = 3.5
  2956. keywords = [
  2957. "hvs.",
  2958. "s.",
  2959. ]
  2960. [[rules.allowlists]]
  2961. regexes = [
  2962. '''s\.[A-Za-z]{24}''',
  2963. ]
  2964. [[rules]]
  2965. id = "yandex-access-token"
  2966. description = "Found a Yandex Access Token, posing a risk to Yandex service integrations and user data privacy."
  2967. regex = '''(?i)[\w.-]{0,50}?(?:yandex)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(t1\.[A-Z0-9a-z_-]+[=]{0,2}\.[A-Z0-9a-z_-]{86}[=]{0,2})(?:[\x60'"\s;]|\\[nr]|$)'''
  2968. keywords = ["yandex"]
  2969. [[rules]]
  2970. id = "yandex-api-key"
  2971. description = "Discovered a Yandex API Key, which could lead to unauthorized access to Yandex services and data manipulation."
  2972. regex = '''(?i)[\w.-]{0,50}?(?:yandex)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(AQVN[A-Za-z0-9_\-]{35,38})(?:[\x60'"\s;]|\\[nr]|$)'''
  2973. keywords = ["yandex"]
  2974. [[rules]]
  2975. id = "yandex-aws-access-token"
  2976. description = "Uncovered a Yandex AWS Access Token, potentially compromising cloud resource access and data security on Yandex Cloud."
  2977. regex = '''(?i)[\w.-]{0,50}?(?:yandex)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}(YC[a-zA-Z0-9_\-]{38})(?:[\x60'"\s;]|\\[nr]|$)'''
  2978. keywords = ["yandex"]
  2979. [[rules]]
  2980. id = "zendesk-secret-key"
  2981. description = "Detected a Zendesk Secret Key, risking unauthorized access to customer support services and sensitive ticketing data."
  2982. regex = '''(?i)[\w.-]{0,50}?(?:zendesk)(?:[ \t\w.-]{0,20})[\s'"]{0,3}(?:=|>|:{1,3}=|\|\||:|=>|\?=|,)[\x60'"\s=]{0,5}([a-z0-9]{40})(?:[\x60'"\s;]|\\[nr]|$)'''
  2983. keywords = ["zendesk"]