د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی

ګراډیټ د ډیری برنامو ژبو ملاتړ کوي او تاسو ته اجازه درکوي د کوډبیس امنیت ازموینې مستقیم د پراختیا پروسې کې مدغم کړئ.

د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی
سرچینه: خلاصول (مارکوس سپیسک)

ازموینه د سافټویر پراختیا د ژوند دورې یوه مهمه برخه ده. د ازموینې ډیری ډولونه شتون لري، هر یو یې خپله ستونزه حل کوي. نن زه غواړم په کوډ کې د امنیتي ستونزو موندلو په اړه وغږیږم.

په ښکاره ډول، د سافټویر پراختیا په عصري واقعیتونو کې، دا مهمه ده چې د پروسې امنیت ډاډمن شي. په یو وخت کې، ځانګړې اصطلاح DevSecOps حتی معرفي شوه. دا اصطالح د پروسیجرونو لړۍ ته اشاره کوي چې هدف یې په غوښتنلیک کې د زیانونو پیژندلو او له منځه وړل دي. د معیارونو سره سم د زیانونو چک کولو لپاره د خلاصې سرچینې ځانګړي حلونه شتون لري OWASP، کوم چې د سرچینې کوډ کې د زیان مننې مختلف ډولونه او چلند بیانوي.

د امنیتي ستونزو د حل لپاره مختلفې لارې شتون لري، لکه د جامد غوښتنلیک امنیت ازموینه (SAST)، د متحرک غوښتنلیک امنیت ازموینه (DAST)، د متقابل غوښتنلیک امنیت ازموینه (IAST)، د سافټویر جوړښت تحلیل، او داسې نور.

د جامد غوښتنلیک امنیت ازموینه دمخه لیکل شوي کوډ کې غلطۍ پیژني. دا طریقه د غوښتنلیک چلولو ته اړتیا نلري، له همدې امله دا جامد تحلیل بلل کیږي.

زه به د جامد کوډ تحلیل باندې تمرکز وکړم او په عمل کې د هرڅه ښودلو لپاره به د خلاصې سرچینې ساده وسیله وکاروم.

ولې ما د جامد کوډ امنیت تحلیل لپاره د خلاصې سرچینې وسیله غوره کړه

د دې لپاره یو شمیر دلیلونه شتون لري: لومړی، دا وړیا دی ځکه چې تاسو د ورته فکر لرونکي خلکو ټولنې لخوا رامینځته شوي وسیله کاروئ چې غواړي د نورو پراختیا کونکو سره مرسته وکړي. که تاسو کوچنی ټیم یا پیل لرئ، تاسو د خپل کوډبیس امنیت ازموینې لپاره د خلاصې سرچینې سافټویر په کارولو سره د پیسو خوندي کولو لپاره عالي فرصت لرئ. دوهم، دا ستاسو لپاره د جلا DevSecOps ټیم ګمارلو اړتیا له منځه وړي، ستاسو لګښتونه نور هم کموي.

د خلاصې سرچینې ښې وسیلې تل د انعطاف لپاره د زیاتو اړتیاو په پام کې نیولو سره رامینځته کیږي. له همدې امله، دوی تقریبا په هر چاپیریال کې کارول کیدی شي، د دندو پراخه لړۍ پوښي. دا د پراختیا کونکو لپاره خورا اسانه دی چې دا ډول وسیلې د هغه سیسټم سره وصل کړي چې دوی دمخه د دوی په پروژو کار کولو پرمهال رامینځته کړي.

مګر ممکن ځینې وختونه وي کله چې تاسو داسې ځانګړتیا ته اړتیا لرئ چې په هغه وسیله کې شتون نلري چې تاسو یې غوره کوئ. پدې حالت کې ، تاسو فرصت لرئ د دې کوډ فورک کړئ او د دې پراساس خپل وسیله رامینځته کړئ د هغه فعالیت سره چې تاسو ورته اړتیا لرئ.

څرنګه چې په ډیری قضیو کې د خلاصې سرچینې سافټویر پراختیا په فعاله توګه د ټولنې لخوا اغیزمن کیږي، د بدلونونو پریکړه په چټکۍ سره ترسره کیږي او دې ټکي ته: د خلاصې سرچینې پروژې پراختیا کونکي د خپلو راپورونو په اړه د کاروونکو لخوا په فیډبیک او وړاندیزونو تکیه کوي. تېروتنې موندل او نورې ستونزې.

د کوډ امنیت تحلیل لپاره د Graudit کارول

تاسو کولی شئ د جامد کوډ تحلیل لپاره مختلف خلاصې سرچینې وسیلې وکاروئ؛ د ټولو برنامو ژبو لپاره نړیواله وسیله شتون نلري. د دوی ځینې پراختیا کونکي د OWASP سپارښتنې تعقیبوي او هڅه کوي د امکان تر حده ډیری ژبې پوښي.

