Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

วิธีแก้ Blue Screen of Death (BSOD) จาก MBAM + Ataport.sys

หากคุณอ่าน Dedoimedo มา 11 ปีแล้ว คุณรู้ว่าผมไม่ค่อยชอบ security software แตผมทดสอบ security products เพื่อดูพฤติกรรมใน wider scope การปฏิบัติ selfless นี้ยังให้ผม compare และ judge software โดยเฉพาะเทียบกับ gold benchmark ของ Windows security programs ที่ glorious, useful และ no-nonsense ที่สุด คือ EMET นั่นแหละ

ไม่นานมานี้ ผมรัน scan ด้วย MalwareBytes Anti-Malware (MBAM) บน Windows 7 machine และระหว่าง scan ผมเจอ Blue Screen of Death (BSOD) ไม่ดีเลย หลัง recover ผมเริ่ม mother of all investigations ติดตามมาเลยครับ

วิธีแก้ Blue Screen of Death (BSOD) จาก MBAM + Ataport.sys

Operational setup, additional facts (การตั้งค่าการทำงาน, ข้อเท็จจริงเพิ่มเติม)

ก่อนเริ่ม figure out ให้ผมให้ข้อมูลเพิ่มเติม ไม่เช่นนั้น exercise นี้ pointless แรก BSOD โดยทั่วไป Windows มั่นคงมากใน home environment — servers เป็น separate topic — และไม่มีเหตุผลที่คุณควรเจอ critical system crash เนื่องจาก internal Windows kernel bug

ประมาณ 15 ปีของ heavy Windows use ข้าม roughly a dozen different systems ผมเจอ BSOD แค่ไม่กี่ครั้ง — เกิดจาก graphics card overheating, buggy graphics drivers, sad episode ที่เราพูดกันยาวๆ และครั้งหนึ่งเมื่อเชื่อม smartphone ผ่าน USB cable นั่นคือประมาณทั้งหมด

แน่นอน กลับไปที่ claim ก่อนหน้า ครั้งเดียวที่คุณควรเห็น kernel crash คือ hardware errors หรือ faulty drivers จริงๆ ซึ่ง align perfectly กับ usage history ของผม นี้ไป hand in hand กับ work experience ของผมที่ extensive กับ Linux ซึ่งผม documented ใน Linux crash book ของผม ใน essence hardware, bad system calls หรือ pure kernel bugs นั่นคือทั้งหมด และอันสุดท้ายเป็น least likely

แตตอนนี้ ผมเผชิญปัญหา with ataport.sys driver — ซึ่งเป็น Microsoft driver และไม่ควรมี bugs แล้ว เรามี hardware problem อยู่มือ? และถ้ามี เป็นแบบไหน? อยู่ดีๆ ก่อนจะเร่ง ดูแล้วผมอยากดึง attention ไปที่ art of problem solving และว่ามันต้องทำอย่างไร slowly, carefully, methodically

Analysis, first steps (การวิเคราะห์, ขั้นตอนแรก)

แล้ว มาเข้าใจว่發生อะไร เรารู้วิธี analyze BSOD เพราะผมแสดงวิธีทำใน BSOD guide แบบรายละเอียดของผม ใช้หนึ่งใน tools ที่นำเสนอใน tutorial เราสามารถ analyze crash dump ได้ ผมเลือก Nirsoft's BlueScreenView program มันพบว่า crash เกิดจาก:

ataport.SYS+1ff3c

และ specific error คือ KERNEL_DATA_INPAGE_ERROR เช็ค arguments อื่นๆ ใน memory core นี้ชี้ไปที่ hardware error ระหว่าง kernel operation ซึ่งนำไปสู่ system crash จนตอนนี้ simple

แตทำไม crash ถึงเกิดระหว่าง MBAM scan?

นี่คือคำถามน่าสนใจ? แน่นอน ตอนนี้เราต้อง figure out ว่า:

  • ปัญหานี้ specific to MBAM เท่านั้น
  • system issue แบบ generic ที่ accidentally manifested ระหว่าง scan

เพื่อ ascertain ว่า claim a) หรือ b) ถูกต้อง เราต้อง repeat circumstances ของ crash มีรายละเอียดเพิ่ม: Windows 7 machine ไม่มี extra security software นอกจาก EMET พร้อม mounted TrueCrypt container นี่สำคัญและ relevant เพราะนี่คือ software อีกตัวที่ใช้ storage layer drivers และอาจ affect outcome ของสถานการณ์นี้

ผมรัน scan ครั้งที่สอง — แต่ครั้งนี้ระบบไม่ crash TrueCrypt container และทั้งหมด อย่างไรก็ตาม ผมเห็น error ใน Event Log Event ID 11 อ่านว่า:

The driver detected a controller error on \Device\Ide\IdePort1.

ผมไม่เคยเห็น error ประเภทนี้มาก่อน และ timing กับ MBAM scan ค่อนข้างน่าสนใจ ตอนนี้เรามี additional info ในมือ เราต้อง figure out next step ในการสืบสวน

