Қызметтер / Аудит

Сайт пен қосымшаның техникалық аудиті

Жұмыс істеп тұрған өнімнің архитектурасын, кодын, қауіпсіздігін, деректерін және релиз процесін келісілген көлемде тексереміз. Нәтиже — дәлелді есеп: иесіне арналған түйіндеме, команда үшін табылған мәселелер, басымдықтар және roadmap. Есеп бойынша сіздің командаңыз немесе кез келген мердігер жұмыс істей алады. Алматыдан бүкіл Қазақстан бизнесімен жұмыс істейміз.

  • Код-ревью
  • Архитектура
  • Жоспар
Қысқаша

Сайттың немесе қосымшаның техникалық аудиті деген не?

Техникалық аудит — архитектураны, кодты, қауіпсіздікті, деректерді және релиз процесін келісілген көлемде жоспарлы тексеру. Әрбір табылған мәселе кодқа, конфигурацияға немесе қайта жасауға болатын тексеріске сілтемемен расталады, маңыздылығы мен сенімділігі бойынша бағаланады және ұсынымы болады. Аудит — ену тесті де, сертификаттау да емес: ол нақты тәуекелдерді және олармен жұмыс істеу тәртібін көрсетеді, ал тексерілмегенді есепте ашық атап өтеміз.

Аудит кімге керек

Өсу алдындағы жұмыс істеп тұрған өнім

Алда жаңа функциялар, жүктеменің өсуі немесе интеграциялар тұр. Масштабтау алдындағы аудит инциденттерден кейінгі талдаудан арзан: техникалық борыш ең ыңғайсыз сәтте көрінеді.

Іске қосу немесе раунд алдындағы MVP

Бірінші нұсқа жұмыс істейді, бірақ ол асығыс жасалған. Алғашқы төлейтін клиенттерге дейін нені түзету керегін, нені сабырмен кейінге қалдыруға болатынын түсіну қажет.

Legacy-жүйе

Жүйе жылдар бойы жұмыс істейді, бірақ оны өзгерту қорқынышты: ескірген стек, тесттер жоқ, білім нақты адамдардың басында. Аудит нені дамыту, нені оқшаулау және нені кезең-кезеңімен ауыстыру керегін көрсетеді.

Мердігерді ауыстыру

Алдыңғы команда кетті, құжаттама жоқ. Аудит жаңа команда үшін бейнені қалпына келтіреді: жүйе қалай құрылған, тәуекелдер қайда және неден бастау керек.

Мәміле алдындағы техникалық тексеру

Өнімді сатып алу немесе инвестиция салу алдында кодты, инфрақұрылымды және әзірлеу процестерін тәуелсіз бағалау. Ол заңгерлік және қаржылық тексеруді алмастырмайды.

Техлиді жоқ жас команда

Команда шешімдеріне тәуелсіз көзқарас: не жақсы жасалған, арзан кезде нені түзету керек және алдымен қандай тәжірибелерді қосу керек.

Қандай міндеттерді шешеді

Міндет · 01

Бар өнім қаншалықты қауіпсіз?

Шешім

Аудит аясындағы Security review аутентификацияны мен рөлдерді, басқа адамдардың деректеріне қолжетімділікті, құпия мәліметтерді сақтауды және осал тәуелділіктерді тексереді — келісілген көлемде. Қорытынды — маңыздылық дәрежесі бойынша табылған мәселелер, дәлелдермен және түзету жоспарымен. Бұл кодты мен конфигурацияны шолу тексеруі, ену тесті емес.

Міндет · 02

Сайт немесе қосымша неге баяу жұмыс істейді?

Шешім

Тар жерлерді іздейміз: дерекқорға ауыр сұраулар, кэштеудің болмауы, оңтайсыз frontend. Әрқайсысы бойынша ұсыным және түзетуден кейінгі нәтижені тексеру тәсілі беріледі. Жүктеме бойынша қорытындыларды тек келісілген жүктеме профилі мен тиісті орта болғанда ғана жасаймыз.

Міндет · 03

Legacy-жүйені нөлден қайта жазу керек пе?

Шешім

