Application Security Testing nədir ?
Müəllif : Azər Məlikov
Last updated
Müəllif : Azər Məlikov
Last updated
Tətbiq təhlükəsizliyi testi (AST) mənbə kodundakı təhlükəsizlik zəifliklərini və zəifliklərini müəyyən edərək, tətbiqləri təhlükəsizlik təhdidlərinə qarşı daha davamlı etmək prosesidir.
AST prosessi manual şəkildə yoxlanılmağa başlanıb. Bu gün müəssisə proqram təminatının artan modulları, çoxlu sayda açıq mənbə komponentləri və çoxlu sayda məlum zəifliklər və təhlükə vektorları səbəbindən AST prossesi avtomatlaşdırılmalıdır. Əksər təşkilatlar bir neçə proqram təhlükəsizliyi (tools)alətlərinin birləşməsindən istifadə edilir.
AST-lar aşağıdakı yerlərə bölünür:
SAST (tools)alətləri (whitebox testing)ağ qutu test yanaşmasından istifadə edir, burada testçilər tətbiqin daxili işini yoxlayınılır. SAST statik mənbə kodunu(source code) yoxlayıb və təhlükəsizlik zəiflikləri haqqında hesabat hazırlama prosesidir.
Statik test (tools)alətləri (syntax errors, math errors, input validation issues) sintaksis səhvləri, riyazi səhvlər, daxiletmənin doğrulanma kimi problemləri tapmaq üçün proqram təminatına tətbiq edilə bilər .Həmçinin (binary and byte-code)ikili və bayt kodu analizatorlarından istifadə edərək tərtib edilmiş kodda işləyə bilərlər.
DAST (tools)alətləri (blackbox testing)qara qutu testi yanaşmasını tətbiq edir. Burada kodu icra edilir və kod iş vaxtında yoxlanılır, təhlükəsizlik zəifliklərini təmsil edə biləcək problemlər aşkarlanır . Buraya (query strings, requests and responses, the use of scripts, memory leakage, cookie and session handling, authentication, execution of third-party components, data injection, and DOM injection)sorğu sətirləri, sorğular və cavablar, skriptlərin istifadəsi, yaddaş sızması, kuki və sessiyanın idarə edilməsi, autentifikasiya, üçüncü tərəf komponentlərinin icrası, məlumatların inyeksiyası və DOM inyeksiyası və s. daxil ola bilər. DAST (tools)alətləri çoxlu sayda gözlənilməz və ya zərərli test hadisələrini simulyasiya edən və tətbiqin cavabı haqqında hesabat verən genişmiqyaslı skanlar aparmaq üçün istifadə edilə bilər .
IAST (tools)alətləri SAST və DAST (tools)alətlərinin təkamülüdür — daha geniş təhlükəsizlik zəifliklərini aşkar etmək üçün iki yanaşmanı birləşdirir. DAST (tools)alətləri kimi, IAST (tools)alətləri dinamik işlədilir və proqram təminatını iş vaxtı ərzində yoxlanır. Bununla belə, onlar (application server)proqram serverinin içindən idarə olunur və IAST (tools)alətləri kimi tərtib edilmiş mənbə kodunu yoxlamağada imkan verir.IAST (tools)alətləri zəifliklərin kök səbəbi və təsirə məruz qalan xüsusi kod sətirləri haqqında dəyərli məlumat verə bilər ki, bu da onların aradan qaldırılmasını xeyli asanlaşdırır. Onlar mənbə kodunu, məlumat axınını , konfiqurasiyanı və (third-party libraries)üçüncü tərəf kitabxanalarını təhlil edə bilər və API sınağı üçün uyğundur.
MAST (tools)alətləri mobil proqramlardan əldə edilmiş (forensic)məhkəmə məlumatlarının statik analizi, dinamik təhlili və tədqiqini birləşdirir. SAST, DAST və IAST da ki kimi təhlükəsizlik zəifliklərini sınaqdan keçirilə və əlavə olaraq jailbreaking, zərərli WiFi şəbəkələri və mobil cihazlardan məlumat sızması kimi mobilin özünə məxsus problemlərini həll edə bilər.
SCA (tools)alətləri təşkilatlara proqram təminatı daxilində istifadə olunan (third-party)üçüncü tərəf kommersiya və (open source)açıq mənbə komponentlərinin inventarını aparmağa kömək edir. Müəssisə proqramları təhlükəsizlik zəifliklərini ehtiva edə bilən minlərlə (third-party)üçüncü tərəf komponentlərindən istifadə edə bilər. SCA həqiqətən hansı komponentlərin və versiyaların istifadə olunduğunu anlamağa, həmin komponentlərə təsir edən ən ciddi təhlükəsizlik zəifliklərini müəyyən etməyə və onları aradan qaldırmağın ən asan yolunu başa düşməyə kömək edir.
RASP (tools)alətləri SAST, DAST və IAST-dan inkişaf etmişdir.Kibertəhlükələri aşkar etmək və qarşısını almaq üçün iş zamanı tətbiq trafikini və istifadəçi davranışını təhlil edə bilir . Əvvəlki nəsil (tools)alətlər kimi, RASP də tətbiqin (source code)mənbə kodunu görmə qabiliyyətinə malikdir və zəif tərəfləri və zəiflikləri təhlil edə bilir. O, təhlükəsizlik zəifliklərinin (exploit)istismar edildiyini müəyyən etməklə və sessiyanı dayandırmaqla və ya xəbərdarlıq verməklə aktiv müdafiəni təmin etməklə bir addım irəli gedir. RASP alətləri proqramlarla inteqrasiya edir və iş zamanı trafiki təhlil edir və yalnız zəiflikləri aşkarlaya və xəbərdar edə bilməz, həm də əslində hücumların qarşısını alır. Bu cür dərin təftiş və mühafizənin icra müddətində olması SAST, DAST və IAST-ı arxada qoyur və bu, bahalı inkişaf işləri olmadan təhlükəsizlik məsələlərini aşkar edib qarşısını almağa imkan verir.