Праверкі бяспекі CzynszOK: што працуе пры кожнай змене
· 3 хв чытання
Пры кожнай змене кода CzynszOK запускае некалькі аўтаматычных праверак бяспекі. Ніжэй пералік таго, што сапраўды працуе, і што паказаў першы запуск. Мы пішам толькі тое, што пацвярджаюць файлы канфігурацыі ў нашым рэпазітарыі. Коратка гэта ёсць і на старонцы Бяспека.
Што працуе пры кожнай змене кода
- Залежнасці:
npm auditна крытычным узроўні. Знаходка пазначае праверку як няўдалую. - Сакрэты ў кодзе: gitleaks правярае файлы і коміты змены, а TruffleHog правярае ўсю гісторыю рэпазітарыя, але паведамляе толькі пра сакрэты, якія ўдаецца пацвердзіць як дзеючыя. Абодва пазначаюць праверку як няўдалую.
- Статычны аналіз кода: Semgrep са стандартным наборам правіл. Знаходка ўзроўню ERROR пазначае праверку як няўдалую.
- Запушчаная праграма: OWASP ZAP у рэжыме baseline (пра гэты рэжым мы пішам у асобным запісе) сканіруе публічныя старонкі праграмы, запушчанай без базы даных. Новыя знаходкі блакуюць зборку, а справаздача кожнага запуску захоўваецца разам з запускам.
- Залежнасці, вядомыя ўразлівасці: OSV-Scanner пры кожным pull request і штотыдзень. Новая вядомая ўразлівасць блакуе зборку.
- Раней і побач: праверка тыпаў, лінтар, праверкі, якія сочаць, у тым ліку, за правіламі доступу маршрутаў і за адсутнасцю персанальных даных у журналах, а таксама модульныя і скразныя тэсты.
Штотыдзень Dependabot адкрывае згрупаваныя pull request з абнаўленнямі залежнасцей, якія ён знайшоў (dependabot.yml); штотыднёвая руціна зводзіць усе адкрытыя ў адзін pull request і працуе над ім, пакуль не пройдуць усе блакавальныя праверкі; злівае яго чалавек.
Што паказаў першы запуск
- OWASP ZAP: 61 праверка пройдзена, 0 не пройдзена.
- Semgrep (версія 1.180.0, тая самая каманда, што і ў праверцы): знайшоў адну праблему ў нашым кодзе шыфравання, і мы яе выправілі. Выклік расшыфравання AES-256-GCM не ўказваў даўжыню тэга аўтэнтыфікацыі. Код і раней адхіляў тэг, даўжэйшы ці карацейшы за 16 байтаў, а цяпер гэтую даўжыню зададзена і ў самім выкліку, для шыфравання і расшыфравання.
- Сканіраванне залежнасцей: выявіла 4 уразлівасці ў інструментах распрацоўкі; мы абнавілі пакеты, для якіх было выпраўленне.
- TruffleHog: не знайшоў ніводнага дзеючага сакрэту ў гісторыі рэпазітарыя.
Чаго гэтыя праверкі не робяць
ZAP у рэжыме baseline пасіўны: ён чытае адказы сервера, нічога не атакуе і не ўваходзіць ва ўліковы запіс, таму не бачыць экранаў пасля ўваходу. Semgrep шукае вядомыя шаблоны памылак, а не даказвае, што код нельга абыйсці. Гэта не тэст на пранікненне, выкананы людзьмі, і такога тэсту мы не публікавалі. Калі ён будзе, мы апішам яго з датай і абʼёмам.
Найчасцейшыя пытанні
Ці мае CzynszOK сертыфікат ISO 27001 або SOC 2?
Не. Сертыфікаты, пра якія мы пішам на старонцы Бяспека, належаць нашым пастаўшчыкам (база даных, хостынг, плацяжы, электронная пошта), і мы апісваем іх так, як яны самі іх публікуюць.
Ці гэтыя праверкі замяняюць тэст на пранікненне?
Не. Гэта аўтаматычныя праверкі, якія працуюць пры кожнай змене. Тэст на пранікненне выконваюць людзі, і такога тэсту мы не публікавалі.
Ці сканіруеце вы экраны пасля ўваходу?
Сканіраванне ZAP ахоплівае публічныя старонкі. Экраны пасля ўваходу абараняюць уваход аднаразовым кодам, правілы доступу на кожным маршруце і тэсты, але не сканіраванне ZAP.
Куды паведаміць пра ўразлівасць?
Напішыце на pomoc@czynszok.pl: што Вы бачыце і як гэта паўтарыць. Гэты ж адрас ёсць у файле security.txt.
Czynsz OK? Праверце за некалькі хвілін.
Падключаеце банк, упісваеце арэнду з абʼявы, атрымліваеце сертыфікат з QR-кодам. Без PDF і без аналітыка.
Праверыць арэнду