Secret Gate
Թողարկման պահպանիչ, որը գիտի ձեր իրական գաղտնիքները. ոչինչ չի ուղարկվում մինչև ոչինչ չգտնվի։
- Linux or macOS
- Python 3.9+
- Git hooks
- CI

Ինչ է անում
Secret Gate-ը պատասխանում է մեկ հարցի՝ մինչև ձեռքից բան արձակելը, լինի դա թողարկման zip ֆայլ, հաճախորդի պատճեն, բաց աղբյուրի push կամ հաջորդ commit-ը. արդյո՞ք սա պարունակում է իմ գաղտնիքներից մեկը։ Այն գիտի, թե ձեր գաղտնիքներն ո՞րն են, քանի որ կարդում է այն ֆայլերը, որտեղ դրանք պահվում են, և երբեք չի ցուցադրում դրանք. գտնվածը նշում է ֆայլը, տողը և արժեքի աղբյուրը։
- Ձեր ճշգրիտ արժեքները։ Ձեր env ֆայլերի, JSON և YAML կոնֆիգուրացիաների,
.netrc-ի և բանալիների ֆայլերի յուրաքանչյուր արժեք, որոնք փնտրվում են ինչպես գրված են, base64-ով և URL-ով կոդավորված։ Գաղտնաբառը, որը նման է սովորական բառի, կամ ներքին token-ը՝ առանց հայտնի նախածանցի, բռնվում է ինչպես մյուսները։ - Գաղտնիքներ մեքենաներից, որոնց վրա այն չի աշխատում։ Ձեր նոութբուքում ստեղծեք մատնահետքեր. build սերվերը գտնում է այդ արժեքները՝ առանց դրանք երբևէ պահելու։
- Մյուս մեքենաները ստուգում են իրենց գաղտնիքների դեմ։ Ֆայլերը SSH-ով ուղարկվում են յուրաքանչյուր մեքենա, սկանավորվում են այնտեղ և ջնջվում։ Գաղտնիքները երբեք չեն տեղափոխվում, և մեքենան, որը չի կարողանում պատասխանել, արգելափակում է թողարկումը։
- Ձևեր, անուններ և աղմուկ նույնպես։ 25 token ձևաչափ, ձեր անունները, host-երը, դոմենները և հաշիվների id-ները, անձնական IP հասցեները, անձնական էլ. փոստի հասցեները, հեռախոսահամարները, IBAN-ները, տնային թիկնոցի ուղիները և պատահական տողեր՝ գաղտնիքի նմանվող անունների կողքին։
- Այն ամեն անգամ ապացուցում է իրեն։ Յուրաքանչյուր սկանավորում սկսվում է բոլոր տեսակի կանարներ տեղադրելով. եթե որևէ ստուգում բաց է թողնում իր կանարը, սկանավորումը չի գործարկվում։
- Այնտեղ, որտեղ արդեն աշխատում եք։ Թիկնոցներ, zip և tar արխիվներ, git pre-commit կամ pre-push hook, exit codes CI-ի համար, JSON հաշվետվություն։
Ստուգված է այն, ինչ ուղարկում ենք
- Մեր վաճառած յուրաքանչյուր հավաքածու. 8 թողարկված արխիվներ սկանավորվել են մեր build մեքենայի 133 գաղտնի արժեքների և մեր նոութբուքի 16,259 մատնահետքերի դեմ։ Բոլորն անցել են, 5.4 վայրկյանում ընդհանուր։
- Թողարկման պատճենում տեղադրված իրական գաղտնիք բռնվեց ուղիղ և base64-ով կոդավորված, յուրաքանչյուր անգամ անվանվեց այն ֆայլով, որից եկել էր։ Արժեքը ոչ մի տեղ չհայտնվեց ելքում կամ հաշվետվության մեջ։
- Հեռավոր սկանավորում SSH-ով ստուգեց թողարկումը երկրորդ մեքենայի 499 գաղտնի արժեքների դեմ 1.4 վայրկյանում և բռնեց token-ը, որը տեղադրված էր միայն այդ մեքենայում գոյություն ունեցող պատճենում։
Ինչ կա ներսում
Դարպասը
Չորս ստուգումներ, ինքնաստուգում, արխիվի և git-staged սկանավորում, ընթեռնելի հաշվետվություն և JSON հաշվետվություն։
Մատնահետքեր
Մեկ մեքենայի գաղտնիքների մատնահետքեր՝ մյուսի վրա սկանավորելու համար, առանց արժեքների։
Հեռավոր սկանավորումներ
Նույն ֆայլերը ստուգվում են գաղտնիքներ պարունակող յուրաքանչյուր մեքենայի վրա՝ ձեր նախագծի կանոնները հետը ուղարկելով։
Կարգավորում և CI
Ձեր գաղտնի ֆայլերի որոնիչ, git hooks և GitHub Actions workflow թողարկման արխիվների համար։
Պահանջներ
- Linux կամ macOS՝ Python 3.9 կամ ավելի նոր տարբերակով; pip-ից ոչինչ տեղադրելու կարիք չկա։
- Git՝ hooks-երի համար, SSH՝ հեռավոր սկանավորումների համար։
Օգտակար է իմանալ
- Այն կարդում է ֆայլերը այնպես, ինչպես դրանք հիմա են։ Git-ի պատմության մեջ արդեն առկա գաղտնիքը մնում է այնտեղ. փոխեք այն։
- Սկանավորվող թղթապանակում եղած արխիվները չեն բացվում. սկանավորեք յուրաքանչյուր արխիվ առանձին։
- Պահպանեք մատնահետքերի ֆայլերը նույնքան գաղտնի, որքան գաղտնիքները. դրանք պարունակում են 16 կամ ավելի նիշ ունեցող յուրաքանչյուր արժեքի առաջին 4 նիշերը։
From our field notes
Հարցեր
Ինչո՞վ է սա տարբերվում gitleaks-ից կամ TruffleHog-ից։
Դրանք փնտրում են այն, ինչ սովորաբար գաղտնիքները նման են, և լավ են դրանում։ Secret Gate-ը նաև գիտի, թե ինչ են ձեր գաղտնիքները իրականում. այն կարդում է ձեր սեփական գաղտնի ֆայլերը և փնտրում հենց այդ կոնկրետ արժեքները, ուստի բազայի գաղտնաբառը կամ ներքին token-ը՝ առանց ճանաչելի ձևի, նույնպես հայտնաբերվում է։ Այն ստեղծված է մեկ պահի համար՝ մինչև ինչ-որ բան ուղարկելը, և ձախողման դեպքում փակվում է։
Արդյո՞ք այն ուղարկում է իմ գաղտնիքները որևէ տեղ։
Ոչ։ Արժեքները կարդացվում են ձեր ֆայլերից հիշողության մեջ սկանավորման համար և երբեք չեն տպագրվում, գրվում կամ ուղարկվում. մատնահետքերի ֆայլը, եթե դուք ստեղծեք, պարունակում է hash և յուրաքանչյուր արժեքի առաջին 4 նիշերը։ Հեռավոր սկանավորումները ուղարկում են ձեր ուղարկելիք ֆայլերը ձեր սեփական մեքենա. այդ մեքենայի գաղտնիքները մնում են նրա վրա։
Ինչպե՞ս է false alarm-ների հարցը։
Հայտնաբերումը նշանակում է «նայեք սրան»։ Եթե ամեն ինչ կարգին է, ավելացրեք նեղ allow կանոն այդ տեսակի հայտնաբերման համար նախագծի կոնֆիգուրացիայում, օրինակ՝ ձեր սեփական աջակցության հասցեն։ Չկա միացանջիչ, որը ստուգումը կանջատի։
Կարո՞ղ է այն սկանավորել իմ git պատմությունը։
Ոչ։ Այն ստուգում է այն, ինչ դուք պատրաստվում եք ուղարկել. թղթապանակ, արխիվ կամ հաջորդ commit-ը։ Արդեն պատմության մեջ առկա գաղտնիքի համար փոխեք գաղտնիքը։
Թարմացված է: