ถ้าคุณรู้จักฉันหรือเคยอ่านไฟล์ โพสต์ก่อนหน้า คุณรู้ไหมว่าฉันเคยทำงานให้กับ บริษัท ที่น่าสนใจมากก่อนที่จะเข้าร่วม ApeeScape ที่ บริษัท นี้ผู้ให้บริการการชำระเงินของเราประมวลผลธุรกรรมในมูลค่า 500,000 ดอลลาร์ต่อวัน งานส่วนหนึ่งของฉันคือการสร้างผู้ให้บริการของเรา สอดคล้องกับ PCI-DSS - นั่นคือสอดคล้องกับอุตสาหกรรมบัตรชำระเงิน - มาตรฐานความปลอดภัยของข้อมูล
กล่าวได้อย่างปลอดภัยว่านี่ไม่ใช่งานสำหรับคนใจร้อน ในตอนนี้ฉันค่อนข้างสนิทสนมกับบัตรเครดิต (CC) การแฮ็กบัตรเครดิตและ ความปลอดภัยของเว็บโดยทั่วไป . ท้ายที่สุดแล้วหน้าที่ของเราคือปกป้องข้อมูลของผู้ใช้เพื่อป้องกันไม่ให้ถูกแฮ็กขโมยหรือนำไปใช้ในทางที่ผิด
คุณคงนึกแปลกใจเมื่อเห็นบทความของ Bennett Haselton ในปี 2007 เรื่อง Slashdot: เหตุใดหมายเลข CC จึงยังหาได้ง่าย . กล่าวโดยสรุปคือ Haselton สามารถค้นหาหมายเลขบัตรเครดิตผ่าน Google ได้โดยขั้นแรกโดยการค้นหาแปดหลักแรกของบัตรในรูปแบบ“ nnnn nnnn” และต่อมาโดยใช้คำค้นหาขั้นสูงที่สร้างขึ้นจากช่วงตัวเลข ตัวอย่างเช่นเขาสามารถใช้“ 4060000000000000..4060999999999999” เพื่อค้นหาตัวเลข 16 หลักทั้งหมด หมายเลขบัญชีหลัก (PANs) จาก CHASE (ซึ่งไพ่ทั้งหมดขึ้นต้นด้วย 4060) อย่างไรก็ตาม: นี่คือรายการทั้งหมดของ หมายเลขรหัสผู้ออก .
ในเวลานั้นฉันไม่ได้คิดอะไรมากนักเนื่องจาก Google เริ่มกรองประเภทของข้อความค้นหาที่ Bennett ใช้ในทันที เมื่อคุณพยายามใช้ Google ในช่วงแบบนั้น Google จะแสดงหน้าที่มีข้อความว่า“ คุณเป็นคนไม่ดี”
ประมาณหกเดือนที่แล้วในขณะที่ระลึกถึงเพื่อนเก่าการแฮ็คหมายเลขบัตรเครดิตนี้กลับมาคิดอีกครั้ง หลังจากนั้นไม่นานฉันก็ค้นพบสิ่งที่น่าตกใจ ไม่ได้น่ากลัวมาก แต่ก็น่าตกใจ - ฉันจึงแจ้ง Google และรอ หลังจากหนึ่งเดือนโดยไม่มีการตอบกลับฉันได้แจ้งเตือนพวกเขาอีกครั้งโดยไม่มีประโยชน์
ด้วยการปรับแต่งเล็กน้อยเกี่ยวกับเคล็ดลับเดิมของ Haselton ฉันจึงสามารถเข้าถึงหมายเลขบัตรเครดิตของ Google หมายเลขประกันสังคมและข้อมูลที่ละเอียดอ่อนอื่น ๆ ที่น่าสนใจได้
ฉันจึงแจ้ง Google และรอ หลังจากหนึ่งเดือนโดยไม่มีการตอบกลับฉันได้แจ้งเตือนพวกเขาอีกครั้งโดยไม่มีประโยชน์ ด้วยการปรับแต่งเล็กน้อยเกี่ยวกับเคล็ดลับเก่า ๆ ของ Haselton ฉันจึงสามารถเข้าถึงหมายเลขบัตรเครดิต Google หมายเลขประกันสังคมและข้อมูลที่ละเอียดอ่อนอื่น ๆ ได้เมื่อวานเพื่อนบางคนของฉัน ( buhera.blog.hu และ _2501) นำโพสต์ Slashdot ล่าสุดมาสู่ความสนใจของฉัน: หมายเลขบัตรเครดิตยังใช้ได้กับ Google .
ผู้เขียนบทความอีกครั้ง Bennett Haselton ผู้เขียนบทความต้นฉบับย้อนกลับไปในปี 2007 อ้างว่าหมายเลขบัตรเครดิตยังสามารถใช้กับ Googled ได้ คุณไม่สามารถใช้แฮ็กการค้นหาช่วงตัวเลขได้ แต่ก็ยังทำได้ แทนที่จะใช้ช่วงง่ายๆคุณต้องใช้การจัดรูปแบบเฉพาะกับแบบสอบถามของคุณ สิ่งที่ชอบ:“ 1234 5678” (สังเกตช่องว่างตรงกลาง) มี Hit จำนวนมากเกิดขึ้นสำหรับข้อความค้นหานี้ แต่มีเพียงไม่กี่รายการเท่านั้นที่เป็นที่สนใจ ในบรรดาผู้เข้าแข่งขัน ได้แก่ หมายเลขโทรศัพท์รหัสไปรษณีย์และอื่น ๆ ไม่น่าตกใจอย่างยิ่ง แต่ที่นี่มีการสับบัตรเครดิต
ฉันอยากรู้ว่ามันยังสามารถรับหมายเลขบัตรเครดิตทางออนไลน์แบบที่เราทำได้ในปี 2007 หรือไม่ในฐานะวิศวกรที่ดีฉันมักจะเข้าหาสิ่งต่างๆโดยใช้แผนการที่มีการตีความอย่างถูกต้องและชาญฉลาดซึ่งจำเป็นต้องดำเนินการอย่างสมบูรณ์แบบด้วยความแม่นยำสูงสุด หากคุณได้ลองใช้วิธีดังกล่าวแล้วคุณอาจรู้ว่ามันอาจล้มเหลวอย่างหนักซึ่งในกรณีนี้การวางแผนและความพยายามอย่างรอบคอบของคุณจะสูญเปล่า
ใน มัน เรามีแนวโน้มที่จะเข้าใจมากเกินไปแม้ว่าจะไม่ได้รับการรับประกันอย่างแน่นอนก็ตาม ฉันเคยเห็นเพื่อนและเพื่อนร่วมงานของฉันทำลายแอปพลิเคชันโดยใช้อินพุตแบบสุ่มโดยสิ้นเชิง อัตราความสำเร็จของพวกเขานั้นน่าทึ่งและความพยายามที่พวกเขาทำนั้นใกล้จะเป็นศูนย์ นั่นคือตอนที่ฉันเรียนรู้ว่าจะเปิดประตูบางครั้งคุณก็ต้องเคาะ
ย่อหน้าก่อนหน้านี้เป็นการพยายามปลอมตัวอย่างชาญฉลาดเพื่อทำให้ฉันดูเหมือนคนงี่เง่าน้อยลงเมื่อฉันอวด“ ทักษะการแฮ็กชั้นยอด” ของฉัน อ๊ะ.
ก่อนอื่นฉันลองใช้วิธีการตามการสืบค้นข้อมูลหลายวิธี จากนั้นฉันดูการสืบค้นขั้นสูงและทุกสิ่งที่คุณอาจพบในหนึ่งชั่วโมงหรือมากกว่านั้น ไม่มีสิ่งใดให้ผลลัพธ์ที่สำคัญ
แล้วฉันก็มีความคิดบ้าๆ
จะเกิดอะไรขึ้นถ้ามีความไม่ตรงกันระหว่างกลไกการกรองและส่วนหลังจริง? จะเกิดอะไรขึ้นถ้าข้อความที่ฉันได้รับจาก Google (“ คุณเป็นคนไม่ดี”) ไม่ได้มาจากส่วนหลัง แต่จากเครื่องมือกรองที่กำหนด Google ได้นำไปใช้เพื่อเซ็นเซอร์การค้นหาเช่นของฉัน
มันจะสมเหตุสมผลมากจากมุมมองทางสถาปัตยกรรม และจุดบกพร่องแบบนี้ก็พบได้บ่อย - เราเห็นมันใน ITSEC ตลอดเวลาโดยเฉพาะใน IDS / IPS โซลูชัน แต่ยังรวมถึงซอฟต์แวร์ทั่วไปด้วย มีขั้นตอนการกรองที่ประมวลผลข้อมูลและให้เฉพาะส่วนหลังเท่านั้นหากคิดว่าข้อมูลนั้นยอมรับได้ / ไม่เป็นอันตราย อย่างไรก็ตามแบ็คเอนด์และเซิร์ฟเวอร์การกรองแทบไม่เคยแยกวิเคราะห์อินพุตในลักษณะเดียวกันทั้งหมด ดังนั้นอินพุตที่ดูเหมือนจะถูกต้องสามารถผ่านตัวกรองและสร้างความหายนะให้กับแบ็คเอนด์โดยข้ามตัวกรองได้อย่างมีประสิทธิภาพ
โดยปกติคุณสามารถกระตุ้นพฤติกรรมประเภทนี้ได้โดยการป้อนข้อมูลของคุณในการเข้ารหัสต่างๆ ตัวอย่างเช่นแทนที่จะใช้เลขฐานสิบ (0-9) จะแปลงเป็นเลขฐานสิบหกหรือฐานแปดหรือเลขฐานสองได้อย่างไร เดาอะไร ...
ค้นหาสิ่งนี้แล้ว Google จะบอกคุณว่าคุณเป็นคนไม่ดี:“ 4060000000000000..4060999999999999”
ค้นหาสิ่งนี้และ Google ยินดีที่จะบังคับ:“ 0xe6c8c69c9c000..0xe6d753e6ecfff”
สิ่งเดียวที่คุณต้องทำคือการแปลงหมายเลขบัตรเครดิตจากฐานสิบเป็นเลขฐานสิบหก แค่นั้นแหละ.
ผลลัพธ์ ได้แก่ ...
มันเป็นเรื่องที่น่ากลัวจริงๆ
ฉันรู้ว่าข้อบกพร่องนี้ไม่ได้สร้างแรงบันดาลใจให้เกิดการวิจัยด้านความปลอดภัย แต่คุณก็มี Google สร้าง boo-boo นี้และละเลยที่จะเขียนตอบกลับ มันจะเกิดขึ้น ฉันไม่อิจฉาเจ้าหน้าที่รักษาความปลอดภัยที่ใหญ่ G พวกเขาต้องมีสิ่งของมากมายที่ต้องระวัง ฉันโพสต์เกี่ยวกับการแฮ็กหมายเลขบัตรเครดิตที่นี่เนื่องจาก:
เคล็ดลับนี้สามารถใช้เพื่อค้นหาหมายเลขโทรศัพท์ SSNs TFN และอื่น ๆ และตามที่ Bennett เขียนไว้ตัวเลขเหล่านี้เปลี่ยนแปลงได้ยากกว่าบัตรเครดิตของคุณมากซึ่งคุณสามารถโทรไปที่ธนาคารของคุณและยกเลิกบัตรได้
คำเตือน: อย่า Google หมายเลขบัตรเครดิตของคุณเต็ม!
มองหา CC PAN ที่เริ่มต้นด้วย 4060: 4060000000000000..4060999999999999? 0xe6c8c69c9c000..0xe6d753e6ecfff
หมายเลขโทรศัพท์ฮังการีบางหมายเลขจากผู้ให้บริการ 'Telenor' หรือไม่ ไม่มีปัญหา: 36200000000..36209999999? 0x86db02a00..0x86e48c07f
มองหา SSN โชคดีที่สิ่งเหล่านี้ไม่ได้ให้ผลลัพธ์ที่มีความหมายมากมาย: 100000000..999999999? 0x5f5e100..0x3b9ac9ff
ยังมีอีกมากมาย
หากคุณพบสิ่งที่น่าตกใจมากหรือหากคุณสงสัยเกี่ยวกับการแฮ็กบัตรเครดิตโปรดทิ้งไว้ในความคิดเห็นหรือติดต่อฉันทางอีเมลที่ [ป้องกันอีเมล] หรือบน Twitter ที่ @synsecblog . การโทรหาตำรวจมักจะไร้ผลในกรณีเหล่านี้ แต่ก็คุ้มค่าที่จะลอง ร้านค้าที่ระบุหรือผู้ให้บริการบัตรมักจะกระตือรือร้นที่จะแก้ไขปัญหานี้มากกว่า
เห็นได้ชัดว่า Google ต้องแก้ไขปัญหานี้โดยอาจได้รับความช่วยเหลือจากผู้เล่นรายใหญ่เช่น Visa และ Mastercard อันที่จริง Haselton ให้คำแนะนำที่น่าสนใจมากมายในบทความสองบทความที่เชื่อมโยงข้างต้น
อย่างไรก็ตามสิ่งที่คุณต้องทำ (และทำไมฉันถึงเขียนโพสต์นี้) คือการกระจายข่าว การฉ้อโกงบัตรเครดิตเป็นอุตสาหกรรมขนาดใหญ่และการรับรู้ที่เรียบง่ายสามารถช่วยคุณไม่ให้ตกเป็นเหยื่อได้ นอกจากนี้หากคุณมีไซต์อีคอมเมิร์ซหรือจัดการการประมวลผลบัตรเครดิตใด ๆ โปรดตรวจสอบให้แน่ใจว่าคุณปลอดภัย . PCI-DSS เป็นแนวทางที่ดี แต่ยังห่างไกลจากความสมบูรณ์แบบ นอกจากนี้คุณควรใช้ Google ไซต์ของคุณด้วยข้อความค้นหาขั้นสูง 'site: mysite.com' โดยมองหาตัวเลขที่ละเอียดอ่อน มีโอกาสน้อยมากที่คุณจะพบอะไร แต่ถ้าคุณทำคุณต้องลงมือทำทันที
นอกจากนี้คำแนะนำที่เป็นมิตร: คุณควร ไม่เคย ให้ข้อมูลบัตรเครดิตของคุณกับทุกคน คำแนะนำของฉันคือใช้ PayPal หรือบริการที่คล้ายกันทุกครั้งที่ทำได้ คุณสามารถตรวจสอบลิงค์เหล่านี้สำหรับข้อมูลเพิ่มเติม:
และเคล็ดลับทั่วไปบางประการ: อย่าดาวน์โหลดสิ่งที่คุณไม่ได้ขออย่าเปิดอีเมลขยะและอย่าลืมว่าธนาคารของคุณจะไม่ถามรหัสผ่านของคุณ
โดยวิธีการ: หากคุณคิดว่าไม่มีใครโง่พอที่จะล้มเทคนิคการแฮ็กบัตรเครดิตเหล่านี้หรือให้ข้อมูลบัตรเครดิตของพวกเขาทางอินเทอร์เน็ตลองดูที่ @NeedADebitCard .
ปลอดภัยทุกคน!
CCV ย่อมาจาก Card Verification Value โดยปกติหมายเลข CCV จะอยู่ที่ด้านหลังของบัตรเครดิตหรือบัตรเดบิต CCV มักเป็นตัวเลขสามหลักแม้ว่าการ์ดบางใบเช่น American Express จะใช้ CCV สี่หลัก CCV มักใช้เพื่อตรวจสอบว่าผู้ซื้อออนไลน์ครอบครองบัตร
PCI DSS ย่อมาจาก Payment Card Industry Data Security Standard PCI DSS ช่วยให้มั่นใจได้ว่าทุกฝ่ายที่เกี่ยวข้องกับการประมวลผลการถ่ายโอนและการจัดเก็บข้อมูลบัตรเครดิตจะดำเนินการในสภาพแวดล้อมที่ปลอดภัย
กล่าวง่ายๆว่าการปฏิบัติตาม PCI กำหนดให้ทุก บริษัท ที่ยอมรับการชำระเงินด้วยบัตรเครดิตและบัตรเดบิตเพื่อให้มั่นใจในความปลอดภัยตามมาตรฐานอุตสาหกรรม ปัจจุบัน PCI Security Standards Council กำหนดข้อกำหนดการปฏิบัติตามข้อกำหนด PCI 12 ข้อ