Software composition analysis
વિવિધ ઘટકોનો ઉપયોગ કરીને સોફ્ટવેર વિકસાવવું એ એક સામાન્ય સોફ્ટવેર ઇજનેરી પ્રથા છે. સોફ્ટવેર ઘટકોનો ઉપયોગ મોટા ઘટકોની જટિલતાને કોડના નાના ટુકડાઓમાં વિભાજિત કરે છે અને નવી જરૂરિયાતોને પહોંચી વળવા માટે ઘટકોના સરળ પુનઃઉપયોગને સક્ષમ કરીને લવચીકતા વધારે છે. સોફ્ટવેર વિકાસ પ્રક્રિયાને ઝડપી બનાવવા અને બજારમાં સમય ઘટાડવામાં મદદ કરવા માટે ઓપન-સોર્સ સોફ્ટવેર (ઓએસએસ) ની લોકપ્રિયતા સાથે 1990 ના દાયકાના અંતથી આ પ્રથાનો વ્યાપક વિસ્તાર થયો છે. જો કે, ઓપન-સોર્સ સોફ્ટવેરનો ઉપયોગ કરવાથી સોફ્ટવેર એપ્લિકેશન્સ વિકસાવવા માટે ઘણા જોખમો રજૂ થાય છે. આ જોખમોને 5 શ્રેણીઓમાં ગોઠવી શકાય છેઃ OSS સંસ્કરણ નિયંત્રણઃ નવી આવૃત્તિઓ દ્વારા રજૂ કરાયેલા ફેરફારોના જોખમો સુરક્ષાઃ ઘટકોમાં નબળાઈઓના જોખમો-સામાન્ય નબળાઈઓ અને એક્સપોઝર (અથવા CVE) લાઇસન્સઃ બૌદ્ધિક સંપત્તિ (IP) કાનૂની આવશ્યકતાઓના જોખમો વિકાસઃ હાલના કોડબેઝ અને ઓપન-સોર્સ સોફ્ટવેર સપોર્ટ વચ્ચે સુસંગતતાના જોખમોઃ નબળા દસ્તાવેજો અને અપ્રચલિત સોફ્ટવેર ઘટકોનું જોખમ ફેબ્રુઆરી 1998 માં ઓપન સોર્સ ઇનિશિયેટિવની સ્થાપના પછી ટૂંક સમયમાં, OSS સાથે સંકળાયેલા જોખમો ઊભા કરવામાં આવ્યા હતા અને સંસ્થાઓએ તેમના વિકાસકર્તાઓ દ્વારા ઉપયોગમાં લેવાતા તમામ ઓપન સોર્સ ઘટકોને ટ્રેક કરવા માટે સ્પ્રેડશીટ અને દસ્તાવેજોનો ઉપયોગ કરીને તેનું સંચાલન કરવાનો પ્રયાસ કર્યો હતો. ઓપન સોર્સ ઘટકોનો વ્યાપકપણે ઉપયોગ કરતી સંસ્થાઓ માટે, ઓપન સોર્સ જોખમના વિશ્લેષણ અને વ્યવસ્થાપનને સ્વચાલિત કરવામાં મદદ કરવાની જરૂર હતી. આના પરિણામે સોફ્ટવેર કમ્પોઝિશન એનાલિસિસ (એસ. સી. એ.) નામની સોફ્ટવેર પ્રોડક્ટ્સની નવી શ્રેણી આવી જે સંસ્થાઓને ઓપન સોર્સ જોખમનું સંચાલન કરવામાં મદદ કરે છે. એસસીએ સુરક્ષા નબળાઈઓ, આઇપી લાઇસન્સિંગ આવશ્યકતાઓ અને ઉપયોગમાં લેવાતા ઘટકોના અપ્રચલિતતા સાથે સંકળાયેલા જોખમોને ઘટાડવામાં મદદ કરવા માટે સોફ્ટવેર એપ્લિકેશનમાં ઉપયોગમાં લેવાતા તમામ તૃતીય પક્ષ ઘટકોને શોધવાનો પ્રયાસ કરે છે. ઝાંખી સોફ્ટવેર કમ્પોઝિશન એનાલિસિસ (એસ. સી. એ.) એ માહિતી ટેકનોલોજી અને સોફ્ટવેર એન્જિનિયરિંગના ક્ષેત્રોમાં એમ્બેડેડ ઓપન-સોર્સ સોફ્ટવેરને શોધવા માટે કસ્ટમ-બિલ્ટ સોફ્ટવેર એપ્લિકેશન્સનું વિશ્લેષણ કરવા માટેની પ્રથા છે અને તે શોધી કાઢે છે કે શું તે અપ-ટૂ-ડેટ છે, સુરક્ષા ભૂલો ધરાવે છે અથવા લાઇસન્સિંગ જરૂરિયાતો ધરાવે છે. એસ. સી. એ. ઉત્પાદનો સામાન્ય રીતે નીચે પ્રમાણે કામ કરે છેઃ એન્જિન સોફ્ટવેર સ્રોત કોડ અને સોફ્ટવેર એપ્લિકેશનને સંકલિત કરવા માટે ઉપયોગમાં લેવાતી સંકળાયેલ કલાકૃતિઓને સ્કેન કરે છે. એન્જિન ઓએસએસ ઘટકો અને તેમની આવૃત્તિઓને ઓળખે છે અને સામાન્ય રીતે આ માહિતીને સ્કેન કરેલી એપ્લિકેશનમાં ઉપયોગમાં લેવાતા ઓએસએસની સૂચિ બનાવતા ડેટાબેઝમાં સંગ્રહિત કરે છે. આ સૂચિ પછી દરેક ઘટક માટે જાણીતી સુરક્ષા નબળાઈઓ, ઘટકનો ઉપયોગ કરવા માટેની લાઇસન્સિંગ આવશ્યકતાઓ અને ઘટકની ઐતિહાસિક આવૃત્તિઓનો સંદર્ભ આપતા ડેટાબેઝ સાથે સરખાવવામાં આવે છે. સુરક્ષા નબળાઈની તપાસ માટે, આ સરખામણી સામાન્ય રીતે જાણીતી સુરક્ષા નબળાઈઓ (સીવીઈ) સામે કરવામાં આવે છે જેને રાષ્ટ્રીય નબળાઈ ડેટાબેઝ (એનવીડી) માં ટ્રેક કરવામાં આવે છે. કેટલાક ઉત્પાદનો નબળાઈઓના વધારાના માલિકીના ડેટાબેઝનો ઉપયોગ કરે છે. આઇપી/કાનૂની પાલન માટે, એસસીએ ઉત્પાદનો ઓએસએસ ઘટક માટે ઉપયોગમાં લેવાતા લાઇસન્સિંગના પ્રકારને બહાર કાઢશે અને તેનું મૂલ્યાંકન કરશે. ઘટકોની આવૃત્તિઓ લોકપ્રિય ઓપન સોર્સ રીપોઝીટરીઓ જેમ કે ગિટહબ, માવેન, પી. પી. આઈ., ન્યુગેટ અને અન્ય ઘણા લોકોમાંથી કાઢવામાં આવે છે. પરિણામો પછી વિવિધ ડિજિટલ ફોર્મેટનો ઉપયોગ કરીને અંતિમ વપરાશકર્તાઓ માટે ઉપલબ્ધ કરાવવામાં આવે છે. સામગ્રી અને બંધારણ એસ. સી. એ. ઉત્પાદન પર આધાર રાખે છે અને તેમાં જોખમનું મૂલ્યાંકન અને અર્થઘટન કરવા માટે માર્ગદર્શન અને ખાસ કરીને જ્યારે તે મજબૂત અથવા નબળા કોપીલેફ્ટ લાઇસન્સિંગ જેવા ઓપન સોર્સ ઘટકોની કાનૂની જરૂરિયાતો સાથે સંબંધિત હોય ત્યારે ભલામણો શામેલ હોઈ શકે છે. આઉટપુટમાં સોફ્ટવેર બિલ ઓફ મટિરિયલ્સ (એસ. બી. ઓ. એમ.) પણ હોઈ શકે છે જે સોફ્ટવેર એપ્લિકેશનમાં ઉપયોગમાં લેવાતા તમામ ઓપન સોર્સ ઘટકો અને સંકળાયેલ વિશેષતાઓની વિગતો આપે છે. જેમ એસ. સી. એ. સંસ્થાઓમાં વિવિધ કાર્યોને અસર કરે છે, વિવિધ ટીમો સંસ્થાના કોર્પોરેશનના કદ અને માળખાના આધારે ડેટાનો ઉપયોગ કરી શકે છે. આઇટી વિભાગ ઘણીવાર મુખ્ય માહિતી અધિકારી (સીઆઇઓ), મુખ્ય તકનીકી અધિકારી (સીટીઓ) અને મુખ્ય એન્ટરપ્રાઇઝ આર્કિટેક્ટ્સ (ઇએ) સહિત સામાન્ય હિતધારકો સાથે ટેકનોલોજીના અમલીકરણ અને સંચાલન માટે એસસીએનો ઉપયોગ કરશે. સુરક્ષા અને લાઇસન્સ ડેટાનો ઉપયોગ ઘણીવાર સુરક્ષા જોખમો માટે મુખ્ય માહિતી સુરક્ષા અધિકારીઓ (CISO) અને બૌદ્ધિક સંપત્તિ જોખમ વ્યવસ્થાપન માટે મુખ્ય IP/પાલન અધિકારી જેવી ભૂમિકાઓ દ્વારા થાય છે. એસ. સી. એ. ઉત્પાદન ક્ષમતાઓના આધારે, તે વિકાસકર્તાના સંકલિત વિકાસ પર્યાવરણ (આઇ. ડી. ઇ.) ની અંદર સીધા જ અમલમાં મૂકી શકાય છે જે ઓ. એસ. એસ. ઘટકોનો ઉપયોગ કરે છે અને એકીકૃત કરે છે, અથવા તેને સોફ્ટવેર ગુણવત્તા નિયંત્રણ પ્રક્રિયામાં સમર્પિત પગલા તરીકે અમલમાં મૂકી શકાય છે. એસ. સી. એ. ઉત્પાદનો, અને ખાસ કરીને એસ. બી. ઓ. એમ. પેદા કરવાની તેમની ક્ષમતા યુનાઇટેડ સ્ટેટ્સ જેવા કેટલાક દેશોમાં વિક્રેતા દ્વારા તેમની એક એજન્સીને પહોંચાડવામાં આવતા સોફ્ટવેરની સુરક્ષાને લાગુ કરવા માટે જરૂરી છે. એસ. સી. એ. માટે અન્ય સામાન્ય ઉપયોગનો કેસ ટેક્નોલોજીને કારણે ખંત માટે છે. વિલિનીકરણ અને સંપાદન (એમ એન્ડ એ) વ્યવહાર પહેલાં, સલાહકાર કંપનીઓ લક્ષિત પેઢીના સોફ્ટવેર સાથે સંકળાયેલા જોખમોની સમીક્ષા કરે છે. એસ. સી. એ. ની શક્તિ એસ. સી. એ. ઉત્પાદનોની સ્વચાલિત પ્રકૃતિ તેમની પ્રાથમિક શક્તિ છે. ઓએસએસ ઘટકોનો ઉપયોગ કરતી વખતે અને એકીકૃત કરતી વખતે વિકાસકર્તાઓએ જાતે વધારાનું કામ કરવાની જરૂર નથી. ઓટોમેશન કોડ અને કલાકૃતિઓ એસ. સી. એ. ની નબળાઈઓમાં અન્ય ઓ. એસ. એસ. ઘટકોના પરોક્ષ સંદર્ભોને પણ લાગુ પડે છે તેનાથી વિપરીત, વર્તમાન એસ. સી. એ. ઉત્પાદનોની કેટલીક મુખ્ય નબળાઈઓમાં નીચેનાનો સમાવેશ થઈ શકે છેઃ જટિલ અને શ્રમ-સઘન જમાવટ કે જે સંપૂર્ણ રીતે કાર્યરત થવામાં મહિનાઓ લાગી શકે છે દરેક ઉત્પાદન ઓ. એસ. એસ. ઘટકોના પોતાના માલિકી ડેટાબેઝનો ઉપયોગ કરે છે જે કદ અને કવરેજની દ્રષ્ટિએ નાટ્યાત્મક રીતે બદલાઈ શકે છે એન. વી. ડી. માં સત્તાવાર રીતે નોંધાયેલી નબળાઈઓ પર અહેવાલ આપવા માટે નબળાઈ ડેટાને મર્યાદિત કરે છે (જે નબળાઈની મૂળ શોધ થયાના મહિનાઓ પછી હોઈ શકે છે) એસ. સી. એ. અહેવાલો અને ડેટાના આધારે લેવા માટેની ક્રિયાઓ પર સ્વચાલિત માર્ગદર્શનનો અભાવ ઓ. એસ. એસ. લાઇસન્સની કાનૂની જરૂરિયાતો પર માર્ગદર્શનનો અભાવ જે શોધાય છે તે સુરક્ષા પરીક્ષણ પણ જુઓ ઓપન-સોર્સ સોફ્ટવેર સામાન્ય નબળાઈઓ અને એક્સપોઝર ઓપન-સોર્સ લાઇસન્સ સોફ્ટવેર ઇન્ટેલિજન્સ સંદર્ભ ટેકનોલોજી