Көбіне — жоқ. Architecture review жүйенің қай бөліктерін дамытуға болатынын, қайсысын оқшаулау керегін және қайсысы шынымен ауыстыруды қажет ететінін көрсетеді. Кезең-кезеңімен орындалатын жоспар әдетте толық қайта жазудан арзан әрі қауіпсіз.

Міндет · 04

Қазіргі мердігердің немесе команданың жұмысын қалай бағалауға болады?

Шешім

Тәуелсіз code review дәлелді баға береді: оқылымдылық, тестілеу мүмкіндігі, өзгерістерге төзімділік, релиз процесі. Бұл сіз не үшін төлеп жатқаныңызға және жобада қандай тәуекелдер жиналып жатқанына жауап — әсерлермен емес, кодтан алынған мысалдармен.

Аудит түрлері: көлем неден құралады

9тармақ

  • Architecture review — модульдер мен олардың шекаралары, тәуелділіктер, масштабтаудағы тар жерлер
  • Code quality — оқылымдылық, логиканың қайталануы, тестілеу мүмкіндігі, жинақтауды қайта жасай алу
  • Security review — аутентификация мен рөлдер, басқа адамдардың объектілеріне қолжетімділік, құпия мәліметтер, осал тәуелділіктер
  • Performance — дерекқорға сұраулар, кэштеу, frontend-метрикалар; жүктеме — тек келісілген профильмен
  • Database — схема, деректер тұтастығы, миграциялар, резервтік көшірмелер және қалпына келтіру
  • CI/CD — релиз процесі, орталарды бөлу, кері қайтару
  • Product readiness — журналдар, мониторинг, қателерді өңдеу, операциялық дайындық
  • UX — көлемге кірсе, маңызды пайдаланушы сценарийлері және қолжетімділік
  • Integrations — төлемдер, 1С, CRM, сыртқы API: келісімшарттар мен ақауларды өңдеу

Тексеру деңгейлері

Шолу аудиті, қауіпсіздікті тексеру және ену тесті — әртүрлі ережелері бар әртүрлі жұмыстар. Күтулер нәтижемен сәйкес келуі үшін деңгейді алдын ала атаймыз.

ДеңгейНені білдіредіНені білдірмейдіInterLAB-та
L0 DiscoveryҚысқа бриф және міндетті іріктеуCode review де, аудит те емесТегін алғашқы әңгіме
L1 ExpressНақты аймақты шектеулі көлемде қолмен шолуТолық қамту да, pentest те емесExpress-аудит
L2 Full ReviewКод пен архитектураны домендер бойынша дәлелдермен жоспарлы шолуҚауіпсіздік кепілдігі де, стандартқа сәйкестік те емесТолық техникалық аудит
L3 SecurityЖазбаша келісілген әдістер бойынша мамандандырылған қауіпсіздік тексерулеріСайттағы бір өтінім арқылы іске қосылмайдыӘдістер мен өкілеттіктер бөлек келісілгеннен кейін ғана
L4 PentestӨзара әрекет ережелері бар, көлемі мен уақыты шектелген бөлек тексеруҚарапайым аудитке кірмейдіҚазір ұсынбаймыз

Тексеру домендеріне арналған бағдарлар — OWASP ASVS 5.0.0 (веб), MASVS 2.1.0 (мобильді қосымшалар), API Security Top 10 — 2023. Бұл чек-парақтармен салыстырып тексеру, сертификаттау емес: «тексерілмеді» дегені «өтті» дегенді білдірмейді.

Аудит шекаралары

Кіреді

  • Жазбаша келісілген көлем: жүйелер, домендер, орталар
  • Код пен архитектураны қолмен шолу, құралдар — көмекші ретінде
  • Көлем шегінде рөлдер мен басқа адамдардың деректеріне қолжетімділікті тексеру
  • Құпия мәліметтер, тәуелділіктер және орталар конфигурациясы
  • Дерекқор, миграциялар, резервтік көшірмелер
  • Маңызды сценарийлер тесттері, CI/CD және кері қайтару
  • Екі деңгейлі есеп: иесіне және командаға арналған
  • Түзетулердің басымдықтары мен roadmap

