ให้เรตสมาชิก: 1 / 5

ดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

มาทำความรู้จัก Cross Site Request Forgery (CSRF) เพื่อเพิ่มความปลอดภัยกับเว็บไซต์

การโจมตีเว็บสามารถถูกโจมตีจากช่องโหว่เช่น Buffer Overflow (บัฟเฟอร โอเวอฟลาว) ได้เช่นเดียวกันกับ Software (ซอฟต์แวร์) ทุกตัวในโลก แต่ช่องโหว่นั้น นับตั้งแต่ Bug (บั๊ก) ที่เปิดให้ผู้ใช้อัพโหลดสคริปต์ขึ้นไปรันบนเว็บได้ด้วยตัวเอง ไปจนถึงการตรวจสอบสิทธิผู้ใช้ด้วยยูอาร์แอลเพียงอย่างเดียว ทำให้เมื่อผู้ใช้แชร์ url (ยูอาร์แอล) ไป เกิดเหตุการณ์ข้อมูลส่วนตัวรั่วไปได้อย่างง่ายดาย

Cross Site Request Forgery (CSRF)
Cross Site Request Forgery (CSRF)

การโจมตีแบบ Cross-site Request Forgery หรือ CSRF เป็นเทคนิคการโจมตีเว็บไซต์ที่แฮ็คเกอร์นิยมใช้มากขึ้นเรื่อยๆ ซึ่งเป็นการโจมตีที่ใช้ประโยชน์จากความเชื่อของเว็บไซต์ที่มีต่อข้อมูล Input และเบราเซอร์จากผู้ใช้งาน คือ เหยื่อจะถูกหลอกให้กระทำการบางอย่างบนเว็บไซต์ปกติทั่วไป ที่ก่อให้เกิดประโยชน์ต่อแฮ็คเกอร์ในนามของตัวเหยื่อเอง โดยที่ตัวเหยื่อไม่ต้องการกระทำหรือกระทำไปโดยไม่รู้ตัว

หลักการโจมตี

  1. ผู้ใช้งาน login เพื่อทำซื่อขายสินค้า
  2. server ตอบกลับว่า login สำเร็จ
  3. ผู้ใช้งาน ทำการเข้าเว็บไซต์ www.kayride.com
  4. www.kayride.com ทำการสร้าง link ที่ใช้ในการโอนเงิน ส่งไปให้กับเว็บเบราเซอร์ของ user
  5. ว็บเบราเซอร์ทำการ redirect ไปตาม link ที่ www.kayride.com ส่งมา www.ธนาคาร.com ทำการโอนเงินไปให้กับ kayride เนื่องจากเป็น request ที่ถูกส่งมาจาก user ที่ทำการ login อยู่ในระบบแล้ว (ขั้นตอนนี้ แฮกเกอร์ สามารถขโมบเงินจากธนาคารของ ผู้ใช้เท่าไรก็ได้)

ในขั้นตอนของการ redirect kayride เทคนิคที่ใช้ <img> tag ดังตัวอย่างด้านล่าง

<img src="http://www.somebank.com?send_money_to=kayride_account&amount=10000000></img>

YouTube: ก็เคยถูกโจมตีด้วย CSRF เช่นกัน จากยูอาร์แอลของการเพิ่มวิดีโอเข้า playlist ที่ไม่มีการตรวจสอบล่วงหน้า และมี playlist พิเศษที่ทำให้ชื่อเป็น add_to_favorite ทำให้แฮกเกอร์สามารถเพิ่มวิดีโอที่ต้องการโปรโมทเข้าไปยังผู้ใช้ทุกคนได้

แนวทางการในการป้องกัน CSRF

CSRF มีสาเหตุหลักมาจากการที่เว็บไม่ได้ทำการตรวจสอบว่า request ที่ถูกส่งมาจากผู้ใช้งานนั้นถูกส่งมาจากผู้ใช้งานจริงโดยตั้งใจหรือไม่ ดังนั้น แนวทางในการป้องกัน CSRF ประกอบไปด้วย 3 วิธีหลัก ๆ ได้แก่

  1. Synchronizer Token Pattern
  2. HTTP referer header
  3. Re-authentication & CAPTCHA
CSRF
CSRF

 

Cross-site Request Forgery (CSRF) เป็นช่องโหว่ที่เกิดจากการที่ผู้ไม่หวังดีทำการสั่งให้เว็บเบราเซอร์ของเหยื่อส่งคำสั่งไปให้กับเว็บแอปพลิเคชัน CSRF สามารถสร้างผลกระทบต่อผู้ใช้งานอย่างร้ายแรง เช่น การโอนเงินจากบัญชีผู้ใช้งานไปยังบัญชีอื่นโดยที่ผู้ใช้งานไม่ได้ยินยอม แนวทางการป้องกัน CSRF ที่ดีที่สุด คือการใช้ Synchronizer Token Pattern ปัจจุบัน

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
อย่าได้พลาดเชียว
โดย noppadonsk จ 17 ก.พ. 2020 10:52 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
80
จ 17 ก.พ. 2020 10:52 am โดย noppadonsk
วิธีการแก้ไขปํญหา undefined index กรณีกำหนดเงือนไขเทียบค่าอาร์เรย์
โดย Ittichai_chupol ศ 14 ก.พ. 2020 5:50 pm บอร์ด PHP Knowledge
0
274
ศ 14 ก.พ. 2020 5:50 pm โดย Ittichai_chupol
เรื่องน่าเศร้า
โดย noppadonsk ศ 14 ก.พ. 2020 10:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
186
ศ 14 ก.พ. 2020 10:19 am โดย noppadonsk
อยากทรบวิธีจัดการไม่ให้สมาชิกที่อยู่ในกลุ่มที่กำหนดมาส่องโพสต์ของผู้อื่นได้
โดย Ittichai_chupol พฤ 13 ก.พ. 2020 3:22 pm บอร์ด Programming - PHP
3
334
พฤ 13 ก.พ. 2020 5:31 pm โดย thatsawan
กลับไปเริ่มใหม่
โดย noppadonsk พฤ 13 ก.พ. 2020 10:57 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
140
พฤ 13 ก.พ. 2020 10:57 am โดย noppadonsk
อยากทราบการเอาเลขมาคุณในช่อง 10อัน แล้วมาแล้วผลข้างล่างครับ
โดย comopal พ 12 ก.พ. 2020 6:49 pm บอร์ด Programming - PHP
1
381
พฤ 13 ก.พ. 2020 9:39 am โดย LEG
ต้องรีบเดี๋ยวลืม
โดย noppadonsk พ 12 ก.พ. 2020 10:56 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
162
พ 12 ก.พ. 2020 10:56 am โดย noppadonsk
วิธีการเลือกงาน
โดย jataz2 พ 12 ก.พ. 2020 9:47 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
167
พ 12 ก.พ. 2020 9:47 am โดย jataz2
วิธีการไปสัมภาษณ์งาน
โดย jataz2 พ 12 ก.พ. 2020 9:25 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
167
พ 12 ก.พ. 2020 9:25 am โดย jataz2
วิธีการ insert ข้อมูลในขั้นตอนติดตั้ง Extension phpbb
โดย Ittichai_chupol อ 11 ก.พ. 2020 5:55 pm บอร์ด PHP Knowledge
1
409
อ 11 ก.พ. 2020 6:01 pm โดย thatsawan
visual studio 2008 crystal reports viewer มี ในToolbox แต่ใช้งานไม่ได้
โดย d.direk อ 11 ก.พ. 2020 2:33 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
246
อ 11 ก.พ. 2020 2:33 pm โดย d.direk
การเดินทางจากปลวกแดง (ระยอง)- กรุงเทพฯ
โดย panudda อ 11 ก.พ. 2020 12:07 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
112
อ 11 ก.พ. 2020 12:07 pm โดย panudda
จะหยามกันเกินไปแล้ว
โดย noppadonsk อ 11 ก.พ. 2020 11:19 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
125
อ 11 ก.พ. 2020 11:19 am โดย noppadonsk
อยู่ห้องเช่าหรือคอนโดก็ทำอาหารได้เมนูง่ายๆ อยากแชร์ค่ะ
โดย Anonymous อ 09 ก.พ. 2020 5:39 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
2032
พ 26 ก.พ. 2020 10:46 pm โดย odin83
FLIR AX8-9Hz กล้องถ่ายภาพความร้อนแบบต่อเนื่อง | IP67
โดย LEG ศ 07 ก.พ. 2020 2:39 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
200
ศ 07 ก.พ. 2020 2:39 pm โดย LEG
คัดกรองคนมีไข้ด้วยกล้องถ่ายภาพความร้อน | Thermal Imaging Camera
โดย LEG ศ 07 ก.พ. 2020 1:27 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
188
ศ 07 ก.พ. 2020 1:27 pm โดย LEG
สอบถามการใช้ selenium บน ubuntu หน่อยครับ
โดย jirawoot ศ 07 ก.พ. 2020 10:52 am บอร์ด Programming - C/C++ & java & Python
2
1960
ศ 07 ก.พ. 2020 1:22 pm โดย jirawoot
อย่าคิดว่าง่ายๆนะ
โดย noppadonsk ศ 07 ก.พ. 2020 9:23 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
156
ศ 07 ก.พ. 2020 9:23 am โดย noppadonsk
B - ระบบ LINE API ไม่ตอบสนองคำสั่ง [2020-02][001]
โดย thatsawan พฤ 06 ก.พ. 2020 6:31 pm บอร์ด MD-CRM - Tester
6
17
ศ 07 ก.พ. 2020 4:37 pm โดย mindphp
วิธีการทำ favorite icon เพื่อใช้สำหรับแสดงบน safari
โดย Ittichai_chupol พฤ 06 ก.พ. 2020 5:36 pm บอร์ด PHP Knowledge
0
255
พฤ 06 ก.พ. 2020 5:36 pm โดย Ittichai_chupol