AI એ 72 કલાકમાં 300 WordPress પ્લગઈન બગ્સ શોધી કાઢ્યા

AI ઝડપથી બગ્સ શોધી કાઢે છે. તે ઝડપથી કોડ પણ લખે છે. આ પ્લગઈન ડેવલપર્સ માટે એક જોખમી અંતર ઊભું કરે છે.

સિક્યુરિટી રિસર્ચર્સે WordPress ઇકોસિસ્ટમમાં 300 થી વધુ ગંભીર zero-day vulnerabilities શોધવા માટે AI નો ઉપયોગ કર્યો. તેમણે આ કામ માત્ર 72 કલાકમાં કર્યું.

સમસ્યા 'vibe coding' ની છે. આ ત્યારે થાય છે જ્યારે ડેવલપર્સ LLMs દ્વારા જનરેટ કરેલો કોડ રિલિઝ કરે છે જેનું તેઓ ઓડિટ કરી શકતા નથી. આ કારણે એક પ્લગઈનમાં 100 અલગ-અલગ સિક્યુરિટી સમસ્યાઓ હતી.

AI તમારી બે જૂની સુરક્ષા કવચો દૂર કરે છે: સમય અને અસ્પષ્ટતા (obscurity).

હુમલાખોરો હવે છિદ્રો શોધવા માટે AI નો ઉપયોગ કરે છે. ડેવલપર્સ કોડ લખવા માટે AI નો ઉપયોગ કરે છે. કોડમાં ઘણીવાર આ પ્રકારના સિક્યુરિટી સ્ટેપ્સ રહી જાય છે:

  • Escaping data
  • Capability checks
  • Nonce validation

પબ્લિક બગ રિપોર્ટથી લઈને મોટા પાયે એક્સપ્લોઇટેશન (mass exploitation) સુધીનો સમય હવે માત્ર પાંચ કલાકનો છે. આ પ્રતિક્રિયા આપવા માટેનો પૂરતો સમય નથી. આ એક એવી રેસ છે જેમાં તમે હારી જશો.

મેં આ કઠિન અનુભવ દ્વારા શીખ્યું. મેં એક AI ચેટબોટ પ્લગઈન બનાવ્યું હતું. સિક્યુરિટી રિવ્યુમાં મારા કોડમાં 35 બગ્સ મળ્યા હતા. તેમાંથી એક HTML injection હતું.

મેં ભૂલ કરી હતી. મેં AI આઉટપુટ પર વિશ્વાસ કર્યો હતો. મને લાગ્યું કે મોડેલ દ્વારા ટેક્સ્ટ જનરેટ કરવામાં આવી હોવાથી તે સુરક્ષિત છે. પણ તે નહોતું. મોડેલ આઉટપુટમાં યુઝર્સ અને બાહ્ય સાઇટ્સનો ડેટા હોય છે. તમારે તેને અવિશ્વાસપાત્ર (untrusted) તરીકે ગણવું જોઈએ.

મેં મારી કાર્યપદ્ધતિ (workflow) બદલી નાખી. કોડ ચાલે છે એટલે તે સુરક્ષિત છે એવું હું હવે માનું છું નહીં. હું AI દ્વારા લખાયેલા દરેક ભાગનું ત્રણ ક્ષેત્રોમાં મેન્યુઅલી રિવ્યુ કરું છું:

  • Input: ડેટા સિસ્ટમમાં કેવી રીતે પ્રવેશે છે.
  • Output: ડેટા સિસ્ટમમાંથી કેવી રીતે બહાર નીકળે છે.
  • Permissions: કોણ એક્શન કરી શકે છે.

આઉટપુટ સાઇડ પર, હવે હું esc_html અને wp_kses જેવા ફંક્શન્સનો ઉપયોગ કરું છું. હું દરેક ડેટાબેઝ રાઈટ માટે $wpdb->prepare નો ઉપયોગ કરું છું. હું દરેક એન્ટ્રી પોઈન્ટ પર current_user_can સાથે પરમિશન ચેક કરું છું.

સાચું સંકટ માત્ર બગ્સ નથી. તે રિસ્પોન્સ ટાઈમ છે.

  • 52% ડેવલપર્સ બગ પબ્લિક થાય તે પહેલાં પેચ (patch) રિલિઝ કરતા નથી.
  • જાહેર કરાયેલા 46% બગ્સ માટે કોઈ ફિક્સ ઉપલબ્ધ નથી.

મોટાભાગના ડેવલપર્સ સોલો ઓથર્સ (solo authors) છે. તેમને ઝડપથી બગ્સ ફિક્સ કરવા માટે પૈસા મળતા નથી. AI આ અંતરને સ્પષ્ટ કરે છે.

જો તમે પ્લગઈન્સ રિલિઝ કરો છો, તો માત્ર સાવચેતીપૂર્વક લખીને આશા ન રાખો. માની લો કે હુમલાખોરો સેકન્ડોમાં તમારા છિદ્રો શોધી કાઢશે.

આ બચાવના ઉપાયો બનાવો:

  • તમામ ઇનપુટ, આઉટપુટ અને પરમિશનનું મેન્યુઅલી રિવ્યુ કરો.
  • તમામ મોડેલ રિસ્પોન્સને સેનિટાઈઝ (sanitize) કરો.
  • લોકો તમને ખાનગી રીતે બગ્સ રિપોર્ટ કરી શકે તે માટેની વ્યવસ્થા કરો.

તમારી readme ફાઇલમાં એક સાદો સિક્યુરિટી કોન્ટેક્ટ આપવો એ શરૂઆત છે. બગ જાહેર જોખમ બને તે પહેલાં તમારે રિપોર્ટ્સ માટે એક ચેનલની જરૂર છે.

Source: https://dev.to/rapls/ai-found-300-wordpress-plugin-zero-days-in-72-hours-i-build-plugins-heres-what-changed-for-me-43na