Бөлек келісімсіз кірмейді

  • Ену тесті және осалдықтарды пайдалану
  • Сертификаттау және стандартқа сәйкестік туралы қорытынды
  • Осалдықтар енді жоқ деген уәде
  • Өнімнің тұрақты мониторингі
  • Табылғанды және барлық техникалық борышты түзету
  • Production-ға жүктемелік және белсенді тексерулер
  • Мәміленің заңгерлік және қаржылық бағасы

Түзетулер — InterLAB-пен бөлек шарт немесе кез келген басқа команданың есеп бойынша жұмысы.

Қолжетімділікті қалай қауіпсіз беруге болады

Сайттағы форма тек міндеттің сипаттамасын жинайды. Қалғаны — NDA мен көлемді келіскеннен кейін.

  1. 01

    Форма арқылы — тек бриф

    Бастапқы кодты, құпиясөздерді, кілттер мен токендерді сайт формасы немесе мессенджер арқылы жібермеңіз. Өнімді және сізді не алаңдататынын сипаттаңыз — алғашқы баға үшін осы жеткілікті.

  2. 02

    Қолжетімділікке дейін NDA және көлем

    NDA — сіздің үлгіңіз немесе InterLAB үлгісі бойынша. Қолжетімділікке дейін тексеру көлемін, InterLAB рөлін және сіздің жағыңыздан байланыс тұлғасын бекітеміз.

  3. 03

    Тек оқуға арналған бөлек қолжетімділік

    Репозиторийге тек оқу құқығы бар бөлек есептік жазбаны шақырыңыз, мүмкіндігінше уақытша. Ортақ логиндер мен құпиясөздер қажет емес.

  4. 04

    Нақты клиенттердің деректерінсіз

    Аудит үшін дерекқор схемасы, сынақ стенді немесе деректері жасырылған көшірме жеткілікті. Жұмыс істеп тұрған жүйені белсенді тексеру — тек жазбаша келісіммен және келісілген көлемде.

  5. 05

    Құпия мәліметтерсіз есеп

    Кілттер, жеке мекенжайлар және дербес деректер дәлелдерден өшіріледі. Есепті келісілген арна арқылы береміз, жария сілтемесіз.

  6. 06

    Қолжетімділікті қайтарып алу

    Есепті бергеннен кейін сіз берген құқықтарды қайтарып аласыз, біз мұны бірге тексереміз.

Беру тәсілі мен материалдарды сақтау мерзімі шартта айқындалады.

Нәтиже мысалы: екі деңгейлі есеп

Жоғарыда — иесіне арналған түйіндеме: бизнес үшін не маңызды және қандай тәртіппен. Төменде — команда үшін техникалық табылған мәселелер; әрқайсысын ашуға болады. Өнім ойдан шығарылған.

Демонстрациялық үлгі

Иесіне арналған түйіндеме

  • Нысан: ойдан шығарылған B2B-тапсырыстар веб-сервисі — Next.js, Node.js API, PostgreSQL. Көлем: API, рөлдер, дерекқор, жинақтау және релиз; мобильді қосымша және хостинг инфрақұрылымы — көлемнен тыс.
  • Басты тәуекел: бір компанияның клиенті сұрауға тапсырыс нөмірін қойып, басқа компанияның тапсырыстарын аша алады (F-01). Түзету нүктелік — жаңа клиенттерді тартқанға дейін.
  • Дерекқордың резервтік көшірмелері бапталған, бірақ қалпына келтіру бірде-бір рет тексерілмеген: ақау болғанда тоқтап тұру қанша созылатыны белгісіз (F-03).
  • Архитектураны қайта жазудың қажеті жоқ: модуль шекаралары жалпы алғанда орынды, борыш бағаны есептеуде шоғырланған (F-04).
  • Тәртіп: F-01 және F-02 — келесі релизге дейін, F-03 — соңынан, F-04 және F-05 — келесі кезең жоспарында.
