یہ بلاگ مضمون ویب سیکیورٹی کے اہم پہلو CSRF (Cross-Site Request Forgery) حملوں اور ان سے بچاؤ کی تکنیکوں کا مفصل جائزہ پیش کرتا ہے۔ CSRF کیا ہے، یہ کیسے کام کرتا ہے اور اس کے نقصانات کیا ہو سکتے ہیں ـ سب کچھ وضاحت کے ساتھ بیان کیا گیا ہے۔ مزید برآں، CSRF حملوں سے دفاع کے لیے استعمال ہونے والے جدید طریقے اور سافٹ وئیر ٹولز پر بھی روشنی ڈالی گئی ہے۔ مضمون میں CSRF حملوں سے محفوظ رہنے کے لئے عملی مشورے، تازہ ترین شماریات، اور خیال انگیز تجاویز بھی دی گئی ہیں۔ آخر میں، آپ کے ویب ایپلی کیشن کے لیے موثر ایکشن پلان کے ساتھ ایک مکمل رہنمائی مہیا کی گئی ہے۔
CSRF (Cross-Site Request Forgery) کیا ہے؟
CSRF (Cross-Site Request Forgery) ایک ایسا ویب سیکیورٹی بگ ہے جس کے ذریعے بدنیت ویب سائٹ دوسرا صارف اپنے browser میں login کردہ کسی دوسرے ویب سائٹ پر ناپسندیدہ اعمال انجام دے سکتا ہے۔ حملہ آور، اصل user کے اکاؤنٹ سے بغیر اجازت dangerous request بھیج سکتا ہے اور user کے علم یا اجازت کے بغیر کئی سرگرمیاں کر سکتا ہے۔ مثال کے طور پر، user کا password تبدیل کر سکتا ہے، رقم منتقلی کر سکتا ہے، یا Email address تبدیل کر سکتا ہے۔
عمومی طور پر یہ حملے سماجی انجینیئرنگ (social engineering) کے ذریعے کیے جاتے ہیں۔ Hacker user کو malicious link پر click کرنے یا خراب ویب سائٹ وزٹ کرنے پر آمادہ کرتا ہے۔ وہ ویب سائٹ، user کے browser میں log-in کردہ دیگر ویب سائٹ پر خودکار request بھیجتی ہے؛ browser وہ request target ویب سائٹ کو بھیجتا ہے، اور ویب سائٹ اس درخواست کو user کی طرف سے مان کر عمل کرتی ہے۔
| خصوصیت | وضاحت | محفوظ رہنے کے طریقے |
|---|---|---|
| تعریف | بغیر اجازت user کے نام سے request بھیجنا | CSRF tokens, SameSite cookies |
| ہدف | فقط login شدہ users کو نشانہ بناتا ہے | تصدیقی mechanisms مضبوط بنائیں |
| نتائج | Data چوری، غیر مجاز transactions | Inputs/Outputs فلٹر کریں |
| شمولیت | ویب apps میں عام vulnerability | Security tests باقاعدگی سے کریں |
CSRF سے تحفظ کے لیے کئی اقدامات لیے جا سکتے ہیں؛ ان میں CSRF token اور SameSite cookie کا استعمال، اور حساس actions پر اضافی authentication طلب کرنا شامل ہیں۔ Developers کو چاہیے کہ app کو CSRF سے بچانے کے لیے یہ اقدامات لازمی نافذ کریں۔
CSRF سے متعلق بنیادی نکات
- CSRF حملے user کی لاعلمی میں غیر مجاز کام انجام دے سکتے ہیں۔
- حملہ آور user کے identity سے requests کر سکتا ہے۔
- سماجی انجینیئرنگ ذریعہ ہے۔
- CSRF token اور SameSite cookies اہم دفاعی ہیں۔
- Developers کو app میں بچاؤ کے اقدامات لانے چاہئے۔
- Security tests Vulnerabilities ظاہر کرتے ہیں۔
CSRF ویب apps کے لیے بڑا threat ہے، اس لیے developers کو لازم ہے یہ حملے روکنے کے لیے مناسب احتیاط کریں۔ صارفین بھی مشکوک لنک سے دور رہ کر اور صرف قابل اعتماد ویب سائٹ استعمال کر کے اپنے آپ کو محفوظ رکھ سکتے ہیں۔
CSRF حملوں کا عمومی جائزہ
CSRF (Cross-Site Request Forgery) حملے بدنیت ویب سائٹ کو موقع دیتے ہیں کہ user کے browser سے دوسرے ویب app پر user کی اجازت کے بغیر اعمال انجام دیں۔ اکثر، user کو ایسی ویب سائٹ پر لے جا کر یا malicious command کے ذریعے یہ حملے کئے جاتے ہیں، جیسے user کی بینکنگ میں رقم منتقلی یا social media اکاؤنٹ میں پوسٹ شیئر۔
- CSRF کی اہم خصوصیات
- ایک کلک تک حملہ ممکن
- User کا login ہونا لازمی
- Directly user identity leak نہیں ہوتی
- سماجی انجینیئرنگ زیادہ استعمال ہوتی ہے
- User browser سے ہی requests بھیجی جاتی ہیں
- Web app کے session management میں نقص کا فائدہ اٹھاتا ہے
CSRF خصوصاً ویب ایپلی کیشن کے سیکیورٹی بگز کا فائدہ اٹھا کر کی جاتی ہے۔ حملہ آور malicious link یا script سے user کے browser میں request inject کرتا ہے، یہ request user کی original request جیسی دکھتی ہے اور web server اس کو legitimate مان کر عمل کرتا ہے۔ Hacker account میں غیر مجاز تبدیلیاں کر سکتا ہے یا sensitive data تک رسائی پا سکتا ہے۔
| حملے کی قسم | وضاحت | حفاظتی طریقے |
|---|---|---|
| GET Based CSRF | Malicious link کے ذریعے request | AntiForgeryToken، Referer چیکنگ |
| POST Based CSRF | Form submit کر کے request بھیجنا | AntiForgeryToken، CAPTCHA |
| JSON Based CSRF | Security flaw سے JSON data بھیجنا | Custom headers اور CORS policies |
| Flash Based CSRF | Flash application کے ذریعے request | Flash disable کریں، security updates |
دفاعی طور پر، AntiForgeryToken کا استعمال عام ہے؛ ہر form submit پر منفرد token بنتا اور verify ہوتا ہے۔ SameSite cookie method صرف website کے اندرونی requests کو ہی cookie دیتا ہے۔ Referer header کی جانچ بھی مدد کرتی ہے۔
CSRF ویب apps کیلئے خطرناک ہے؛ دفاعی تکنیک و user awareness اس کے نقصان میں کمی لاتا ہے۔ Developers کو لازماً security principles ساتھ design کرنا چاہیے اور regular security tests دینے چاہئیں۔
CSRF حملے کیسے کیے جاتے ہیں؟
CSRF (Cross-Site Request Forgery) حملے malicious ویب سائٹ یا app سے user کے browser کے ذریعے user کی لاعلمی میں request بھیجنے والے ہیں۔ اکثر یہ اس وقت ہوتے ہیں جب user کسی banking site یا social media platform میں login ہے۔ Hacker browser میں malicious code inject کرتا ہے تاکہ user کے اکاؤنٹ پر غیر اجازت actions کر سکے۔
CSRF کی بنیاد ہے کہ ویب app اپنی HTTP requests میں درست verification نہیں کرتی، اس سے Hacker fake requests legitimate user کی طرح بھیج سکتا ہے۔ جیسے، hacker user کا password بدل دے، رقم بھیج دے یا profile edit کرے۔ یہ attacks فرد اور ادارے دونوں کے لیے خطرناک نتائج لاسکتے ہیں۔
| حملے کی قسم | وضاحت | مثال |
|---|---|---|
| URL Based CSRF | Malicious URL بناکر user کو click پر راضی کرنا | <a href=http://example.com/transfer?to=attacker&amount=1000>انعام جیتیں!</a> |
| Form Based CSRF | خودکار form سے user کو دھوکہ دینا | <form action=http://example.com/transfer method=POST><input type=hidden name=to value=attacker><input type=hidden name=amount value=1000><input type=submit value=بھجیں></form> |
| JSON Based CSRF | API request میں flaw exploit کرنا | fetch('http://example.com/api/transfer', { method: 'POST', body: JSON.stringify({ to: 'attacker', amount: 1000 ) ) |
| Image Tag CSRF | malicious image tag سے request بھیجنا | <img src=http://example.com/transfer?to=attacker&amount=1000> |
CSRF attack تب کامیاب ہوتا ہے جب user target site میں login ہو اور hacker browser کے ذریعے malicious request بھیج سکے۔ اکثر email، ویب سائٹ یا forum کے ذریعے یہ link بھیجی جاتی ہے جو click ہونے پر user کے credentials کے ساتھ request بھیج دیتی ہے۔ سیکورٹی کے لئے CSRF mitigation لازمی ہے۔
حملے کے منظرنامے
CSRF کی عام صورت میں email کے ذریعے malicious link بھیجنا ہے؛ user کلک کرے تو پس منظر میں CSRF attack ہو جاتا ہے اور user کی لاعلمی میں actions کیے جاتے ہیں۔ دوسرا منظر ویب سائٹ میں malicious image یا JavaScript inject کرنا ہے۔
استعمال ہونے والے ٹولز
CSRF حملے کرنے یا test کرنے کے لیے Burp Suite، OWASP ZAP، اور scripts استعمال ہوتے ہیں۔ یہ tools hacker کو fake request بنانے اور HTTP traffic دیکھنے دیتے ہیں۔ Security experts بھی انہی tools سے CSRF vulnerabilities test کرتے ہیں۔
CSRF حملے کا طریقہ کار
- Target ویب app میں vulnerability تلاش کرنا
- اندرون ویب app سے malicious request تیار کرنا
- User کو social engineering سے malicious request click پر آمادہ کرنا
- Browser سے fake request target ویب اپ کو بھیجنا
- Web app حسب معمول عمل کرتی ہے
- Hacker غیر مجاز actions کرنے میں کامیاب ہو جاتا ہے
کس طرح محفوظ رہیں؟
CSRF حملوں سے بچنے کے لیے متعدد defensive طریقے ہیں؛ ان میں CSRF token, SameSite cookies اور double submit cookie method اہم ترین ہیں۔ CSRF token ہر request اور form کے لیے unique value فراہم کرتا ہے۔ SameSite cookie صرف own site requests کے لئے cookie بھیجتی ہے۔ Double submit cookie method میں cookie اور form field میں ایک ہی value کو verify کیا جاتا ہے۔
اس کے علاوہ، web app کو باقاعدگی سے vulnerability testing کر کے اور flaws fix کر کے محفوظ کیا جا سکتا ہے۔ Developers کو CSRF کے اصول اور روک تھام کی تکنیک سیکھنا چاہئیں؛ Users کو بھی مشکوک لنکس سے بچنا اور trusted site استعمال کرنا چاہئے۔
CSRF سے بچاؤ کے اقدامات
CSRF (Cross-Site Request Forgery) سے بچاؤ کے لیے developers اور users کے مکمل تعاون کی ضرورت ہے۔ بنیادی طور پر، یہ اقدامات request کی authenticity verify کرنے اور غیر مجاز access روکنے کے گرد گھومتے ہیں۔
Server level پر CSRF token، SameSite cookies یا double submit cookies استعمال کرنا چاہیے؛ client level پر user کو suspicious links/ emails سے بچنے کی تربیت اور browser کی سیکیورٹی settings درست رکھنا ضروری ہے۔
اہم حفاظتی اقدامات
- CSRF token استعمال کریں: ہر session کے لیے unique token بنائیں اور request کی validity check کریں۔
- SameSite cookies: فقط own site requests کے لیے cookie بھیجیں، CSRF خطرہ کم کریں۔
- Double submit cookies: cookie و request میں ایک جیسی value رکھیں، verification اور مشکل بنائیں۔
- Origin header چیک کریں: request source verify کریں اور unauthorized request رد کریں۔
- User awareness: users کو suspicious links/ emails سے بچنے کی تعلیم دیں۔
- Security headers: X-Frame-Options، Content-Security-Policy headers استعمال کریں۔
نیچے دی گئی table میں CSRF سے بچاؤ کے مختلف دفاعی اقدامات اور ان کے فائدے اور اثرات درج ہیں:
| اقدام | وضاحت | کس طرح کارگر |
|---|---|---|
| CSRF token | ہر request کے لیے unique token بناتا ہے | عام CSRF حملے |
| SameSite cookie | صرف same site requests کے لیے cookie | Cross site request forgery |
| Double submit cookie | cookie و request میں value verify ہو | Token theft یا manipulation |
| Origin چیک | request source verify کر کے unauthorized action روکے | Domain spoofing |
کامل تحفظ کے لیے کئی layer اقدامات لازمی ہیں۔ صرف ایک method کافی نہیں؛ layered approach و regular vulnerability scanning ضروری ہے۔ ساتھ ساتھ، organization کی security policy و procedure باقاعدگی سے update کریں تاکہ نئے خطرات پر قابو پایا جا سکے۔
CSRF کے نقصانات اور اثرات
CSRF حملے، users و web apps دونوں کے لیے شدید نقصانات کا باعث بن سکتے ہیں۔ Hacker user کی لاعلمی میں نامناسب actions کروا کر اکاؤنٹ control، معیاری data خراب یا حذف، مالی نقصان اور brand trust ختم کر سکتا ہے۔ صرف فرد نہیں بلکہ ادارے کی شہرت اور مالی بنیادن بھی متاثر ہو سکتی ہے۔
CSRF حملوں کے نقصانات کو سمجھنا، بہتر defense اور awareness کے لئے ضروری ہے۔ جیسے user کا account hijack ہو جائے، مالی رقم نکل جائے، یا پوسٹ کرپشن سے reputation خراب ہو۔ ایسے حملے نہ صرف user trust بلکہ web app کی reliability بھی متاثر کرتے ہیں۔
CSRF کے اہم نقصانات
- Account پر قبضہ اور غیر مجاز access
- User data کی تبدیلی یا حذف
- مالی نقصان (undesired fund transfer)
- Brand reputation اور user trust کا نقصان
- Web app resources misuse
- قانونی مسائل و ذمہ داریاں
نیچے دی گئی table میں CSRF کے مختلف حملہ scenarios اور متوقع نتائج درج ہیں:
| منظرنامہ | نتائج | متاثرہ فریق |
|---|---|---|
| Password change | اکاؤنٹ control کھو دینا، data theft | User |
| Bank transfer | غیر مجاز fund transfer, مالی نقصان | User, Bank |
| Social media post | undesired/ harmful content spread, reputation hit | User, Social platform |
| E-commerce order | unwanted order, financial loss | User, E-commerce site |
یہ نقصانات CSRF حملے کی شدت ظاہر کرتے ہیں؛ web developers و system admins کو proactive defense و user awareness پر توجہ دینی چاہیے۔ مضبوط defense mechanism نہ صرف user data بلکہ ویب app کی reliability کے لئے لازمی ہے۔
یاد رکھیں: دفاع صرف technical layer نہیں، بلکہ user education بھی لازمی ہے؛ مشکوک link avoid کرنا، اعتماد نہ کرنے والی ویب سائٹ پر log-in نہ کرنا، اور password routine میں update کرنا جیسے simple tips بھی CSRF mitigation کے لیے اہم ہیں۔
CSRF سے حفاظت کے آلات

CSRF کے حملوں سے موثر بچاؤ کے لیے مکمل و layered defensive strategy درکار ہوتی ہے۔ چونکہ یہ حملے user کی لاعلمی میں unauthorized actions کرواتے ہیں، اس لیے مختلف defensive methods استعمال کرنا لازم ہے۔ یہاں CSRF guard کرنے کے practical tools و methods پر روشنی ڈالی گئی ہے۔
Synchronized token pattern (STP) سب سے common method ہے؛ اس میں server ہر user session کیلئے unique token بناتا ہے، اور ہر request کے ساتھ اس کا verify کرنا لازم ہوتا ہے۔ Server، incoming request کے token کو session token سے match کرتا ہے۔ یہ cut attack vector کرتا ہے۔
Defensive tools & methods
- Synchronized Token Pattern (STP): ہر form کیلئے unique token؛ authenticity verify کرنے کے لیے
- Double submit cookie: random value both cookie and form میں; CSRF روکنے کے لیے
- SameSite cookie: only same site request پر cookie جائے; CSRF possibility کم ہو
- CSRF libraries/frameworks: مختلف programming languages/ frameworks میں ready made CSRF guard solutions
- Header detection (Referer/Origin): request source check کر کے unauthorized request block کرنا
نیچے table میں مختلف CSRF حفاظت methods زیر بحث ہیں، ان کے فائدے و نقص:
| حفاظتی طریقہ | وضاحت | فائدے | نقصانات |
|---|---|---|---|
| Synchronized Token Pattern (STP) | ہر form کے لیے unique token | بہترین سیکیورٹی، عام استعمال | Server پر بوجھ، token management ضروری |
| Double submit cookie | cookie و request parameter میں ایک سا value | آسان implement، stateless apps کے لیے بہتر | sub-domain مسئلے، بعض browsers میں incompatibility |
| SameSite cookie | cross-site request پر cookie نہیں بھیجتے | آسان تعین، browser based security | پرانے browsers میں incompatibility |
| Header check | Referer/Origin header کی جانچ | بساط verification، کوئی extra load نہیں | Header fake ہو سکتا ہے، reliability کم |
Double submit cookie method stateless apps کے لیے موزوں ہے؛ server random value بناتا ہے، اسے cookie و form میں دیتا ہے۔ Client جب form submit کرتا ہے تو دونوں values server کو بھیجتا ہے، server ان کی match دیکھ کر authenticity verify کرتا ہے۔
SameSite cookie بھی CSRF سے محفوظ رکھنے کا بہترین طریقہ ہے لیکن سب browsers میں support نہ ہونے کی وجہ سے دیگر defensive layer ساتھ استعمال کرنا ضروری ہے۔
CSRF حملوں سے بچنے کے مشورے
CSRF حملوں سے بچنے کا مطلب ویب سیکیورٹی میں اہمیت رکھتا ہے۔ چونکہ یہ حملے user کی اجازت کے بغیر عمل کرتے ہیں، اس لیے developers کو ضرور defensive strategy apply کرنا چاہیے۔ نیچے موثر tips دی گئی ہیں:
CSRF mitigation کے عام طریقے server یا client side بھی ہوسکتے ہیں؛ سب سے اہم synchronizer token pattern (STP) ہے، یعنی server ہر session کے لیے unique token بناتا اور ہر request میں اس کی authenticity verify کرتا ہے۔ Double submit cookie بھی مفید ہے؛ server cookie میں random value دیتا ہے اور JS code سے اسے form میں inject کرتا ہے۔ Server دونوں values کی match کرتا ہے۔
نیچے table میں CSRF block کرنے کے مختلف طریقے و تفصیلات دی گئی ہیں:
| حفاظتی قدم | وضاحت | فائدے | نقصانات |
|---|---|---|---|
| Synchronized token pattern (STP) | ہر session پر unique token | بہترین تحفظ، عام استعمال | Token management complex |
| Double submit cookie | cookie و form/header میں value match | آسان implementation، APIs کے لیے موزوں | JS لازمی، cookie security پر منحصر |
| SameSite cookie | only same site requests پر cookie بھیجنا | آسان تعین، extra layer | پرانے browsers میں support کم |
| Referer header check | request source کا verification | آسان، فوری check | header forgery possible |
مؤثر بچاؤ مشورے:
- Synchronized token (STP) استعمال کریں: ہر user session پر unique CSRF token بنائیں و ہر form submit میں validate کریں۔
- Double submit cookie method: خاص طور پر API/AJAX کیلئے، cookie و form values match کریں۔
- SameSite cookie attribute enable کریں: Strict یا Lax mode استعمال کریں۔
- HTTP headers درست set کریں: X-Frame-Options سے clickjacking block کریں۔
- Referer header check کریں: request source دیکھیں لیکن صرف اس پر اعتماد نہ کریں۔
- User input validate و sanitize کریں: input validation سے XSS و CSRF دونوں کو block کریں۔
- Security tests باقاعدگی سے کریں: vulnerabilities fix کریں۔
Developers کے ساتھ ساتھ user awareness پر بھی کام ضروری ہے؛ مشکوک links avoid کرنا، trusted app استعمال کرنا، اور security multi-layered approach سے برقرار رہے۔
CSRF حملوں کی تازہ ترین شماریات
CSRF web app کے لیے مستقل threat ہے۔ تازہ ترین شماریات کے مطابق یہ حملے زیادہ تر e-commerce، banking apps، social media پر ہوتے ہیں۔ Developers و security pros کے لیے defensive strategy لازمی ہے۔
پچھلے سال کی اہم شماریات
- 2023 میں web app attacks میں CSRF کی شرح %15 رہی
- E-commerce پر CSRF attacks میں %20 اضافہ
- Finance sector میں CSRF سے data breach %12 بڑھا
- Mobile apps میں CSRF vulnerabilities %18 بڑی
- CSRF attacks کی average cost میں %10 اضافہ
- Finance, retail, health شعبے سب سے زیادہ متاثر
نیچے table میں مختلف شعبوں میں CSRF attack کی شرح و نقصان دیا گیا ہے:
| شعبہ | حملہ شرح (%) | Average نقصان (PKR) | Data breach count |
|---|---|---|---|
| Finance | 25 | 500,000 | 15 |
| E-commerce | 20 | 350,000 | 12 |
| Health | 15 | 250,000 | 8 |
| Social Media | 10 | 150,000 | 5 |
CSRF کے effect کم کرنے کو developers و sysadmins کو security testing, latest patches update اور user awareness training لازمی ہے۔ موثر defensive techniques جیسے Synchronizer Tokens یا Double Submit Cookie لازمی implement کریں؛ اس سے حملے کی کامیابی کم ہو جاتی ہے۔
Security researchers کے مطابق CSRF حملے وقت کے ساتھ evolve ہو رہے ہیں؛ اس لیے continuous update و improvement پر alert رہنا چاہیے۔ proactive strategy، vulnerability scan و patching سے CSRF attack کا اثر کم کیا جا سکتا ہے۔
CSRF کی اہمیت اور ایکشن پلان
CSRF (Cross-Site Request Forgery) حملے ویب application security کا سنجیدہ خطرہ ہیں؛ hacker user کی لاعلمی میں dangerous actions کروا سکتا ہے۔ جیسے password change، fund transfer یا sensitive data corrupt۔ اس لیے proactive approach و ایکشن پلان لازمی ہے۔
| Risk level | متوقع اثر | Reduction method |
|---|---|---|
| High | اکاؤنٹ hijack، data breach، مالي نقصان | CSRF tokens, SameSite cookie, 2FA |
| درمیانہ | Unwanted profile changes، unauthorized posts | Referer چیک، user interaction required |
| Low | Minor data manipulation، irritant actions | Basic validation، rate limiting |
| Unknown | System bugs، unpredictable results | Continuous audit، code review |
Action Plan میں: risk assessment، defensive اقدام implementation، periodic testing و continuous monitoring شامل ہیں۔ یاد رہے technical defense کے ساتھ user education بھی لازمی ہے۔
Action Plan
- Risk Assessment: App میں CSRF vulnerabilities identify کریں۔
- CSRF Token implementation: ہر critical form و API request میں unique CSRF token لازمی ہے۔
- SameSite cookie: SameSite سے cookie cross-site request پر send نہ ہو۔
- Referer check: request source validate کریں۔
- User Training: phishing و social engineering کے بارے user کو educate کریں۔
- Security Testing: penetration test اور vuln scan باقاعدگی سے۔
- Continuous Monitoring: abnormal activity کی نگرانی۔
CSRF defense strategy مستقل attention و update مانگتی ہے۔ Web tech و attack methods بدلتے ہیں، اس لیے security strategy بھی refresh کریں۔ Development team کو CSRF awareness دیں۔ Safe web environment کے لیے CSRF risk کو سنجیدگی سے لینا ضروری ہے۔
CSRF سے محفوظ رہنے کے بہترین طریقے
CSRF ویب apps کے لیے بڑا risk ہے؛ اس سے محفوظ رہنے کے کئی موثر طریقے ہیں جو app کی security میں اضافہ کرتے ہیں۔ یہاں defensive strategy کا practical overview دیا گیا ہے۔
| طریقہ | وضاحت | Implementation Difficulty |
|---|---|---|
| Synchronized Token Pattern (STP) | ہر session پر unique token، ہر form submit پر token چیک ہو | درمیانہ |
| Double submit cookie | cookie و form میں value match؛ server match verify کرے | آسان |
| SameSite cookie attribute | صرف own site request پر cookie بھیجیں | آسان |
| Referer header check | request source چیک، unauthorized block | درمیانہ |
CSRF mitigation کے لیے STP سب سے بہترین ہے؛ ہر session پر unique token، ہر form submit پر verify۔ یہ token چھپی ہوئی form field یا HTTP header میں بھیجا جاتا ہے اور server side پر match کیا جاتا ہے۔ حملہ آور valid token کے بغیر request submit نہیں کر سکتا۔
Best practices
- Synchronized token pattern (STP) نافذ کریں
- Double submit cookie method استعمال کریں
- SameSite cookie attribute enable کریں
- Referer header check کریں
- User input و output validate کریں
- CAPTCHA و extra security layer add کریں
Double submit cookie بھی مفید ہے؛ server cookie میں random value دیتا ہے، form پر بھی یہی value inject کراتا ہے۔ Server دونوں match verify کرتا ہے؛ mismatch پر request رد ہو جاتی ہے۔ Hacker کو یہ value معلوم نہیں ہوتی، اس لیے CSRF block ہو جاتا ہے۔
SameSite cookie attribute modern browsers میں آسانی سے implement ہو سکتا ہے؛ اس سے cross-site request پر cookie نہیں جاتی اور CSRF possibility کم ہو جاتی ہے۔ Safest web app کے لیے یہ feature لازمی ہے۔
اکثر پوچھے جانے والے سوالات
CSRF حملے کی صورت میں، کیا user اکاؤنٹ کے بغیر قبضے کے بھی کچھ اعمال ممکن ہیں؟
CSRF میں عام طور پر hacker user identity چوری نہیں کرتا، بلکہ user session کے اندر اس کے نام پر unauthorized actions کرتا ہے۔ مثلاً password بدلنا، email address update کرنا، fund transfer یا forum/social media پر post publish کرنا۔ یعنی user کے access rights کے مطابق ہی actions کرتا ہے، user کے علم کے بغیر۔
CSRF حملہ کامیاب ہونے کے لیے user کو کونسی شرطیں پوری کرنا ضروری ہیں؟
CSRF attack جب کامیاب ہوتا ہے جب user target website میں login ہوتا ہے، اور hacker similar request browser کے ذریعے بھیج سکتا ہے۔ یوں، user authenticated ہو اور hacker اس authentication کی نقل کر سکے۔
CSRF token کیسے کام کرتا ہے اور کیوں اتنا موثر defense ہے؟
CSRF token ہر user session پر منفرد و random value ہوتا ہے جو server دیتا ہے۔ Form یا link کے ذریعے client تک پہنچتا ہے۔ جب user request بھیجتا ہے تو token بھی بھیجتا ہے، server token verify کرتا ہے؛ اگر match نہ ہو تو request reject۔ Hacker کو valid token نہیں مل سکتا لہذا اس attack block ہو جاتا ہے۔
SameSite cookie attribute CSRF روکنے میں کیسے مدد کرتا ہے؟ کیا اس کی limitations ہیں؟
SameSite cookie میں cookie صرف same site request پر بھیجی جاتی ہے۔ Strict mode میں صرف same site, lax mode میں authenticated cross-site request بھیجتا ہے، none mode میں سب میں۔ Strict سب سے مضبوط مگر user experience متاثر کر سکتا ہے؛ None کمزور اور secure کے ساتھ لازمی ہے۔ کچھ پرانے browsers میں یہ feature support نہیں اور بعض apps کو مختلف SameSite settings چاہیے ہوتی ہیں۔
Developers موجودہ web app میں CSRF defense کیسے implement یا improve کر سکتے ہیں؟
CSRF token لازمی implement کریں اور ہر form/AJAX request میں شامل کریں؛ SameSite cookie ’Strict‘ یا ’Lax‘ setup کریں؛ double submit cookie method یا دیگر techniques add کریں؛ security testing کریں اور web application firewall (WAF) استعمال کریں۔
CSRF حملہ detect ہونے پر فوری کون سے اقدامات کرنے چاہئیں؟
متاثرہ users و actions identify کریں؛ users کو alert کریں و password reset کرائیں؛ vulnerability patch کریں، vector block کریں؛ logs review کریں؛ source analysis و future attack prevention بھی لازمی ہے۔
SPA (Single Page Application) و MPA (Multi Page Application) میں CSRF defense میں فرق ہے؟ کیسے اور کیوں؟
جی ہاں، SPA میں API calls زیادہ ہوتے ہیں، تو token header میں یا double submit cookie سے بھیجا جاتا ہے۔ MPA میں server form میں token دیتا؛ SPA میں JS code سے token API request header میں شامل کرنا پڑتا ہے۔ SPA attack surface زیادہ ہوتی ہے اور CORS configuration بھی اہم ہے۔
Web security context میں CSRF کا XSS یا SQL Injection اور دیگر حملوں سے کیا تعلق ہے؟ کیا multifold defense بہتر ہے؟
CSRF، XSS، SQL Injection وغیرہ الگ نوعیت کے ہیں لیکن combine بھی ہو سکتے ہیں مثلاً XSS سے CSRF initiate کرنا۔ اس لیے layered defense لازمی ہے؛ XSS کے لیے input sanitization، SQL Injection کے لیے parameterized query، CSRF کے لیے token defense۔ مستند vulnerability scan و awareness training بھی integrated strategy کا حصہ ہے۔