સત્ર હાઇજેકિંગ ચાલુ છે: હુમલાખોરો તમારું સત્ર કેવી રીતે ચોરી કરે છે
તે સૈદ્ધાંતિક નથી; તે વાસ્તવિકતામાં થઈ રહ્યું છે pipelines, બિલ્ડ્સ અને બ્રાઉઝર સત્રો. હુમલાખોરો સત્ર હાઇજેક કરવા માટે વિવિધ વાસ્તવિક-દુનિયાની યુક્તિઓનો ઉપયોગ કરે છે, જેમાં શામેલ છે:
- HTTP દ્વારા મોકલવામાં આવેલી કૂકીઝ સુંઘી રહી છે (TLS વગર)
- ઍક્સેસ ટોકન્સ ચોરી કરવા અથવા JWTs લોગમાં સંગ્રહિત
- જૂના પરીક્ષણ વાતાવરણમાંથી ટોકન્સ અથવા કૂકીઝનો ફરીથી ઉપયોગ કરવો
ઉદાહરણ: HTTP પર કૂકી મોકલવામાં આવી
⚠️ચેતવણી: આ ઉદાહરણ અસુરક્ષિત કૂકી ટ્રાન્સમિશન બતાવે છે.
GET /dashboard HTTP/1.1 Host: vulnerable.app Cookie: sessionid=abc123 HTTPS વિના, MITM હુમલાખોર સત્ર ચોરી શકે છે અને વપરાશકર્તાનો ઢોંગ કરી શકે છે.
ઉદાહરણ: લોગમાં ટોકન ખુલ્લું પડ્યું
[INFO] Login succeeded - JWT: eyJhbGciOi... ⚠️ટોકન્સ લોગ કરશો નહીં; CI લોગની ઍક્સેસ ધરાવતા હુમલાખોરો તરત જ સત્ર હાઇજેક કરી શકે છે.
સત્ર હાઇજેકને સક્ષમ કરતી કોડ-લેવલ નિષ્ફળતાઓ
મોટાભાગના સત્ર હાઇજેકિંગ હુમલાઓ શોષણથી શરૂ થતા નથી; તેઓ ખરાબ કોડથી શરૂ થાય છે. અહીં શું દરવાજો ખોલે છે તે છે:
હાર્ડકોડેડ રહસ્યો
const jwtSecret = 'mydevsecret'; ⚠️હાર્ડકોડેડ રહસ્યો ટોકન જનરેશનને અનુમાનિત બનાવે છે.
કૂકીઝ પર સુરક્ષિત ફ્લેગ્સ ખૂટે છે
res.cookie('sessionid', token); ⚠️ના Http ફક્તના, ના સુરક્ષિતના, ના સેમસાઇટ. તે એક સત્ર હાઇજેક થવાની રાહ જોઈ રહ્યું છે.
સુરક્ષિત સંસ્કરણ:
res.cookie('sessionid', token, { httpOnly: true, secure: true, sameSite: 'Strict' }); પર્યાવરણમાં ટોકન પુનઃઉપયોગ
- પરીક્ષણ વાતાવરણમાં બનાવેલા ટોકન્સને સ્ટેજિંગ અથવા તો ઉત્પાદનમાં કોપી કરવામાં આવે છે.
- ટોકન્સ પર કોઈ અવકાશ અથવા પર્યાવરણ બંધન નથી.
- સત્રો સમાપ્ત થતા નથી અથવા ફેરવાતા નથી.
આ બધા દાખલાઓ સીધા હાઇજેકિંગને સક્ષમ બનાવે છે.
CI/CD અને Pipeline જોખમ વધારતા ગાબડા
CI/CD સ્થાનિક કોડમાં વિકાસકર્તાઓ શું ચૂકી જાય છે તે ઘણીવાર વધારે છે. Pipeline-સંબંધિત સત્ર હાઇજેક વેક્ટર્સમાં શામેલ છે:
- લીક અધિકૃતતા બિલ્ડ લોગમાં હેડર્સ
- સ્ટેટિક સત્ર કી સંગ્રહિત છે .env ફાઈલો commitગિટમાં મોકલો
- ટોકનનો પુનઃઉપયોગ વચ્ચે pipeline તબક્કા
વાસ્તવિક જોખમ: CI લોગમાં છાપેલ ટોકન
steps: - run: echo "Token: $LOGIN_TOKEN" ⚠️સત્ર ટોકન્સ ક્યારેય છાપવા કે ઇકો કરવા જોઈએ નહીં.
જોખમી .env હેન્ડલિંગ
APP_KEY=base64:aLongHardcodedKeyHere= ⚠️જો આ ફાઇલ લીક થાય, તો પાછલા બધા સત્રો જોખમમાં મુકાઈ શકે છે.
સત્ર હાઇજેકિંગ ફક્ત એપ્લિકેશન સુધી જ અટકતું નથી; તે આગળ વધે છે pipelines અને પર્યાવરણો.
ડેવલપમેન્ટ વર્કફ્લોમાં બિલ્ટ ઇન સેશન હાઇજેકિંગ નિવારણ
અપહરણ રોકવા માટે, વિકાસ અને વિતરણ કાર્યપ્રવાહમાં નિવારણનો સમાવેશ થવો જોઈએ.
નિવારણ ચેકલિસ્ટ:
- હંમેશા કૂકી ફ્લેગ્સ સેટ કરો: HttpOnly, Secure, અને SameSite
- ટોકન્સ અથવા સત્ર ઓળખકર્તાઓને ક્યારેય લોગ કરશો નહીં.
- બધા વાતાવરણમાં HTTPS નો ઉપયોગ કરો (સ્થાનિક, સ્ટેજીંગ, ઉત્પાદન)
- સત્ર રહસ્યો અને ચાવીઓ નિયમિતપણે ફેરવો
- ખાતરી કરો કે ટોકન્સ ઝડપથી સમાપ્ત થાય છે અને ફરીથી ઉપયોગમાં લઈ શકાતા નથી
- સત્રોને ક્લાયંટ વિશેષતાઓ (IP, વપરાશકર્તા-એજન્ટ) સાથે જોડો.
- પર્યાવરણ દીઠ સ્કોપ ટોકન્સ (પરીક્ષણમાં પ્રોડ ટોકન્સનો ફરીથી ઉપયોગ કરશો નહીં)
- રિફ્રેશ મિકેનિઝમ્સ સાથે ટૂંકા ગાળાના ઍક્સેસ ટોકન્સનો ઉપયોગ કરો
- સોર્સ કોડમાં હાર્ડકોડેડ રહસ્યો અથવા કી ટાળો
- દરમિયાન સત્ર-સંબંધિત બધા તર્ક માન્ય કરો CI/CD pipelines
સલામત CI ઉદાહરણ:
- name: Validate secrets run: | if grep -q 'APP_KEY=' .env; then echo "Unsafe APP_KEY found in .env!" && exit 1 fi સત્ર હાઇજેકિંગ અટકાવવાનો અર્થ એ છે કે CI એ તમારા સંરક્ષણની બીજી હરોળ બનવું જોઈએ.
સ્થાનિક બગથી સપ્લાય ચેઇનના ખતરા સુધી: ઝાયજેની સાથે ડાબી બાજુ ખસેડવું
ખરાબ કૂકી રૂપરેખાંકન તરીકે જે શરૂ થાય છે તે જો અનચેક કરવામાં આવે તો તે સંપૂર્ણ ભંગમાં પરિણમી શકે છે. જેવા સાધનો ઝીગેની શક્ય બનાવો:
- કોડથી ઉત્પાદન સુધી સત્ર ટોકન પ્રવાહ ટ્રેસ કરો
- સ્રોતમાં ખૂટતી કૂકી વિશેષતાઓ શોધો
- રહસ્યો માટે સ્કેન કરો .env, રૂપરેખાંકનો, અથવા લોગ્સ
- તૃતીય-પક્ષ પેકેજોમાં અસુરક્ષિત સત્ર પ્રથાઓનું નિરીક્ષણ કરો
ઝાયજેની સ્થાનિક સત્ર સમસ્યાઓને સપ્લાય ચેઇનમાં હાઇજેકિંગ હુમલાના વેક્ટર બનતા અટકાવવામાં મદદ કરે છે.
હાઇજેકિંગ પર દરવાજો બંધ કરવો
જો તમે તેને સક્રિય રીતે અટકાવી રહ્યા નથી, તો તમે એક દરવાજો ખુલ્લો છોડી રહ્યા છો. દરેક અસુરક્ષિત કૂકી ફ્લેગ, લીક થયેલ ટોકન અને જૂનું સત્ર હુમલાખોરો માટે એક મજબૂત સ્થાન છે.
તમારા કોડબેઝમાં સત્ર હાઇજેકિંગ નિવારણ એમ્બેડ કરો અને CI/CD. પર્યાવરણોમાં સત્ર પ્રવાહનું નિરીક્ષણ કરો. સત્ર હાઇજેક પાથને ઉત્પાદન સુધી પહોંચે તે પહેલાં ડાબી બાજુ ખસેડવા અને રોકવા માટે Xygeni જેવા સાધનોનો ઉપયોગ કરો. સત્ર સુરક્ષિત કરો, નહીંતર હુમલાખોરો તેનો ઉપયોગ તમારી વિરુદ્ધ કરશે.




