Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka

Graudit waxay taageertaa luuqado badan oo barnaamijyo ah waxayna kuu ogolaanaysaa inaad si toos ah u dhexgaliso tijaabada amniga codebase habka horumarinta.

Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka
Source: Aadaabta (Markus Spiske)

Tijaabadu waa qayb muhiim ah oo ka mid ah wareegga nolosha horumarinta software-ka. Waxaa jira noocyo badan oo tijaabo ah, mid kasta oo iyaga ka mid ah ayaa xalliya dhibkiisa. Maanta waxaan rabaa in aan ka hadlo sidii dhibaatooyinka amniga loogu heli lahaa koodka.

Sida iska cad, xaqiiqooyinka casriga ah ee horumarinta software, waxaa muhiim ah in la hubiyo amniga habka. Hal mar, ereyga gaarka ah ee DevSecOps ayaa xitaa la soo bandhigay. Eraygani waxa uu tilmaamayaa habab taxane ah oo looga dan leeyahay in lagu garto oo meesha laga saaro baylahda codsiga. Waxaa jira xalal gaar ah oo il furan oo lagu hubinayo dayacanka si waafaqsan heerarka OWASP, kaas oo qeexaya noocyada iyo dabeecadaha kala duwan ee dayacan ee koodhka isha.

Waxaa jira habab kala duwan oo loo xalliyo dhibaatooyinka amniga, sida Static Application Security Testing (SAST), Imtixaanka Amniga Codsiga Dhaqan-galka ah (DAST), Tijaabada Amniga Codsiga Interactive (IAST), Falanqaynta Hal-abuurka Software, iyo wixii la mid ah.

Tijaabada amniga codsiga ee joogtada ah ayaa aqoonsa khaladaadka kood hore oo qoran. Habkani uma baahna codsigu inuu socdo, waana sababta loogu yeero falanqaynta static.

Waxaan diiradda saari doonaa falanqaynta koodka taagan oo aan isticmaali doono qalab il furan oo fudud si aan u muujiyo wax kasta oo ku jira ficil ahaan.

Sababta aan u doortay qalab il furan oo loogu talagalay falanqaynta amniga koodka taagan

Waxaa jira dhowr sababood oo tan: marka hore, waa lacag la'aan sababtoo ah waxaad isticmaalaysaa qalab ay sameeyeen bulsho ay isku fikrad yihiin oo doonaya inay caawiyaan horumariyeyaasha kale. Haddii aad leedahay koox yar ama bilawga, waxaad haysataa fursad weyn oo aad lacag ku badbaadiso adigoo isticmaalaya software il furan si aad u tijaabiso amniga codebase-kaaga. Marka labaad, waxay meesha ka saaraysaa baahida aad u qabto inaad shaqaaleysiiso koox gaar ah oo DevSecOps ah, taasoo sii yaraynaysa kharashaadkaaga.

Qalab wanaagsan oo il furan ayaa had iyo jeer la abuuraa iyada oo la tixgelinayo baahida kordhaysa ee dabacsanaanta. Sidaa darteed, waxaa loo isticmaali karaa ku dhawaad ​​deegaan kasta, oo daboolaya hawlo badan oo kala duwan. Aad bay ugu fududahay horumariyayaashu inay ku xidhaan qalabkan oo kale nidaamkii ay hore u dhiseen inta ay ka shaqaynayaan mashaariicdooda.

Laakiin waxaa jiri kara waqtiyo aad u baahan tahay sifo aan laga heli karin qalabka aad dooratay. Xaaladdan oo kale, waxaad fursad u haysataa inaad fargeeto koodka oo aad horumariso qalabkaaga adiga oo ku saleysan shaqada aad u baahan tahay.

Maaddaama inta badan kiisaska horumarinta software-ka isha furan ay si firfircoon u saameeyaan bulshada, go'aanka in isbedel lagu sameeyo si dhakhso ah ayaa loo sameeyaa ilaa heerka: horumarinta mashruuca isha furan waxay ku tiirsan yihiin jawaab-celinta iyo soo jeedinta isticmaalayaasha, warbixinadooda khaladaad la helay iyo dhibaatooyin kale.

Isticmaalka Graudit ee Falanqaynta Amniga Code

Waxaad u isticmaali kartaa qalab kala duwan oo il furan falanqaynta koodka taagan; ma jiro qalab caalami ah oo loogu talagalay dhammaan luuqadaha barnaamijyada. Soosaarayaasha qaarkood waxay raacaan talooyinka OWASP waxayna isku dayaan inay daboolaan luqado badan intii suurtagal ah.