Meaning of controller error (ความหมายของ controller error)

ถ้าคุณ search specific error นี้ คุณจะพบ whole range ของ entries จากคนถามคำถามเดียวกัน ในท้ายที่สุด มัน boil down ไปที่ three major issues — bad SATA cable, bad disk หรือ bad chipset controller ซึ่ง effectively หมายถึง motherboard ใหม่ ดู sinister มาก อย่างไรก็ตาม issue manifested เฉพาะระหว่าง MBAM scan และในจุดนี้ เราต้องเข้าใจว่าเรากำลัง deal กับ isolated incident หรือ system problem

Analysis, system health (การวิเคราะห์, สุขภาพระบบ)

ผมตัดสินใจ examine status ของเครื่องหลาย levels รวมถึง hardware checks โปรดทราบว่าคุณไม่มีทาง 100% sure แม้ specific check จะออกมา clean ทางเทคนิค hardware ของคุณอาจตายพรุ่งนี้ ดังนั้นคุณไม่สามารถหา solace และ guarantee ใน checks เหล่านี้ สิ่งที่มันบอกคุณคือใน time being ใน best case ไม่มี symptoms ที่ indicate wider problem

  • Disk SMART checks, clean
  • WD Data Lifeguard Diagnostics checks, clean
  • ระบบ rock stable นอกจาก issue ด้านบน
  • ไม่มีปัญหาอื่นๆ เลย รวมถึง full week หลัง incident

แม้ผมจะ khwam ที่จะทำอะไร ผมตัดสินใจไม่ทำอะไร และปล่อยให้คอมพิวเตอร์รันไปหนึ่งสัปดาห์เต็ม รวมถึง stressful activities เช่น — games เยอะกับ heavy IO, data backups, system imaging, Windows Updates และอื่นๆ ใน would-be tests ทั้งหมด ระบบ behave predictable เหมือนเดิมที่มีมา months และ years ก่อนหน้า

ในจุดนี้ ผมตัดสินใจว่าไม่มี imminent health issue กับ hardware อย่างน้อย temporal statistics และ superstition notwithstanding นี่ led me to believe ว่าปัญหา caused by MBAM และ align ดีกับประสบการณ์ของผมที่ไม่ใช่ Windows ที่ crash มันคือ something else เสมอ

MBAM, additional investigation (MBAM, การสืบสวนเพิ่มเติม)

ตอนนี้ เรา focus ที่ security software นี้ อีกครั้ง หากคุณ search online คุณจะพบ endless amount ของ entries พร้อม major themes ที่ recurring: a) malware, like DUH รวมถึง trojan ที่ป้องกัน security software จากการรัน และทำให้ crashes ประเภทนี้ b) claims โดย users ว่า MBAM 3 ทำให้ crashes ในขณะที่ MBAM 2 ไม่ได้ c) อาจมี incompatibility กับ TrueCrypt ที่อาจนำไปสู่ BSOD

ผมตัดสินใจ test hypotheses เหล่านี้และดูว่าจริงไหม แรก เรื่อง c) อาจเป็น issue คราวหนึ่ง แต่แน่นอนไม่ใช่แล้ว ในประสบการณ์ของผม ผมมี TrueCrypt volumes mounted เสมอ และไม่เคยทำให้ crash ก่อน

เรื่อง a) นี่ nonsense แต่ผมตัดสินใจ follow quick recommendations เพื่อดูว่าตรวจสอบออกไหม ไม่ได้ แน่นอน ยิ่งไปกว่านั้น MBAM ทำ scan ต่อไปเสร็จโดยไม่มี BSOD แต่มี controller errors ที่ relevant ซึ่ง narrow down issue ลงที่ software

MBAM + Event ID 11

ตอนนี้ เราสามารถ search relevant information ได้จริงๆ มีเพียง handful ของ entries ใน official forum และ story ของพวกเขา very similar กับของผม Several someones เจอ crash และพวกเขา figure out นี้ caused by clash ระหว่าง MBAM และ Intel Rapid Storage Technology (RST) drivers Aha ผมติดตั้ง latest supported drivers และ reboot ผมค้นพบหลายสิ่งระหว่างทาง:

  • Drive letters ของผม messed up ดังนั้นผมต้อง reassign ให้ถูกต้อง
  • Disk light บน case กระพริบน้อยกว่าก่อน — แม้ไม่มี SATA Link power management enabled — นี่อาจเป็นแค่ visual trick หรือแท้จริงมี reduced disk polling activity ก่อนหน้า System metrics ไม่แสดงความแตกต่างใหญ่
  • มี very slight performance boost เนื่องจาก new drivers นี้

และตอนนี้ ผมรัน fresh new MBAM scan และมัน completed โดยไม่มี issues ไม่มี errors ใน Event Log ด้วย ดังนั้นมัน turn out ว่านี่เป็นปัญหาที่ caused by third-party software และไม่ใช่ fault ของ Microsoft หรือ hardware issue P.S. MBAM folks อื่นๆ รายงาน issue หายไป AFTER MBAM version upgrade

ขอ disclaim ไว้ errors ไม่ได้ caused by Windows หรือ underlying platforms ตามที่คุณบताได้ ไม่อยู่ใน reasonable ability ของ user ที่จะ figure out นี้ เพราะบน old desktop ของผม ตามที่คุณอ่านใน happy article ของผมเกี่ยวกับหัวข้อนี้ disk ที่มี SMART data spotless ตายโดยไม่มี warning ก่อนหน้า ในขณะที่อีกตัว ที่มี supposedly highly critical problem ที่ควรประกาศ imminent disk death รอดชีวิตมาหลายเดือน happily ตั้งแต่ error แสดงขึ้น Statistics ทำงานดีจนกว่าจะกลับมาต่อต้านคุณ

แตสำหรับ practical purposes ทั้งหมด ที่นี่ ที่นั่น มันเป็น 100% MBAM issue และไม่เกี่ยวกับ hardware clash ระหว่าง security scanner ที่มี low-level system privileges และ storage drivers คำถามคือ ทำไม?

แน่นอน ทำไม? (Indeed, why?)

โดยไม่มี access to MBAM code sources คุณไม่รู้แน่ชัด แต่ผมมี theory Malware พยายามซ่อนตัวบน disk บางครั้งด้วย clever schemes ทั้งหลาย หนึ่งวิธีคือ force ระบบให้ใช้ bogus I/O drivers เพื่อให้พวกมัน report clean disk นี่หมายความว่า malware scanner อาจไม่ไว้ใจ system functions ในการ return true value

ผมเชื่อว่า MBAM implements disk access functions ของตัวเอง รวมถึง controller commands และ seek, read, unlink และ system calls และ functions อื่นๆ ของตัวเอง ด้วยเหตุผลบางอย่าง หนึ่งใน commands นี้ clash กับ Intel's RST ก่อให้เกิด I/O error ซึ่งระบบ interpret ว่า controller error ดังนั้น BSOD หรือ system event นี่คือ theory ของผม และอาจผิด แต่มัน make sense

More reading (อ่านเพิ่มเติม)

เพราะคุณไม่มีทาง ever sure ว่าระบบของคุณไม่จะ fail คุณควร actually plan for their failure ในคำอื่น embrace the painful moments, be prepared สำหรับเมื่อมันเกิด เพื่อคุณ recover ได้รวดเร็ว ด้วย minimal losses ตัวอย่าง ผมมี spare hardware เยอะ รวมถึงอย่างน้อย 2-3 fresh hard disks

ผมยัง backup data และทำ system images อย่างขยัน ดังนั้นถ้ามีความจำเป็นต้องเปลี่ยน hardware ผมกลับสู่ productivity ได้เร็วภายในประมาณหนึ่งชั่วโมง โดยไม่มี loss of data หรือแม้แต่ system configuration

สุดท้าย ผม rant เกี่ยวกับ problem solving และว่ามันควรทำ methodically นี่คือ essence of troubleshooting โดยเฉพาะ hardware และ software issues หากคุณทำถูก คุณ less likely to make mistake ประหยัดเวลาและเงิน การไปเปลี่ยนแปลงอย่าง blind ไม่เคยเป็น good idea ผมมี whole book เรื่องนี้ด้วย

สรุป

นี่เป็น tough, complicated problem พร้อม multiple factors weighing in ในจุดหนึ่ง เรามี possible hardware issues หลาย fronts TrueCrypt, malware และ software bugs ทั้งหมดแข่งขันเพื่อ attention การ resolve นี้ไม่ใช่ง่าย และ yet ด้วย slow, careful work เราสามารถ fully understand ปัญหา isolate root cause validate claims และ test potential resolutions ทั้งหมดโดยไม่มี drastic system changes

ผมเชื่อนี่เป็น valuable lesson มันเกิดกับผม แตผมอยากให้คุณ take away findings เวลามีอะไร bad เกิดขึ้น Internet จะ blast คุณด้วย garbage Hardware, malware เลือกได้ทุกอย่าง ทุกคนจะมีปัญหาของคุณ และ yet จะ ever so slightly different และ not quite applicable คุณอาจบ้าด้วยวิธีนี้ มี strong temptation ที่จะลองสิ่งที่ทั้งหมดคนเหล่านี้ทำ แต่ best way forward คือ very carefully examine symptoms, thoroughly analyze them และ apply fixes, reversible, fully quantifiable fixes เริ่มจาก simplest, least intrusive ones

นี่คือวิธีที่เราไปกับ issue นี้ Do we know what happened? Can we reproduce it? Does the newfound information make sense? Can we validate the possible causes? Can we disqualify some of them? กับ ones เรา left with fresh round of searches New claims, new hypotheses, new checks Clear, reproducible results Resolution Knowledge Fun ผมหวังว่าคุณ enjoy this จำไว้ อย่าลำบาก Windows และ skeptical เกี่ยวกับสิ่งที่ Internet พูดเกี่ยวกับ hardware ของคุณ มัน all doom and gloom แต่มัน not have to be so Happy computing.

Cheers.