F-01HIGHAPI тапсырысты нөмірі бойынша береді, оның кімдікі екенін тексермейдіАвторизация · API1:2023
Не байқалды
GET /api/orders/:id маршруты пайдаланушының жүйеге кіргенін тексереді, бірақ тапсырыс компаниясын пайдаланушы компаниясымен салыстырмайды.
Дәлел
src/api/orders/get.ts, 18–34 жолдар, a1b2c3d коммиті (ойдан шығарылған). Әртүрлі компаниялардың екі сынақ есептік жазбасымен сынақ стендінде қайта жасалды.
Бизнеске әсері
Клиенттер өзгелердің тапсырыстарын көреді: құрамы, бағалары, жеткізу мекенжайлары. Шарттық және беделге қатысты тәуекел.
Ұсыным
Идентификаторы бар барлық маршрутта объект иесін сервер жағында ортақ функциямен тексеру; «өзге адамның тапсырысы → 404» интеграциялық тестін қосу.
Сенімділік · қайта жасау
HIGH · CONFIRMED
Басымдық · еңбексыйымдылық
P1 — келесі релизге дейін · S
Шектеулер
Тапсырыстар мен шоттар маршруттары толық тексерілді; идентификаторлары бар қалған маршруттар — іріктеме бойынша, толық түгендеу ұсынылады.
F-02HIGHСессияларға қол қою кілті staging және production үшін ортақ әрі git тарихында жатырҚұпия мәліметтер және орталар
Не байқалды
.env.production файлы бір кездері коммитке қосылып, кейін жойылған, бірақ репозиторий тарихында қалған. Staging және production сессияларға қол қоюдың бірдей кілтін пайдаланады.
Дәлел
Git тарихы, e4f5a6b коммиті (ойдан шығарылған); кілт мәні есепте жасырылған. Кілттердің сәйкестігі — команда берген орталар конфигурациясы бойынша.
Бизнеске әсері
Репозиторийге қолжетімділігі болған кез келген адам, соның ішінде бұрынғы мердігерлер, теориялық тұрғыда production-да сессияны жасанды түрде жасай алады.
Ұсыным
Кілтті қайта шығару, құпия мәліметтерді орталар бойынша бөлу, оларды платформаның құпиялар менеджерінде сақтау; CI-ға коммиттердегі құпия мәліметтерді тексеруді қосу.
Сенімділік · қайта жасау
HIGH · INDICATED
Басымдық · еңбексыйымдылық
P1 — келесі релизге дейін · S
Шектеулер
Production-да сессияны жасанды түрде жасау тексерілмеді: production-ды белсенді тексеру көлемнен тыс. Қорытынды конфигурация бойынша жасалды.
F-03MEDIUMРезервтік көшірмеден қалпына келтіру бірде-бір рет тексерілмегенДеректер және қалпына келтіру
Не байқалды
Дерекқордың күнделікті снапшоттары провайдерде бапталған. Сипатталған қалпына келтіру рәсімі және сынақ қалпына келтіру туралы жазба жоқ.
Дәлел
Резервтік көшірмелеу баптаулары (идентификаторларсыз скриншот), команда мен әңгіме, репозиторийде нұсқаулықтың болмауы.
Бизнеске әсері
Ақау немесе қате миграция кезінде тоқтап тұру қанша созылатыны және деректердің қандай көлемі жоғалатыны белгісіз.
Ұсыным
Бөлек стендке сынақ қалпына келтіруді өткізу, қадамдар мен нақты уақытты жазып қою, кесте бойынша қайталау.
Сенімділік · қайта жасау
MEDIUM · NOT_TESTED
Басымдық · еңбексыйымдылық
P2 · S–M
Шектеулер
Қалпына келтіру орындалмады: көлем шегінде провайдер консоліне қолжетімділік болмады.
F-04MEDIUMБағаны есептеу үш жерде қайталанған және қазірдің өзінде алшақтап кеткенАрхитектура
Не байқалды
Жеңілдіктер API-да, frontend-тегі себетте және шот жасау кезінде есептеледі. Көтерме жеңілдіктер үшін екі көшірме әртүрлі нәтиже береді.
Дәлел
pricing.ts, cart/total.tsx, invoices/build.ts (ойдан шығарылған жолдар); алшақтық сынақ мысалымен көрсетілген.
Бизнеске әсері
Себеттегі сома шотпен сәйкес келмеуі мүмкін; тарифтердің әр өзгерісі үш жерді түзетуді қажет етеді.
Ұсыным
Серверде жалғыз есептеуді қалдыру, frontend — тек көрсету; шекаралық жеңілдіктерді тесттермен жабу.
Сенімділік · қайта жасау
HIGH · CONFIRMED
Басымдық · еңбексыйымдылық
P2 · M
Шектеулер
Бөлшек және көтерме жеңілдік сценарийлері тексерілді; промокодтар — көлемнен тыс.
F-05MEDIUMБасты сценарий тесттермен жабылмаған, релиз қолмен орналастырыладыТесттер және релиздер
Не байқалды
Тесттер бар, бірақ олар утилиталарға қатысты; «тапсырыс жасау → төлеу → шот алу» сценарийі жабылмаған. Орналастыру — бір әзірлеушінің компьютерінен қолмен іске қосылатын скрипт.
Дәлел
tests/ каталогы және қамту есебі, deploy.sh скрипті (ойдан шығарылған); CI тек линтерді іске қосады.
Бизнеске әсері
Басты сценарийдің бұзылуын бірінші болып клиенттер табады; релиз және кері қайтару бір адамға тәуелді.
Ұсыным
Басты сценарийге e2e-тест қосу, орналастыруды кері қайтару мүмкіндігімен CI-ға көшіру, релиз рәсімін сипаттау.
Сенімділік · қайта жасау
HIGH · CONFIRMED
Басымдық · еңбексыйымдылық
P2 · M
Шектеулер
Жүктемедегі мінез-құлық бағаланбады.

Демонстрациялық үлгі. Компания, өнім, код, файл жолдары және коммиттер ойдан шығарылған. Маңыздылық (severity) — ықтималдықты ескергендегі салдарлар; сенімділік (confidence) — фактінің қаншалықты дәлелденгені. S / M / L — еңбексыйымдылықтың салыстырмалы сыныбы, сағатпен берілген баға емес.

Тағы нені қарауға болады

Аудит қалай өтеді

  1. 01

    Бриф

    Бизнесті не алаңдатады және алда қандай шешімдер тұр: өсу, мердігерді ауыстыру, мәміле. Бриф — код пен құпия мәліметтерсіз. Көлем мен құнды брифтен кейін бағалаймыз.

  2. 02

    NDA және қолжетімділік

    NDA сіздің немесе біздің үлгі бойынша. Репозиторийге қолжетімділік — тек оқуға, бөлек есептік жазбамен.

  3. 03

    Көлем

    Жүйелерді, домендер мен орталарды, рұқсат етілген әдістерді және тексерусіз қалатынды жазбаша бекітеміз.

  4. 04

    Диагностика

    Домендер бойынша қолмен шолу, құралдар — көмекші. Фактілерді тіркейміз: файл мен жолдар, конфигурация, қайта жасауға болатын тексеріс.

  5. 05

    Есеп

    Иесіне арналған түйіндеме және команда үшін табылған мәселелер: маңыздылық пен сенімділік — бөлек, тексеру шектеулері — ашық.

  6. 06

    Басымдықтар және roadmap

    Жұмыс тәртібі: пайдаланушылар мен бизнеске тәуекел → тәуелділіктер → еңбексыйымдылық. Жоспар өздігінен жеткілікті — оны кез келген команда орындай алады.

Әзірлеу басталғанға дейін жобаны бағалаймыз

Міндетті төмендегі формада сипаттаңыз — жұмыс сағаты ішінде жауап беріп, келесі қадамды ұсынамыз: қоңырау, талдау немесе бағалау.

Технологиялар

Нені дәл тексереміз

Жүйені келісілген көлемде домендер бойынша қараймыз: қолжетімділік моделінен және дерекқордан бастап релиз процесіне дейін. Құралдар — көмекші: тәуелділік сканері белгілі осал нұсқаларды табады, бірақ бизнес-логика, авторизация және архитектура қателерін таппайды. Оларды қолмен талдау табады.

  • Архитектура және API
  • Авторизация және рөлдер
  • Құпия мәліметтер және тәуелділіктер
  • Дерекқорлар және миграциялар
  • Резервтік көшірмелер және қалпына келтіру
  • Маңызды сценарийлер тесттері
  • CI/CD және кері қайтару
  • Журналдар және мониторинг
Интеграциялар

Интеграциялар аудиті

Сыртқы жүйелермен байланыстарды бөлек тексереміз: төлемдер, 1С, Kaspi, CRM, мессенджерлер. Түйісу орындарындағы қателер — жоғалған тапсырыстар мен деректер алшақтығының жиі себебі, сондықтан интеграцияларды API келісімшарттары мен ақауларды өңдеу деңгейінде талдаймыз.

1С, Kaspi, Төлем сервистері, AmoCRM, Bitrix24, WhatsApp, Telegram, REST API

Талдау мысалы

Техникалық аудит туралы сұрақтар

Құн брифтен және көлемді келіскеннен кейін айқындалады: лендинг, веб-қосымша және ондаған интеграциясы бар ERP — жұмыс көлемі әртүрлі. Мерзім мен құнды брифтен кейін бағалаймыз.

Аудит — келісілген көлемде кодты, архитектураны және конфигурацияны дәлелдермен шолу. Ену тесті — жазбаша өзара әрекет ережелері бар бөлек жұмыс, онда осалдықтарды пайдаланып көреді. Ол аудитке кірмейді, қазір InterLAB оны қызмет ретінде ұсынбайды; ондай тексеріс қажет болса, аудит есебі оның көлемін тарылтуға көмектеседі.

Екі деңгейлі есеп: иесіне арналған түйіндеме — басты тәуекелдер мен іс-әрекет тәртібі, және команда үшін техникалық табылған мәселелер — дәлелдермен, ұсынымдармен және тексеру шектеулерімен. Қосымша — түзетулер roadmap-ы. Есеп өздігінен жеткілікті: онымен сіздің командаңыз немесе кез келген басқа мердігер жұмыс істей алады.

Жоқ. Аудит тексерілген көлемде табылған тәуекелдерді көрсетеді және тексерілмегенді тікелей атайды. Ол сертификаттауды алмастырмайды және стандартқа сәйкестікті растамайды: OWASP ASVS және API Security Top 10 тексеру үшін бағдар ретінде қолданылады, сертификат ретінде емес.

Ішінара: өнімділікті, сыртқы контурды және инфрақұрылымды сырттан бағалауға болады. Бірақ architecture review мен code review репозиторийге қолжетімділікті қажет етеді. NDA бойынша жұмыс істейміз, қолжетімділік — тек оқуға. Кодты, құпиясөздер мен кілттерді форма немесе мессенджер арқылы жібермеңіз: беру тәртібін брифтен кейін келісеміз.

Иә, егер алда өсу болса: жаңа функциялар, жүктеменің артуы, интеграциялар немесе команданың ауысуы. Масштабтау алдындағы аудит инциденттерден кейінгі талдаудан арзан.

Жоқ. Аудит — аяқталған нәтижесі бар дербес қызмет: есеп және жоспар. Жоспарды өз күшіңізбен немесе басқа командамен орындауға болады; қажет болса, түзетулер мен өнімді дамытуды бөлек шартпен өзімізге аламыз.

Сабақтас бағыттар

Міндет туралы айтып беріңіз — сұранысты зерделеп, сізбен байланысамыз

Аудитті талқылау

Өнімді және сізді не алаңдататынын сипаттаңыз — код, құпиясөздер мен кілттерсіз. Тексеру деңгейі мен көлемін ұсынамыз, ал мерзім мен құнды брифтен кейін бағалаймыз.

  • Алғашқы қысқа әңгіме тегін — жұмыс форматын таңдаймыз
  • NDA — сіздің немесе біздің үлгі бойынша
  • Құны — брифтен және көлемді келіскеннен кейін

Форма арқылы құпиясөздерді, қолжетімділік кілттерін және бастапқы кодты жібермеңіз — қолжетімділікті қауіпсіз беруді бөлек талқылаймыз.

Батырманы басу арқылы дербес деректерді өңдеуге келісесіз.