GitHub kodda zəiflikləri axtarmaq üçün maşın öyrənmə sistemini tətbiq edib

GitHub, kodda ümumi boşluq növlərini müəyyən etmək üçün Kod skan etmə xidmətinə eksperimental maşın öyrənmə sisteminin əlavə edildiyini elan etdi. Sınaq mərhələsində yeni funksionallıq hazırda yalnız JavaScript və TypeScript kodlu depolar üçün əlçatandır. Qeyd olunur ki, maşın öyrənməsi sisteminin istifadəsi təhlil zamanı müəyyən edilmiş problemlərin diapazonunu əhəmiyyətli dərəcədə genişləndirməyə imkan verib, hansılar ki, sistem artıq standart şablonları yoxlamaqla məhdudlaşmır və tanınmış çərçivələrə bağlı deyil. Yeni sistem tərəfindən müəyyən edilən problemlər arasında saytlararası skriptlərə (XSS), fayl yollarının təhrif edilməsinə (məsələn, “/..” işarəsi ilə), SQL və NoSQL sorğularının əvəzlənməsinə səbəb olan xətalar qeyd olunur.

Kodun skan edilməsi xidməti potensial problemlər üçün hər bir “git push” əməliyyatını skan etməklə inkişafın ilkin mərhələsində zəiflikləri müəyyən etməyə imkan verir. Nəticə birbaşa çəkmə sorğusuna əlavə olunur. Əvvəllər yoxlama həssas kodun tipik nümunələri ilə şablonları təhlil edən CodeQL mühərrikindən istifadə etməklə həyata keçirilirdi (CodeQL digər layihələrin kodunda oxşar zəifliyin mövcudluğunu müəyyən etmək üçün həssas kod şablonu yaratmağa imkan verir). Maşın öyrənməsindən istifadə edən yeni mühərrik əvvəllər məlum olmayan zəiflikləri müəyyən edə bilər, çünki o, xüsusi zəiflikləri təsvir edən kod şablonlarının sadalanması ilə əlaqəli deyil. Bu funksiyanın dəyəri CodeQL əsaslı yoxlamalarla müqayisədə yanlış pozitivlərin sayının artmasıdır.

Mənbə: opennet.ru

Добавить комментарий