Halkan waxaan isticmaali doonaa Graudit, Utility line taliska fudud oo noo ogolaan doona in aan ka heli dayacan ee our codebase. Waxay taageertaa luqado kala duwan, laakiin weli setkoodu wuu xadidan yahay. Graudit waxaa lagu sameeyay iyadoo lagu saleynayo utility grep, kaas oo mar lagu sii daayay shatiga GNU.

Waxa jira qalab la mid ah oo loo adeegsado falanqaynta koodhka taagan - Qalabka Hantidhawrka ee Rough for Security (RATS), Qalabka Falanqaynta Codsiga Shabakadda ee Securitycompass (SWAAT), cillad-finder iyo wixii la mid ah. Laakiin Graudit waa mid aad u dabacsan oo leh shuruudo farsamo oo yar. Si kastaba ha noqotee, waxaa laga yaabaa inaad la kulanto dhibaatooyin aysan Graudit xallin karin. Markaa waxaad ka raadin kartaa doorashooyin kale halkan liiskan.

Waxaan ku dhex dari karnaa qalabkan mashruuc gaar ah, ama waxaan ka dhigi karnaa mid loo heli karo isticmaale la doortay, ama aan u isticmaalno isku mar dhammaan mashaariicdayada. Tani sidoo kale waa halka dabacsanaanta Graudit ay ka soo gasho ciyaarta. Marka aan marka hore xirno repo:

$ git clone https://github.com/wireghoul/graudit

Hadda aan u abuurno xiriir calaamad ah Graudit si uu ugu isticmaalo qaabka amarka

$ cd ~/bin && mkdir graudit
$ ln --symbolic ~/graudit/graudit ~/bin/graudit

Aynu ku darno magac loo yaqaan .bashrc (ama fayl kasta oo qaabayn ah oo aad isticmaalayso):

#------ .bashrc ------
alias graudit="~/bin/graudit"

Dib u kici

$ source ~/.bashrc # OR
$ exex $SHELL

Aynu eegno haddii rakibiddu lagu guulaystay:

$ graudit -h

Haddii aad aragto wax la mid ah, markaa wax walba waa fiican yihiin.

Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka

Waxaan tijaabin doonaa mid ka mid ah mashaariicdayda jira. Kahor intaadan bilaabin qalabka, waxay u baahan tahay in la gudbiyo xog-ururin u dhiganta luqadda mashruucaygu ku qoran yahay. Kaydka macluumaadka waxa ay ku yaalaan galka ~/gradit/signatures:

$ graudit -d ~/gradit/signatures/js.db

Marka, waxaan tijaabiyay laba faylal oo js ah mashruucayga, Graudit wuxuu soo bandhigay macluumaadka ku saabsan dayacanka koodka konsoole:

Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka

Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka

Waxaad isku dayi kartaa tijaabinta mashaariicdaada si la mid ah. Waxaad arki kartaa liiska macluumaadka ee luqadaha barnaamijyada kala duwan halkan.

Faa'iidooyinka iyo khasaarooyinka Graudit

Graudit waxay taageertaa luuqado badan oo barnaamijka ah. Sidaa darteed, waxay ku habboon tahay isticmaalayaasha kala duwan. Waxay si ku filan ula tartami kartaa analoog kasta oo bilaash ah ama lacag ah. Waxayna aad muhiim u tahay in hagaajinta lagu sameeyo mashruuca, bulshaduna ma caawiso oo kaliya kuwa horumariya, laakiin sidoo kale isticmaalayaasha kale ee isku dayaya inay ogaadaan qalabka.

Kani waa qalab wax ku ool ah, laakiin ilaa hadda had iyo jeer si sax ah uma tilmaami karo waxa dhibku ka jiro qayb kood ah oo laga shakiyo. Horumariyayaashu waxay sii wadaan inay horumariyaan Graudit.

Laakiin xaalad kasta, waxaa muhiim ah in fiiro gaar ah loo yeesho dhibaatooyinka amniga ee suurtagalka ah ee koodhka marka la isticmaalayo qalabkan oo kale.

Bilaabmaya…

Maqaalkan, waxaan eegay kaliya mid ka mid ah siyaabo badan oo lagu helo dayacanka - static application security test . Samaynta falanqaynta code static waa sahlan tahay, laakiin waa bilow uun. Si aad wax badan uga barato amniga codebase-kaaga, waxaad u baahan tahay inaad ku darto noocyada kale ee tijaabada wareegga noloshaada horumarinta software-ka.

Iidheh ahaan

VPS lagu kalsoonaan karo iyo xulashada saxda ah ee qorshaha tariifku wuxuu kuu ogolaanayaa inaad ka fogaato horumarinta dhibaatooyinka aan fiicnayn - wax walbaa waxay ku shaqeyn doonaan guuldarro la'aan iyo wakhti aad u sarreeya!

Sida loo isticmaalo utility fudud si aad u hesho dayacan ee code barnaamijka

Source: www.habr.com

Add a comment