Secret Gate
Pintu keluaran yang mengenal pasti rahsia sebenar anda: tiada apa dihantar sehingga tiada apa ditemui.
- Linux or macOS
- Python 3.9+
- Git hooks
- CI

Apa yang dilakukannya
Secret Gate menjawab satu soalan sebelum apa-apa keluar daripada tangan anda, sama ada zip keluaran, salinan pelanggan, tolakan sumber terbuka atau komit seterusnya: adakah ini mengandungi rahsia anda? Ia tahu rahsia anda, kerana ia membaca fail tempat rahsia itu disimpan, dan ia tidak pernah menunjukkannya: satu penemuan menamakan fail, baris dan tempat nilai itu berasal.
- Nilai tepat anda. Setiap nilai dalam fail env, konfigurasi JSON dan YAML, fail
.netrcdan kunci anda, dicari seperti yang ditulis, disandikan base64 dan disandikan URL. Kata laluan yang kelihatan seperti perkataan biasa, atau token dalaman tanpa awalan yang diketahui, dikesan seperti yang lain. - Rahsia daripada mesin yang ia tidak jalankan. Buat cap jari pada komputer riba anda; pelayan bina menemui nilai-nilai itu tanpa pernah memegangnya.
- Mesin lain memeriksa terhadap rahsia mereka sendiri. Fail dihantar ke setiap mesin melalui SSH, diimbas di sana dan dipadamkan. Rahsia tidak pernah berpindah, dan mesin yang tidak dapat menjawab akan menyekat keluaran.
- Bentuk, nama dan bunyi bising juga. 25 format token, nama anda, hos, domain dan id akaun, alamat IP peribadi, alamat e-mel peribadi, nombor telefon, IBAN, laluan folder rumah, dan rentetan rawak bersebelahan dengan nama yang menyerupai rahsia.
- Ia membuktikan dirinya setiap kali. Setiap imbasan bermula dengan menanam kanari bagi setiap jenis; jika sebarang pemeriksaan terlepas kanarinya, imbasan tidak dijalankan.
- Di tempat anda sudah bekerja. Folder, arkib zip dan tar, cangkuk pra-komit atau pra-tolak git, kod keluar untuk CI, laporan JSON.
Diuji pada apa yang kami edarkan
- Setiap kit yang kami jual: 8 arkib yang dikeluarkan diimbas terhadap 133 nilai rahsia pada mesin bina kami dan 16,259 cap jari daripada komputer riba kami. Semua lulus, dalam 5.4 saat secara keseluruhan.
- Satu rahsia sebenar yang ditanam dalam salinan keluaran dikesan dalam bentuk biasa dan disandikan base64, setiap kali dinamakan oleh fail asalnya. Nilai itu tidak muncul di mana-mana dalam output atau laporan.
- Satu imbasan jauh melalui SSH memeriksa keluaran terhadap 499 nilai rahsia pada mesin kedua dalam 1.4 saat, dan menangkap token yang ditanam dalam salinan yang hanya wujud pada mesin itu.
Apa yang terkandung di dalamnya
Gerbang
Empat pemeriksaan, ujian kendiri, pengimbasan arkib dan git-staged, laporan yang boleh dibaca dan satu laporan JSON.
Cap jari
Cap jari rahsia satu mesin, untuk imbasan pada mesin lain, tanpa nilai-nilainya.
Imbasan jauh
Fail yang sama diperiksa pada setiap mesin yang menyimpan rahsia, dengan peraturan projek anda dihantar sekali.
Persediaan dan CI
Pencari untuk fail rahsia anda, cangkuk git, dan alir kerja GitHub Actions untuk arkib keluaran.
Persyaratan
- Linux atau macOS dengan Python 3.9 atau lebih baharu; tiada apa untuk dipasang daripada pip.
- Git untuk cangkuk, SSH untuk imbasan jauh.
Baik untuk diketahui
- Ia membaca fail seperti sedia ada. Rahsia yang sudah ada dalam sejarah git anda kekal di sana: putarkan rahsia tersebut.
- Arkib dalam folder yang diimbas tidak dibuka; imbas setiap arkib.
- Kekalkan fail cap jari seprivat rahsia: ia menyimpan 4 aksara pertama bagi setiap nilai yang mempunyai 16 aksara atau lebih.
Soalan
Apakah perbezaannya dengan gitleaks atau TruffleHog?
Kedua-duanya mencari bentuk rahsia yang biasa, dan mereka mahir dalam hal itu. Secret Gate juga tahu apakah rahsia anda sebenarnya: ia membaca fail rahsia anda sendiri dan mencari nilai-nilai tepat tersebut, jadi kata laluan pangkalan data atau token dalaman tanpa bentuk yang boleh dikenal pasti turut dikesan. Ia dibina untuk satu momen, sebelum sesuatu dihantar keluar, dan gagal tertutup.
Adakah ia menghantar rahsia saya ke mana-mana?
Tidak. Nilai dibaca daripada fail anda ke dalam memori untuk imbasan dan tidak pernah dicetak, ditulis atau dihantar; fail cap jari, jika anda membuatnya, menyimpan hash dan 4 aksara pertama bagi setiap nilai. Imbasan jauh menghantar fail yang akan anda hantar keluar ke mesin anda sendiri; rahsia pada mesin itu kekal di sana.
Bagaimana dengan amaran palsu?
Penemuan bermaksud "periksa ini". Jika tiada masalah, tambah peraturan benaran yang sempit untuk jenis penemuan tersebut dalam konfigurasi projek, contohnya alamat sokongan anda sendiri. Tiada suis untuk mematikan pemeriksaan.
Bolehkah ia mengimbas sejarah git saya?
Tidak. Ia memeriksa apa yang akan anda hantar keluar: folder, arkib, atau komit seterusnya. Untuk rahsia yang sudah ada dalam sejarah, putarkan rahsia tersebut.
Dikemas kini: