เป็นไปไม่ได้เลยหรือที่จะบอกว่า CPU กำลังทำอะไรอยู่ [ปิด]


24

โปรแกรมเมอร์คอมพิวเตอร์มักจะท่องมนต์ที่คำสั่ง x86 นั้นทึบแสงโดยสิ้นเชิง: Intel บอกเราว่าพวกเขากำลังทำอะไรบางอย่าง แต่ไม่มีความหวังว่าทุกคนสามารถตรวจสอบสิ่งที่เกิดขึ้นได้ดังนั้นหาก NSA บอกให้พวกเขาลับๆ RNGs ทำอะไรกับมัน

ฉันเชื่อว่าโปรแกรมเมอร์คอมพิวเตอร์ไม่สามารถทำอะไรเกี่ยวกับปัญหานี้ได้ แต่วิศวกรไฟฟ้าจะโจมตีได้อย่างไร มีเทคนิคที่วิศวกรไฟฟ้าสามารถใช้เพื่อตรวจสอบว่าวงจรทำงานจริงตามที่อธิบายไว้ในข้อมูลจำเพาะหรือไม่และไม่มีการดำเนินการอื่น ๆ


5
คุณต้องทำอะไรบางอย่างเช่น xray the die และวิเคราะห์ทุกอย่างเพื่อดูว่ามันทำอะไรอยู่ โดยทั่วไปแล้ววิศวกรชิปและบัญชีสำหรับฟังก์ชั่น trhe ของทุกวงจร ทำไม่ได้ทั้งหมด
DKNguyen

7
ไม่มีวงจรไฟฟ้าทำงานตามสเป็คที่แน่นอนเนื่องจากเสียงรบกวนและความเป็นไปได้เล็กน้อยที่วันหนึ่งจะมีความผิดพลาดที่ "ใหญ่พอ"
แอนดี้อาคา

5
ข้อมูลน่าสนใจ: นี้จะเกี่ยวข้องกับรางเพื่อปีศาจเลซ
Harry Svensson

6
จะเป็นการง่ายกว่าที่จะขโมยเอกสารภายในจากฐานข้อมูลเนื้อหาของ Intel กว่าจะเป็นการทำวิศวกรรมย้อนกลับแม้กระทั่ง CPU ที่ซับซ้อนและทันสมัยของ Intel
ป่า

14
@Harper ทัศนคติของคุณไม่เป็นระเบียบและการยืนยันของคุณว่าแบ็คดอร์ไม่สามารถซ่อนตัวได้ในฮาร์ดแวร์นั้นไม่เป็นความจริง
pjc50

คำตอบ:


14

กระดาษที่ดีที่สุดที่ฉันได้อ่านเกี่ยวกับเรื่องนี้คือ"โทรจันฮาร์ดแวร์ระดับเจือปน Stealthy" (Becker et al) จากปี 2014

เนื่องจากวงจรที่ผ่านการดัดแปลงนั้นถูกต้องตามกฎหมายในทุกชั้นสายไฟ (รวมถึงโลหะและโพลีซิลิคอนทั้งหมด) ตระกูลโทรจันของเรามีความทนทานต่อเทคนิคการตรวจจับส่วนใหญ่รวมถึงการตรวจสอบด้วยแสงละเอียดและการตรวจสอบกับ "ชิปทอง" โดยการแทรกโทรจันออกเป็นสองการออกแบบ - โพสต์การประมวลผลดิจิตอลที่ได้มาจากการออกแบบ RNG ที่เข้ารหัสลับของ Intel ที่ใช้ในโปรเซสเซอร์ Ivy Bridge และการติดตั้ง SBox ที่ทนทานต่อช่องทางข้าง - และโดยการสำรวจการตรวจจับ

บทความนี้อธิบายถึงวิธีการเปลี่ยนแปลงวิธีการตรวจจับซิลิคอนอย่างหนักการตรวจสอบจากการทดสอบการผลิตและวิธีการลดความปลอดภัยของฮาร์ดแวร์ crypto RNG หรือการรั่วไหลของข้อมูลที่สำคัญ ผ่าน power-rail-channel ด้านข้างของการใช้งาน AES

ช่องด้านข้างเป็นช่องที่น่าสนใจ Intel ประสบปัญหาเกี่ยวกับการรั่วไหลของข้อมูลจากหน่วยความจำซึ่งไม่ได้ถูกใช้โดยโปรแกรม นั่นอาจเป็นข้อบกพร่องการออกแบบโดยเจตนาหรือไม่? แทบจะเป็นไปไม่ได้ที่จะบอก


ช่องด้านข้างจะไม่ต้องการเครื่องส่งสัญญาณบางประเภทเพื่อส่งข้อมูลไปยัง NSA หรือไม่ ไม่เช่นนั้นฉันจะสังเกตเห็นว่ามีคนกำลังวัดกระแสไฟบนแล็ปท็อปของฉันในขณะที่ฉันกำลังทำงานอยู่
Dmitry Grigoryev

24

มีเทคนิคที่วิศวกรไฟฟ้าสามารถใช้เพื่อตรวจสอบว่าวงจรทำงานจริงตามที่อธิบายไว้ในข้อมูลจำเพาะหรือไม่และไม่มีการดำเนินการอื่น ๆ

ในทางทฤษฎีใช่ฉันคิดว่ามันเป็นไปได้ อย่างไรก็ตามสำหรับ CPU ที่ซับซ้อนจะใช้เวลาและเงินเป็นจำนวนมาก นอกจากนี้หากคุณไม่รู้จักและเข้าใจการออกแบบอย่างเต็มที่คุณจะไม่สามารถตัดสินได้ว่ากิจกรรมใดเป็น "ถูกกฎหมาย" หรือไม่

ซีพียูคือ "เพียง" วงจรดิจิตอลที่ซับซ้อนซึ่งประกอบด้วยเซลล์ลอจิกจำนวนมาก

เป็นไปได้ที่จะทำวิศวกรรมย้อนกลับชิปและสร้างการออกแบบใหม่โดยการสังเกตการเชื่อมต่อโลหะ อาจมีเลเยอร์การเชื่อมต่อเหล่านี้มากมายเช่นมากถึง 8 เลเยอร์หรือมากกว่า

คุณจะต้องมีผู้เชี่ยวชาญในสาขาเพื่อรับรู้ตรรกะของเซลล์และจากนั้นซอฟต์แวร์บางอย่างอาจคิดออกว่าพวกมันเชื่อมต่อกันอย่างไรเพื่อให้คุณสามารถสร้าง netlist ขึ้นมาใหม่ได้

เมื่อคุณมี netlist คุณจะ "รู้จัก" การออกแบบ นั่นไม่ได้หมายความว่าตอนนี้คุณก็รู้ว่ามันทำงานยังไง!

อาจเป็นไปได้ว่าฟังก์ชั่นบางอย่างเปิดใช้งานการออกแบบ 2 ส่วนในขณะที่คุณคิดว่าควรจะเพียงพอดังนั้นคุณจึงสงสัยว่ามีกิจกรรมที่น่าสงสัยเกิดขึ้น อย่างไรก็ตามการออกแบบทำเคล็ดลับที่ชาญฉลาดบางอย่างที่คุณไม่รู้เกี่ยวกับความเร็วในการทำงาน

โดยไม่ต้องรู้และเข้าใจการออกแบบข้อสรุปใด ๆ ที่คุณวาดอาจยังคงผิด มีเพียงวิศวกรที่ออกแบบ CPU เท่านั้นที่มีข้อมูลการออกแบบทั้งหมดและมีโอกาสที่ดีที่สุดในการพิจารณาหรือคาดเดาว่าอะไรจะเกิดขึ้นจริงหรือควรดำเนินการใน CPU ต่อไป


77
มีเพียงวิศวกรที่ออกแบบซีพียูเท่านั้นที่รู้ทุกอย่างที่เกิดขึ้นฉันเป็นวิศวกรที่ทำงานในอุตสาหกรรมนี้และให้ฉันประเมินข้อความนี้ว่าเป็นแง่ดีมาก :)
Eugene Sh

18
ไม่นักออกแบบซีพียูจะไม่ทราบว่าทุกสิ่งที่เกิดขึ้น - การออกแบบในระดับนั้นขึ้นอยู่กับเครื่องมือสังเคราะห์ ในการเป็นตัวอย่างที่ไม่น่าสงสัยเครื่องมือ FPGA จำนวนมากจะช่วยให้คุณสามารถรวบรวมในเครื่องวิเคราะห์ตรรกะ
Chris Stratton

9
ทำวิศวกรรมย้อนกลับชิปด้วย "ทรานซิสเตอร์นับพันล้าน" จะนำเสนอความท้าทาย spectrum.ieee.org/sem
แรงดันไฟฟ้าเข็ม

4
@ วิลสันเนื่องจากวงจรที่ซับซ้อน (รวมถึงซีพียู) จะมีการออกแบบที่เป็นกรรมสิทธิ์ (และเป็นความลับเครื่องหมายการค้า / สิทธิบัตรแม้กระทั่ง) ซึ่งไม่ได้เผยแพร่ต่อสาธารณชนทั่วไปเพราะ บริษัท ที่เป็นเจ้าของการออกแบบเหล่านั้นต้องการผลประโยชน์ (หารายได้) จากพวกเขา 6502 เป็นแบบเก่ามันไม่มีข้อมูลการออกแบบที่มีค่าอีกต่อไปดังนั้นใช่มันเปิดกว้างและพร้อมให้ทุกคน
Bimpelrekkie

3
@Bimpelrekkie: หากพวกเขากำลังจดสิทธิบัตรพวกเขาโดยนิยามไม่เป็นความลับ นั่นคือประเด็นของสิทธิบัตร คุณแลกเปลี่ยนความลับกับการผูกขาดชั่วคราว
MSalters

9

ฉันเชื่อว่าโปรแกรมเมอร์คอมพิวเตอร์ไม่สามารถทำอะไรเกี่ยวกับปัญหานี้ได้ แต่วิศวกรไฟฟ้าจะโจมตีได้อย่างไร

ไม่มีวิธีที่ดีในการค้นหาประตูหลังวิธีหนึ่งในการค้นหาฮาร์ดแวร์ลับๆคือการทดสอบชุดค่าผสมหรือคำแนะนำที่ไม่มีเอกสาร นี่คือการพูดคุยที่ดีของคนที่ไม่จริงนี้และไม่ตรวจสอบบนฮาร์ดแวร์ x86 สามารถทำได้โดยไม่ทำให้ชิปแตก ปัญหาหนึ่งของ intel (ฉันไม่แน่ใจเกี่ยวกับชิปอื่น ๆ ) จริง ๆ แล้วมันมีตัวประมวลผลที่ใช้ linux ทำงานอยู่ดังนั้นจึงมีซอฟต์แวร์ที่ทำงานบนตัวประมวลผลบางตัวและคุณไม่สามารถเข้าถึงสิ่งนั้นได้

มีเทคนิคที่วิศวกรไฟฟ้าสามารถใช้เพื่อตรวจสอบว่าวงจรทำงานจริงตามที่อธิบายไว้ในข้อมูลจำเพาะหรือไม่และไม่มีการดำเนินการอื่น ๆ

มีวิธีทดสอบการใช้ฮาร์ดแวร์เองเพื่อทดสอบการทำงาน เนื่องจาก x86 มีชุดคำสั่งที่ไม่มีเอกสารดังนั้นจึงเป็นเรื่องแปลกที่จะแนะนำแบ็คดอร์ตามคำแนะนำปกติเพราะมันจะแนะนำความเป็นไปได้ของข้อผิดพลาด (เช่นถ้าคุณมีแบ็คดอร์ในคำสั่งเพิ่มเติมหรือหลายคำสั่ง) จะอยู่ในคำแนะนำที่ไม่มีเอกสาร

หากคุณไม่จำเป็นต้องทดสอบการทำงานของคำสั่งปกติที่คุณสามารถดูเวลาที่ใช้ในการดำเนินการตามคำแนะนำดูปริมาณพลังงานที่ใช้ในการเรียกใช้คำแนะนำเพื่อดูว่ามีความแตกต่างจากสิ่งที่คุณคาดหวังหรือไม่


3
ฉันไม่เห็นด้วยมันเป็นไปไม่ได้ที่บางคนจะทำสิ่งนี้ แต่ไม่น่าเป็นไปได้ สมมติว่าคุณ backdoored คำสั่งปกติเช่นคำสั่ง add และถ้าคุณทำคำสั่งเพิ่มเติมให้บอกว่ามันเปิด backdoor จากนั้นลูกค้าพัฒนาโปรแกรมที่มีชุดค่าผสมนั้นพวกเขามองเข้าไปหาประตูหลังและทุกคนก็โกรธและคุณจะถูกฟ้อง ปลอดภัยกว่าที่จะนำแบ็คดอร์มาไว้ในคำแนะนำที่ไม่มีเอกสาร (หรือคอมพิวเตอร์ลินุกซ์ในตัวของซีพียู)
Voltage Spike

4
IME รัน Minix ซึ่งไม่ใช่ Linux และมีขนาดเล็กลงและง่ายขึ้นมาก ลินุกซ์ได้รับแรงบันดาลใจจากการมีอยู่ของมินิกซ์และเดิมใช้ระบบไฟล์ของมันและได้รับการประกาศในกลุ่มข่าวของมัน แต่พวกเขาก็แตกต่างกันมากในตอนนี้
Chris Stratton

5
@ user14717 - ความเป็นไปได้ที่น่ารังเกียจจะเป็นลำดับทริกเกอร์ในการปฏิบัติการแบบเนทีฟที่ถูกคุมขัง แต่มีเหตุผลที่มันจะต้องไม่มีรหัสและไม่ได้ข้อมูล
Chris Stratton

5
@ laptop2d ข้อบกพร่องที่ซีพียูไม่ได้ทำสิ่งที่เอกสารทางทฤษฎีของชุดคำสั่งบอกว่าเกิดขึ้นตลอดเวลา ; ไม่มีใครถูกฟ้องโดยปกติ: อ่านหัวข้อ errataในการอัพเดทเอกสารตระกูล Intel i7 เจนเนอเรชั่น 7 การใช้คำสั่งที่ไม่มีเอกสารจะส่งเสียงเตือนนักวิจัยมัลแวร์ทันที การใช้การผสมผสานที่ผิดปกติของ ADD ที่เป็นจังหวะกับ MOVs ที่ถูกต้องระหว่างการลงทะเบียนนั้นมีโอกาสน้อยที่จะกระตุ้นการเตือนใด ๆ
Marcus Müller

6
@ laptop2d ฉันถูก stun โดยคำสั่ง "Embedded linux ภายใน CPU" ดังนั้นฉันจึงทำการวิจัยเล็กน้อยฉันเดาว่าคุณจะพูดถึงเครื่องยนต์ Intel ME มันไม่ได้ทำงานบนซีพียูเอง แต่อยู่ที่ชิปบริดจ์เหนือ ดูเหมือนว่ามีข้อมูลที่ผิดมากมายเกี่ยวกับเรื่องนี้ดูที่foss.com/fact-intel-minix-case
dim

6

วิธีเดียวที่จะตัดเลเยอร์ชิปทีละชั้นและบันทึกทรานซิสเตอร์ทุกตัวด้วยกล้องจุลทรรศน์อิเล็กตรอนแล้วใส่เข้าไปในโปรแกรมจำลองสถานการณ์บางชนิดแล้วดูมันทำงาน

นี่เป็นปัญหาของกล่องดำที่คุณพยายามสร้างภายในจากการวัดอินพุตและเอาต์พุต เมื่อความซับซ้อนของ internals หรือจำนวนของ I / O ได้รับเกินกว่าเล็กน้อยมีการระเบิด combinatorial ที่จำนวนของรัฐภายในที่เป็นไปได้กลายเป็นดาราศาสตร์ ที่ตัวเลขอย่างGoogolถูกโยนทิ้งไป


2
... และง่ายกว่าที่จะขโมยการออกแบบโดยใช้วิศวกรรมสังคม :)
Eugene Sh

8
ไม่ได้ข้อผิดพลาดที่เห็นได้ชัดที่นี่คือการจำลองนั้นไม่เพียงพอ แม้ว่าคุณจะถูกกำหนดที่ถูกต้องแบบจำลองคุณยังจะไม่สามารถที่จะหาพฤติกรรมซ่อนอย่างระมัดระวังเนื่องจากคุณมีความคิดไม่ออกว่าจะเรียกมัน
Chris Stratton

4
@ChrisStratton ฉันจะไม่เรียกความผิดพลาดที่จ้องมอง มันเป็นข้อสันนิษฐานที่สมเหตุสมผลว่าการออกแบบนั้นใช้พื้นฐานของการทำให้เรียบง่ายซึ่งเป็นเรื่องปกติทางร่างกายเช่นคุณไม่ได้ใส่ร่องรอยของการทำให้เป็นโลหะสองชิ้นเข้าด้วยกันดังนั้นพวกเขาจึงเหนี่ยวนำพอที่จะเปลี่ยนสถานะของประตู MOSFET นั่นเป็นเพียงข้อผิดพลาดหากก) การทำให้เข้าใจง่ายของคุณไม่ตรงกับรูปแบบทางกายภาพของสิ่งที่ผู้ออกแบบใช้หรือ b) ผู้ออกแบบตั้งใจซ่อนบางสิ่งบางอย่างโดยจงใจทำลายข้อกำหนดสำหรับการทำให้เรียบง่ายเหล่านี้ด้วยวิธีที่ไม่ชัดเจน
Marcus Müller

7
@ ChrisStratton อ่าขอโทษฉันคิดว่าตอนนี้ฉันได้คะแนนของคุณแล้ว คุณพูดได้ว่าแม้แต่ซีพียูแบบดิจิตอล / พฤติกรรมแบบโอเวอร์คล็อกของซีพียูก็ซับซ้อนพอที่จะซ่อนกรณีที่ความเข้าใจ / สมมติฐานของโปรแกรมเมอร์ไม่สามารถใช้ได้ นั่นเป็นเรื่องจริง หนึ่งอาจมีเอกสารผลกระทบที่นำไปสู่การ SPECTER ในรายละเอียดระทมทุกข์และคนส่วนใหญ่จะไม่เคยคิดที่จะแคชเพื่อมีผลข้างเคียงที่เกี่ยวข้องกับข้อมูลหรือโปรแกรมไหล แน่นอน!
Marcus Müller

3
ขอบคุณ :) ข้อโต้แย้งของคุณทำให้หัวข้อทั้งหมดของการตรวจสอบอย่างเป็นทางการของความถูกต้องของ ISAs กลับมาดู ("ISA นี้จริงรับรองว่า CPU ที่เข้ากันไม่ได้ให้สิทธิ์ RING 0 กับรหัส unprivileged?") และการตรวจสอบอย่างเป็นทางการของ HDL / RTL เทียบกับข้อกำหนด ISA (ฉันชอบโครงการตรวจสอบ CPU Core RISC-Vนี้โดยเฉพาะ)
Marcus Müller

5

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

คุณอาจคิดถึงการแยกชิปทางกายภาพดังนั้นจึงเป็นเรื่องจริงที่จะเห็นว่าไม่มีการเชื่อมต่อสายไฟที่ไม่เหมาะสมกับมัน และวางชิปอื่นหรือมากกว่าหนึ่งชิปในซีรีส์ (จากแหล่งที่แตกต่างกัน) ในการเชื่อมต่อเครือข่ายที่รับประกันว่าจะเชื่อมต่อกับสถานที่ที่เหมาะสมเท่านั้น จากนั้นพาวเวอร์ปั่นจักรยานหลังจากที่ส่งการโหวตของคุณแล้ว และหวังว่าจะไม่มีบิตที่ไม่ลบล้างอยู่ในนั้น หรือการเชื่อมต่อไร้สายลับๆล่อๆ แต่คุณจะเชื่อใจในชีวิตของคุณหรือไม่


5

การส่งข้อมูลใด ๆ ไปยัง NSA นั้นจะต้องมีการเข้าถึงเครือข่ายดังนั้นจึงเป็นการง่ายที่จะมองเห็นแบ็คดอร์ดังกล่าวด้วยการเรียกใช้ระบบปฏิบัติการที่ปิดใช้งานบริการเครือข่ายและตรวจสอบอินเทอร์เฟซเครือข่ายเพื่อรับส่งข้อมูล สำหรับระบบปฏิบัติการโอเพ่นซอร์สก็เป็นไปได้ที่จะทำงานด้วยการสนับสนุนเครือข่ายเต็มรูปแบบและการเชื่อมต่อจุดโกงโดย IP ปลายทางของพวกเขาซึ่งจะไม่ตรงกับที่อยู่ใด ๆ ที่ระบบปฏิบัติการสามารถเข้าถึงได้อย่างถูกกฎหมาย

แบ็คดอร์ที่ใช้ RNG ซึ่งไม่มีการส่งข้อมูลจะมีประโยชน์ จำกัด มาก เว้นแต่ CPU RNG เป็นเพียงแหล่งเอนโทรปีโอกาสที่ลับๆดังกล่าวจะให้ประโยชน์ใด ๆ ที่จะโจมตีในขณะที่ไม่เป็นที่เห็นได้ชัดในเวลาเดียวกันเป็นศูนย์จริง เว้นแต่คุณจะยืนยันว่ากาน้ำชาของ Russel อยู่ข้างนอกแม้ว่าจะไม่มีเหตุผลที่ดีอยู่ก็ตามคุณควรจะสามารถใช้อาร์กิวเมนต์เดียวกันกับฮาร์ดแวร์ RNG ด้านหลังได้


5
ดังนั้นคุณคิดว่าฝ่ายตรงข้ามมีเวลาเงินและทักษะในการสร้างและซ่อนม้าโทรจันฮาร์ดแวร์ แต่สิ่งแรกที่พวกเขาทำคือ telnet www.nsa.gov? ดูเหมือนว่าจะเป็นมุมมองที่ไร้เดียงสามาก
Elliot Alderson

1
หาก NSA ซ่อนช่องโหว่อยู่แล้วใช่ว่าพวกเขาจะหวังว่าคนใช้rdrandหรือrdseedตามที่ Intel แนะนำ: เป็นแหล่งข้อมูลเอนโทรปีเดียวสำหรับเมล็ดพันธุ์ PRNG ลินุกซ์ (kernel) เลือกที่จะไม่ทำเพื่อ/dev/randomแต่ glibc / libstdc ++ 's ปัจจุบันstd::random_device ไม่ใช้เพียงแค่ถ้ามันใช้ได้ที่รันไทม์แทนการเปิด rdrand ก้าวเข้าสู่การโทรห้องสมุดมาตรฐานด้วย godbolt/dev/random
Peter Cordes

@ElliotAlderson คุณมีความคิดเห็นอย่างไร ใครบางคนสามารถขโมยข้อมูลที่มีค่าโดยไม่ต้องส่งมันที่ไหน?
Dmitry Grigoryev

@PeterCordes std::random_deviceไม่ใช่ RNG ที่แข็งแกร่งแบบเข้ารหัส มาตรฐาน C ++ ช่วยให้คุณสามารถนำไปใช้กับ PRNG ได้อย่างมีประสิทธิภาพกลับลำดับเดียวกันทุกครั้งดังนั้นจึงค่อนข้างชัดเจนว่าไม่มีใครควรใช้มันสำหรับการเข้ารหัส
Dmitry Grigoryev

โอ้ใช่ฉันลืมไปแล้วว่าไม่มีสิ่งใดรับประกันได้เลยว่ามันดี xD มันเป็นที่ดีในการใช้งานมาก แต่ MinGW เป็นข้อยกเว้นที่ยอดเยี่ยมที่จะตั้งใจออกแบบที่ว่ามันจะช่วยให้คุณเป็นตัวเลขสุ่มที่มีคุณภาพดีเป็นแพลตฟอร์มที่มีความสามารถในการชนะจุดประสงค์หลักของห้องสมุด (ซึ่งอย่างที่คุณบอกว่าไม่ใช่ crypto แต่เป็นการเพาะ PRNG เพื่อวัตถุประสงค์อื่น) ( ทำไมฉันถึงได้รับลำดับที่เหมือนกันสำหรับทุกการรันด้วย std :: random_device ด้วย mingw gcc4.8.1? ) นั่นจะเป็นที่ยอมรับบนแพลตฟอร์มที่ไม่มีเอนโทรปี (อุปกรณ์ฝังตัวขั้นต่ำ) แต่ไม่ใช่ใน x86 Windows!
Peter Cordes
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.