Secret Gate
Yon pòtay liberasyon ki konnen sekrè reyèl ou yo: anyen pa ale nan pwodiksyon jiskaske li pa jwenn anyen.
- Linux or macOS
- Python 3.9+
- Git hooks
- CI

Sa li fè
Secret Gate reponn yon sèl kesyon anvan anyen kite men w, kit se yon zip vèsyon, yon kopi pou kliyan, yon pouse lojisyèl lib oswa pwochen komit la: èske gen yon sekrè pa m ladan l? Li konn sekrè ou yo, paske li li fichye kote yo ye yo, epi li pa janm montre youn: yon dekouvri bay non fichye a, liy lan ak kote valè a soti.
- Valè egzak ou yo. Chak valè nan fichye env ou yo, konfigirasyon JSON ak YAML,
.netrcak fichye kle yo, chèche jan yo ekri yo, ankode an base64 ak ankode an URL. Yon modpas ki sanble ak yon mo òdinè, oswa yon token entèn san okenn prefiks konnen, pran tankou nenpòt lòt. - Sekrè ki soti nan machin li pa kouri sou yo. Fè anprent sou laptop ou; sèvè konstriksyon an jwenn valè sa yo san li pa janm kenbe yo.
- Lòt machin tcheke kont sekrè pa yo. Fichye yo ale sou chak machin pa SSH, yo eskane la epi yo efase yo. Sekrè yo pa janm deplase, epi yon machin ki pa ka reponn bloke vèsyon an.
- Fòm, non ak bri tou. 25 fòma token, non ou yo, otè, domèn ak id kont, adrès IP prive, adrès imel pèsonèl, nimewo telefòn, IBAN, chemen dosye kay, ak chenn karaktè o aza ki bò kote non ki sanble ak sekrè.
- Li pwouve tèt li chak fwa. Chak eskane kòmanse ak plante kanari nan tout kalite; si nenpòt tès rate kanari li, eskane a pa kouri.
- Kote w deja travay. Dosye, achiv zip ak tar, yon kwoch pre-komit oswa pre-pouse git, kòd sòti pou CI, yon rapò JSON.
Teste sou sa n ap voye
- Chak kit lojisyèl nou vann: 8 achiv pibliye yo eskane kont 133 valè sekrè sou machin konstriksyon nou an ak 16,259 anprent soti nan laptop nou an. Tout pase, nan 5.4 segonn ansanm.
- Yon vrè sekrè plante nan yon kopi vèsyon te pran klè ak ankode an base64, chak fwa li te nonmen pa fichye li te soti a. Valè a pa t parèt okenn kote nan sòti a ni nan rapò a.
- Yon eskane distans pa SSH te tcheke yon vèsyon kont 499 valè sekrè yon dezyèm machin nan 1.4 segonn, epi li te pran yon token plante nan yon kopi ki te egziste sèlman sou machin sa a.
Sa ki andedan
Pòtay la
Kat tès yo, ototès la, eskane achiv ak git-staged, yon rapò lisib ak yon rapò JSON.
Anprent
Anprent sekrè yon machin, pou yon eskane sou yon lòt, san valè yo.
Eskan remote
Menm fichye yo tcheke sou chak machin ki gen sekrè, ak règ pwojè w la voye avèk yo.
Konfigirasyon ak CI
Yon zouti pou jwenn fichye sekrè w yo, git hooks, ak yon workflow GitHub Actions pou achiv relizasyon yo.
Egzijans
- Linux oswa macOS ak Python 3.9 oswa pi nouvo; pa gen anyen pou enstale ak pip.
- Git pou hooks yo, SSH pou eskann remote yo.
Bon pou konnen
- Li li fichye yo jan yo ye kounye a. Yon sekrè ki deja nan istwa git ou a rete la: vire l (rotate it).
- Achiv ki nan yon dosye ki eskane pa ouvri; eskane chak achiv separeman.
- Kenbe fichye anprent yo osi prive ke sekrè yo: yo gen premye 4 karaktè chak valè ki gen 16 karaktè oswa plis.
From our field notes
Kesyon
Kijan sa a diferan de gitleaks oswa TruffleHog?
Yo chèche sa sekrè yo sanble nòmalman, epi yo bon nan sa. Secret Gate konnen tou sa sekrè w yo ye vre: li li pwòp fichye sekrè w yo epi li chèche valè egzak sa yo, konsa yon modpas baz done oswa yon token entèn ki pa gen fòm rekonnisab pran tou. Li bati pou yon moman, anvan yon bagay ale (ship), epi li fèmen an sekirite (fails closed).
Èske li voye sekrè mwen yo nenpòt kote?
Non. Valè yo li soti nan fichye w yo nan memwa pou eskann lan epi yo pa janm enprime, ekri oswa voye; yon fichye anprent, si w fè youn, gen yon hash ak premye 4 karaktè chak valè. Eskann remote yo voye fichye w pral voye (ship) yo nan pwòp machin w lan; sekrè machin sa a rete sou li.
Kisa pou fo alèt yo?
Yon dekouvèt vle di "gade sa a". Si li bon, ajoute yon règ pèmèt (allow rule) sere pou kalite dekouvèt sa a nan konfigirasyon pwojè a, pa egzanp pwòp adrès sipò w la. Pa gen yon switch ki etenn yon tès.
Èske li ka eskane istwa git mwen?
Non. Li tcheke sa w pral voye (ship): yon dosye, yon achiv, oswa pwochen commit la. Pou yon sekrè ki deja nan istwa a, vire sekrè a (rotate the secret).
Mizajou: