gitleaks.toml 85 KB

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