دلته به یې وکاروو ګراډیټ، یو ساده کمانډ لاین افادیت چې موږ ته به اجازه راکړي زموږ په کوډبیس کې زیانونه ومومئ. دا د مختلفو ژبو ملاتړ کوي، مګر بیا هم د دوی سیټ محدود دی. ګراډیټ د ګریپ یوټیلټي افادیت پراساس رامینځته شوی ، کوم چې یوځل د GNU جواز لاندې خپور شوی و.

د جامد کوډ تحلیل لپاره ورته وسیلې شتون لري - د امنیت لپاره د خرابې پلټنې وسیله (RATS) ، Securitycompass Web Application Analysis Tool (SWAAT)، flawfinder او داسې نور. مګر Graudit خورا انعطاف منونکی دی او لږترلږه تخنیکي اړتیاوې لري. په هرصورت، تاسو ممکن هغه ستونزې ولرئ چې Graudit نشي حل کولی. بیا تاسو کولی شئ دلته د نورو اختیارونو په لټه کې شئ په دې لیست کې.

موږ کولی شو دا وسیله په یوه ځانګړې پروژه کې مدغم کړو، یا دا یو ټاکل شوي کارونکي ته چمتو کړو، یا دا زموږ په ټولو پروژو کې په ورته وخت کې وکاروو. دا هغه ځای دی چې د ګراډیټ انعطاف پذیري په لوبو کې راځي. نو راځئ لومړی ریپو کلون کړو:

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

اوس راځئ چې د Graudit لپاره سمبولیک لینک جوړ کړو ترڅو دا د کمانډ فارمیټ کې وکاروي

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

راځئ چې په .bashrc کې یو عرف اضافه کړو (یا هر هغه ترتیب فایل چې تاسو یې کاروئ):

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

ریبوټ:

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

راځئ وګورو چې ایا نصب کول بریالي وو:

$ graudit -h

که تاسو ورته یو څه وګورئ، نو هرڅه سم دي.

د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی

زه به زما د موجوده پروژو څخه یوه ازموینه وکړم. د وسیلې چلولو دمخه ، دا اړتیا لري چې د هغه ژبې سره په مطابقت کې ډیټابیس تیر شي په کوم کې چې زما پروژه لیکل شوې. ډیټابیسونه په ~/gradit/signatures فولډر کې موقعیت لري:

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

نو، ما د خپلې پروژې څخه دوه js فایلونه ازموینه وکړه، او Graudit زما په کوډ کې د زیانونو په اړه معلومات کنسول ته وښودل:

د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی

د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی

تاسو کولی شئ په ورته ډول د خپلو پروژو ازموینې هڅه وکړئ. تاسو کولی شئ د مختلف پروګرامینګ ژبو لپاره د ډیټابیسونو لیست وګورئ دلته.

د Graudit ګټې او زیانونه

Graudit د ډیری پروګرامینګ ژبو ملاتړ کوي. له همدې امله، دا د کاروونکو پراخه لړۍ لپاره مناسبه ده. دا کولی شي په مناسب ډول د هر وړیا یا تادیه شوي انلاګونو سره سیالي وکړي. او دا خورا مهم دي چې لاهم پروژې ته پرمختګونه رامینځته کیږي ، او ټولنه نه یوازې د پراختیا کونکو سره مرسته کوي ، بلکه نور کارونکي هم چې د وسیلې په ګوته کولو هڅه کوي.

دا یو لاسي وسیله ده، مګر تر دې دمه دا تل نشي کولی دقیقا په ګوته کړي چې ستونزه د شکمن کوډ سره څه ده. پراختیا کونکي د Graudit ښه کولو ته دوام ورکوي.

مګر په هر حالت کې ، دا ګټور دی چې په کوډ کې احتمالي امنیتي ستونزو ته پاملرنه وکړئ کله چې د دې په څیر وسیلې وکاروئ.

پیل…

په دې مقاله کې، ما د زیانونو موندلو لپاره د ډیری لارو څخه یوازې یوه ته وکتل - static application security testing. د جامد کوډ تحلیل ترسره کول اسانه دي، مګر دا یوازې پیل دی. ستاسو د کوډبیس امنیت په اړه د نورو معلوماتو لپاره ، تاسو اړتیا لرئ د خپل سافټویر پراختیا ژوند دورې کې د ازموینې نور ډولونه مدغم کړئ.

د اعلاناتو حقونه

د اعتبار وړ VPS او د تعرفې پلان سم انتخاب به تاسو ته اجازه درکړي چې د ناخوښۍ ستونزو له امله د پرمختګ څخه لږ پام وکړئ - هرڅه به پرته له ناکامۍ او خورا لوړ وخت سره کار وکړي!

د برنامه کوډ کې د زیانونو موندلو لپاره د ساده کارونې کارولو څرنګوالی

سرچینه: www.habr.com

Add a comment