gitleaks.toml 83 KB

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