ต่อจากบทความที่แล้ว(
http://www.pantip.com/tech/techblog/article.php?articleID=SV2792342)
เมื่อเข้าใจความแตกต่างของทั้ง 2 คำคราวนี้เรามาดูความเข้าใจผิดที่ทำให้หลายๆคนถึงกับกลัวการนำแฟลชไดรฟ์มาใช้ในเครื่อง เพราะกังวลกันว่าอาจจะติดไวรัสได้ง่ายๆ สำหรับความเชื่อที่ว่าก็คือหลายๆคนมักจะเชื่อกันว่าถ้ามีไวรัสอยู่ในแฟลชไดรฟ์นั้นๆแล้ว เมื่อนำแฟลชไดรฟ์มาเสียบที่เครื่องเราก็จะติดไวรัสทันที ซึ่งเรื่องนี้ไม่เป็นความจริงนะครับ ลองมาดูตัวอย่างกันครับ โดยผมจะสมมุติให้โปรแกรมเครื่องคิดเลข(calc.exe) เป็นตัวไวรัสซึ่งมีการสร้างไฟล์ Autorun.inf ตามรูปนะครับ


จะเห็นได้ว่าคำสั่งภายในไฟล์ Autorun.inf นั้นจะเหมือนกับตัวอย่างแรกที่เป็นแผ่นติดตั้ง Windows เพียงแต่เปลี่ยนชื่อไฟล์ที่จะให้มันเปิดจาก Setup.exe มาเป็น calc.exe ซึ่งผมสมมุติให้เป็นตัวไวรัสนั่นเองครับ
ตอนนี้หลายคนคงคิดว่าเมื่อนำแฟลชไดรฟ์อันนี้มาเสียบที่เครื่องก็จะต้องติดไวรัสแน่นอน เพราะไวรัสมันก็จะทำงานตามคำสั่งใน Autorun.inf บรรทัด Open=calc.exe ซึ่งเป็นการเรียกตัวไวรัส(สมมุติ)ให้ขึ้นมาทำงาน เหมือนตัวอย่างของแผ่นติดตั้ง Windows ซึ่งเรียกไฟล์ Setup.exe ขึ้นมา
จริงๆแล้วเป็นความคิดที่ผิดนะครับ เนื่องจากว่าคำสั่ง Open ซึ่งกำหนดให้มีการเรียกโปรแกรมขึ้นมาทำงานแบบอัตโนมัตินั้นสามารถที่จะใช้งานได้กับไฟล์ Autorun.inf ซึ่งอยู่ในแผ่น CD/DVD เท่านั้นแต่จะไม่มีผลใดๆถ้าไฟล์ Autorun.inf นั้นอยู่ในแฟลชไดรฟ์
สรุปง่ายๆก็คือว่าถ้าเรานำไฟล์ Autorun.inf ตามตัวอย่างนี้ไปใส่ในแผ่น CD/DVD มันก็จะทำการเปิดโปรแกรมเครื่องคิดเลขให้ตามที่ระบุไว้ในบรรทัด Open=calc.exe ทันทีที่เรานำแผ่นใส่ในเครื่องหรือดับเบิ้ลคลิกที่ไดรฟ์นั้นๆ แต่ในกรณีที่ไฟล์ Autorun.inf ดังกล่าวอยู่ในแฟลชไดรฟ์ คำสั่ง Open ในบรรทัดดังกล่าวจะไม่มีผลใดๆครับไม่ว่าจะเป็นการเปิดโปรแกรมขึ้นมาให้อัตโนมัติหรือแม้แต่มีการดับเบิ้ลคลิกที่ไดรฟ์ก็ตาม
จะมีเพียงส่วนของบรรทัด Icon=calc.exe,0 ซึ่งเป็นตัวกำหนดรูปไอคอนเท่านั้นที่ทำงานโดยจะเห็นได้ว่าไอคอนของแฟลชไดรฟ์จะกลายเป็นรูปเครื่องคิดเลขแล้ว ดังนั้นตอนนี้ถ้าผมนำแฟลชไดรฟ์ดังกล่าวมาเสียบที่เครื่อง หรือแม้ผมจะทำการดับเบิ้ลคลิกที่ไดรฟ์ ตัวไวรัสก็จะยังไม่มีการทำงานนะครับเพราะอย่างที่บอกว่าคำสั่ง Open นั้นใช้ในแฟลชไดรฟ์ไม่ได้ครับ
ความแตกต่างของไฟล์ Autorun.inf ในแฟลชไดรฟ์และ CD/DVD จากในหัวข้อที่แล้วซึ่งผมบอกไว้ว่าการใช้คำสั่ง Open ของไฟล์ Autorun.inf นั้นจะไม่มีผลใดๆในกรณีที่ไฟล์ Autorun.inf นั้นอยู่ในแฟลชไดรฟ์ ทำไมจึงเป็นเช่นนั้น แล้วไวรัสที่ติดๆกันมันใช้วิธีการไหนล่ะ เดี๋ยวเรามาดูกันครับ
สำหรับสาเหตุที่คำสั่ง Open ในไฟล์ Autorun.inf ไม่มีผลในกรณีที่เป็นแฟลชไดรฟ์นั้นเท่าที่ผมลองค้นข้อมูลดูก็ยังไม่พบรายละเอียดหรือการยืนยันที่ชัดเจนนะครับว่าจะด้วยเหตุผลเพื่อความปลอดภัยหรือเหตุผลอื่นใดกันแน่ แต่ผมเดาเอาเองว่าอาจจะเป็นเพราะว่าตัว Autorun นั้นมีการพัฒนาขึ้นมาใช้ครั้งแรกสมัย Windows 95 ซึ่งแน่นอนว่าสมัยนั้นอุปกรณ์ที่เป็น Removable ก็จะมีเพียงฟล็อปปี้ดิสก์และแผ่น CD เท่านั้น ตัวแฟลชไดรฟ์ยังไม่มีใช้งานกัน จึงไม่ได้มีการกำหนดคำสั่ง Open ให้รองรับตัวแฟลชไดรฟ์ไว้ก็อาจเป็นได้
แต่สุดท้ายแล้วจะด้วยเหตุผลอะไรก็แล้วแต่ก็นับว่าเป็นผลดีกับผู้ใช้ครับ เพราะนับว่าเป็นการเพิ่มความปลอดภัยให้เราในการใช้แฟลชไดรฟ์ได้อีกขั้น นั่นคือเราไม่ต้องกังวลว่าเมื่อนำแฟลชไดรฟ์มาเสียบที่เครื่องแล้วจะมีการรันโปรแกรมหรือไวรัสขึ้นมาแบบอัตโนมัติโดยที่เราไม่รู้ตัว
แต่ไม่ได้หมายความว่าคำสั่ง Open ใน Autorun.inf นั้นจะไม่มีประโยชน์นะครับ เราลองมาดูตัวอย่างอีกสักตัวอย่างหนึ่ง โดยผมเพิ่มเติมคำสั่งลงไปในไฟล์ Autorun.inf หลังจากนั้นดึงแฟลชไดรฟ์ออกแล้วเสียบกลับเข้าไปใหม่แล้วมาดูผลกันครับ


จะเห็นได้ว่าในหน้าต่างของ Autoplay นั้นจะขึ้นรูปโปรแกรมเครื่องคิดเลขเป็นเมนูบนสุดโดยมีคำว่าทดสอบจ้าเป็นชื่อของเมนู นี่คือตัวอย่างการทำงานร่วมกันระหว่างไฟล์ Autorun.inf และ Autoplay ซึ่งจะทำให้มีการเรียกใช้คำสั่ง Open ในกรณีที่เป็นแฟลชไดรฟ์ได้ครับ
นั่นคือตัว Autoplay นั้นจะอ่านชื่อที่จะแสดงในส่วนของเมนูจากคำสั่ง Action ในไฟล์ Autorun.inf และจะกำหนดให้ใช้โปรแกรมจากที่ระบุไว้ตรงคำสั่ง Open นั่นเองครับ
ดังนั้นในตอนนี้ถ้าเราทำการกด Enter หรือเลือก OK ก็จะเป็นการเปิดโปรแกรมเครื่องคิดเลข(ไวรัส)ขึ้นมาทำงานทันทีเพราะเป็นเมนูแรกที่เลือกไว้ แต่ไวรัสเท่าที่พบเห็นในช่วงหลังจะไม่ค่อยใช้วิธีนี้กันแล้วเพราะคนทั่วไปมักจะทำการปิดการทำงานของ Autoplay กันหมดแล้ว เพียงแต่อยากให้รู้กันไว้ว่าถ้าหน้า Autoplay มีการขึ้นชื่อโปรแกรมแปลกๆในเมนูแรกก็อย่าเสี่ยงไปคลิก OK หรือกด Enter เข้านะครับเพราะจะกลายเป็นการเรียกไวรัสขึ้นมาทำงานนั่นเองครับ
แถมอีกหน่อยแล้วกันสำหรับคนที่อาจจะบอกว่าเราก็ใช้การเลือก Open folder to view files สิมันก็เปิดไดรฟ์ขึ้นมาให้เลยเหมือนๆกับการพิมพ์ชื่อไดรฟ์นั่นล่ะแล้วก็ปลอดภัยด้วย จะเสียเวลาไปพิมพ์ชื่อไดรฟ์ให้ยุ่งยากทำไม สิบล้านตัวหนังสือไม่เท่าลงมือทำครับมาดูตัวอย่างกันเพราะพบว่ามีไวรัสบางตัวใช้วิธีนี้เหมือนกัน โดยผมแก้ไฟล์ Autorun.inf ให้เป็นแบบนี้ครับ

ซึ่งจะทำให้ได้หน้าต่าง Autoplay แบบนี้ครับ

จะเห็นได้ว่ามีเมนู Open folder to view files อยู่ 2 เมนู ซึ่งเมนูบนสุดนั้นเป็นตัวปลอมนะครับ(สังเกตว่าถ้าของจริง ตรงส่วนใต้ชื่อเมนูซึ่งเป็นตัวสีจางๆจะเขียนว่า using Windows Explorer ครับ ส่วนตัวปลอมข้อความส่วนนั้นจะต่างไปครับ) และแน่นอนว่าถ้ามองผ่านๆไม่ได้สังเกตมากเราก็จะเลือกเมนูบนสุด(ตัวปลอม)เพราะคืดว่าเป็นการเปิดไดรฟ์แบบธรรมดาๆ
และแน่นอนอีกเช่นกันที่มันจะเป็นการเรียกไวรัสขึ้นมาทำงานด้วยคำสั่ง Open=calc.exe จากในไฟล์ Autorun.inf ตามที่ได้อธิบายไปแล้วนั่นเองครับ ส่วนรูปแบบการอ้างอิงไอคอนในบรรทัด Icon= นั้นให้ลองดูเปรียบเทียบจาก หน้า 65(เล่ม 1)นะครับเพราะใช้หลักการเดียวกันครับ
ดังนั้นใครที่เปิด Autoplay ไว้และคิดว่าจะใช้การเลือก Open folder to view files เพื่อเปิดไดรฟ์นั้นก็ขอให้เพิ่มความระมัดระวังขึ้นอีกหน่อยนะครับจะได้ไม่ตกหลุมพรางเจ้าไวรัสมันครับ
และอย่างที่บอกว่าสำหรับไวรัสที่ใช้ช่องทาง Autoplay นั้นมีไม่มากแล้ว(แต่ก็ยังมีอยู่นะครับ)คราวนี้เราจะมาดูวิธีการที่ไวรัสมักจะใช้กันบ้าง โดยผมจะทำการแก้ไขคำสั่งใน Autorun.inf อีกครั้งให้เป็นดังนี้ครับ

จะเห็นว่าไม่มีส่วนที่กำหนดรูปไอคอนแล้ว เนื่องจากไวรัสส่วนใหญ่นั้น มันก็มักจะไม่ใช้ส่วนนี้อยู่แล้วเพราะถ้ารูปไอคอนเปลี่ยนก็จะทำให้ผู้ใช้สงสัยได้ และผมได้เปลี่ยนคำสั่งจาก Open มาเป็น ShellExecute แทนซึ่งเป็นคำสั่งที่สามารถใช้งานกับแฟลชไดรฟ์ได้
เมื่อผมแก้ไขไฟล์ Autorun.inf เรียบร้อยและดึงแฟลชไดรฟ์ออกแล้วเสียบกลับเข้าไปใหม่ ผลก็คือหน้า Autoplay นั้นก็เป็นหน้าตาตามปกติคือบนสุดมีเมนูให้เลือกจัดการกับรูปภาพตามปกติไม่มีรายชื่อโปรแกรมใดๆเนื่องจากผมลบคำสั่ง Action ออกไปแล้วและแน่นอนว่าไม่ได้มีการเปิดโปรแกรมเครื่องคิดเลขขึ้นมาให้แบบอัตโนมัติแต่อย่างใด

อ้าวแล้วคำสั่ง ShellExecute มันทำงานตอนไหนล่ะ มันไม่ได้ทำงานเหมือนคำสั่ง Open ใน CD/DVD เหรอ คำตอบคือทำ แต่ทำเพียงครึ่งเดียวครับ นั่นคือมันจะไม่มีการเปิดโปรแกรมขึ้นมาแบบอัตโนมัติเมื่อเสียบแฟลชไดรฟ์เหมือนที่คำสั่ง Open ทำในกรณีที่ใส่แผ่น CD/DVD เข้าไปในไดรฟ์ครับ แต่สิ่งที่มันทำเหมือนคำสั่ง Open ก็คือเมื่อเรามีการดับเบิ้ลคลิกที่ไดรฟ์มันก็จะทำการเปิดโปรแกรมตามที่มีการระบุไว้ขึ้นมานั่นเองครับ
แต่คำสั่ง ShellExecute ก็มีจุดอ่อนที่เป็นข้อพิรุธให้ผู้ใช้สามารถสังเกตได้นะครับ นั่นก็คือในกรณีที่ใช้คำสั่ง ShellExecute เมื่อคลิกขวาที่ไดรฟ์มันจะขึ้นเมนู Autoplay อยู่บนสุดครับ

ซึ่งเท่าที่พบมานั้นสำหรับไวรัสพวก Script ส่วนใหญ่ก็ยังมีการใช้คำสั่ง ShellExecute อยู่นะครับ แต่ไวรัสที่เป็นพวก .Exe นั้นโดยส่วนใหญ่จะไม่ใช้ ShellExecute แล้วเนื่องจากมีจุดอ่อนที่ทำให้ผิด
สังเกตอย่างที่บอกไปแล้ว แต่จะมีการใช้คำสั่งในรูปแบบอื่นๆแทน ซึ่งข้อดีของคำสั่งรูปแบบใหม่นั้นนอกจากจะทำให้ไม่ขึ้นเมนู Autoplay เหมือนการใช้ ShellExecute แล้ว ข้อดีอีกอย่าง(แต่ไม่ดีกับผู้ใช้)คือถึงแม้ว่าผู้ใช้จะใช้วิธีการคลิกขวาแล้วเลือกเมนูแทนการดับเบิลคลิกก็ไม่สามารถรอดพ้นไวรัสไปได้ไม่ว่าจะเลือกเมนูไหนซึ่งผมขอยกไปอธิบายในหัวข้อถัดไปนะครับ
ผมขอสรุปตรงนี้ก่อนว่า สำหรับกรณีของแฟลชไดรฟ์นั้นจะไม่มีการเปิดโปรแกรมใดๆขึ้นมาเมื่อเราทำการเสียบเข้ากับเครื่องแน่นอนครับไม่ว่าในไฟล์ Autorun.inf นั้นจะระบุคำสั่ง Open หรือ ShellExecute หรือคำสั่งอื่นใดก็ตาม ดังนั้นคนที่กังวลว่าเมื่อเอาแฟลชไดรฟ์ที่ติดไวรัสมาเสียบที่เครื่องแล้วจะมีการติดไวรัสทันทีนั้นขอให้เลิกกังวลไปได้เลยครับ เพราะไวรัสจะมีการทำงานตามคำสั่งในไฟล์ Autorun.inf เมื่อเราทำการดับเบิ้ลคลิกที่ไดรฟ์เท่านั้นครับ ดังนั้นเพื่อหลีกเลี่ยงการเรียกไวรัสขึ้นมาทำงานให้เราใช้วิธีการพิมพ์ชื่อไดรฟ์ในช่อง Address ตามที่ผมแนะนำไว้ในเล่มแรกนะครับ
ถึงตอนนี้อาจจะมีหลายคนแย้งว่าไม่จริงหรอกมั้ง เพราะแฟลชไดรฟ์รุ่นใหม่ๆที่เรียกกันว่า U3 นั้นเมื่อนำมาเสียบในเครื่องมันก็ยังรันโปรแกรมขึ้นมาให้เลยนี่นา ซึ่งเดี๋ยวผมจะอธิบายอีกทีในช่วงท้ายๆนะครับว่าทำไมมันถึงรันโปรแกรมแบบอัตโนมัติจากการเสียบแฟลชไดรฟ์แบบ U3 ได้ เอาเป็นว่าในตอนนี้ผมขอสรุปว่าเพียงแค่การนำแฟลชไดรฟ์ที่ติดไวรัสมาเสียบที่เครื่องนั้นจะยังไม่มีการติดไวรัสอย่างแน่นอนเพราะตัวไวรัสยังไม่ได้โดนเรียกขึ้นมาทำงาน
มีเพียง 2 กรณีเท่านั้นที่จะเป็นการเรียกไวรัสขึ้นมาก็คือช่องทาง Autoplay ในกรณีที่ไวรัสใช้คำสั่ง Action ร่วมกับคำสั่ง Open แล้วเรากด Enter หรือเลือก OK ในหน้าต่าง Autoplay เอง กับอีกช่องทางคือช่องทาง Autorun ซึ่งไวรัสจะใช้วิธีการกำหนดคำสั่งที่จะใช้เรียกตัวเองขึ้นมาไว้ในไฟล์ Autorun.inf แล้วเราไปดับเบิ้ลคลิกที่ตัวไดรฟ์นั้นโดยตรง หรือแม้กระทั่งการคลิกขวาแล้วเลือกเมนูต่างๆครับ
สังคมยังอยู่ได้ เพราะคนไทยยังแบ่งปัน
ความเข้าใจผิดเรื่องการติดไวรัส Autorun
เมื่อเข้าใจความแตกต่างของทั้ง 2 คำคราวนี้เรามาดูความเข้าใจผิดที่ทำให้หลายๆคนถึงกับกลัวการนำแฟลชไดรฟ์มาใช้ในเครื่อง เพราะกังวลกันว่าอาจจะติดไวรัสได้ง่ายๆ สำหรับความเชื่อที่ว่าก็คือหลายๆคนมักจะเชื่อกันว่าถ้ามีไวรัสอยู่ในแฟลชไดรฟ์นั้นๆแล้ว เมื่อนำแฟลชไดรฟ์มาเสียบที่เครื่องเราก็จะติดไวรัสทันที ซึ่งเรื่องนี้ไม่เป็นความจริงนะครับ ลองมาดูตัวอย่างกันครับ โดยผมจะสมมุติให้โปรแกรมเครื่องคิดเลข(calc.exe) เป็นตัวไวรัสซึ่งมีการสร้างไฟล์ Autorun.inf ตามรูปนะครับ
จะเห็นได้ว่าคำสั่งภายในไฟล์ Autorun.inf นั้นจะเหมือนกับตัวอย่างแรกที่เป็นแผ่นติดตั้ง Windows เพียงแต่เปลี่ยนชื่อไฟล์ที่จะให้มันเปิดจาก Setup.exe มาเป็น calc.exe ซึ่งผมสมมุติให้เป็นตัวไวรัสนั่นเองครับ
ตอนนี้หลายคนคงคิดว่าเมื่อนำแฟลชไดรฟ์อันนี้มาเสียบที่เครื่องก็จะต้องติดไวรัสแน่นอน เพราะไวรัสมันก็จะทำงานตามคำสั่งใน Autorun.inf บรรทัด Open=calc.exe ซึ่งเป็นการเรียกตัวไวรัส(สมมุติ)ให้ขึ้นมาทำงาน เหมือนตัวอย่างของแผ่นติดตั้ง Windows ซึ่งเรียกไฟล์ Setup.exe ขึ้นมา
จริงๆแล้วเป็นความคิดที่ผิดนะครับ เนื่องจากว่าคำสั่ง Open ซึ่งกำหนดให้มีการเรียกโปรแกรมขึ้นมาทำงานแบบอัตโนมัตินั้นสามารถที่จะใช้งานได้กับไฟล์ Autorun.inf ซึ่งอยู่ในแผ่น CD/DVD เท่านั้นแต่จะไม่มีผลใดๆถ้าไฟล์ Autorun.inf นั้นอยู่ในแฟลชไดรฟ์
สรุปง่ายๆก็คือว่าถ้าเรานำไฟล์ Autorun.inf ตามตัวอย่างนี้ไปใส่ในแผ่น CD/DVD มันก็จะทำการเปิดโปรแกรมเครื่องคิดเลขให้ตามที่ระบุไว้ในบรรทัด Open=calc.exe ทันทีที่เรานำแผ่นใส่ในเครื่องหรือดับเบิ้ลคลิกที่ไดรฟ์นั้นๆ แต่ในกรณีที่ไฟล์ Autorun.inf ดังกล่าวอยู่ในแฟลชไดรฟ์ คำสั่ง Open ในบรรทัดดังกล่าวจะไม่มีผลใดๆครับไม่ว่าจะเป็นการเปิดโปรแกรมขึ้นมาให้อัตโนมัติหรือแม้แต่มีการดับเบิ้ลคลิกที่ไดรฟ์ก็ตาม
จะมีเพียงส่วนของบรรทัด Icon=calc.exe,0 ซึ่งเป็นตัวกำหนดรูปไอคอนเท่านั้นที่ทำงานโดยจะเห็นได้ว่าไอคอนของแฟลชไดรฟ์จะกลายเป็นรูปเครื่องคิดเลขแล้ว ดังนั้นตอนนี้ถ้าผมนำแฟลชไดรฟ์ดังกล่าวมาเสียบที่เครื่อง หรือแม้ผมจะทำการดับเบิ้ลคลิกที่ไดรฟ์ ตัวไวรัสก็จะยังไม่มีการทำงานนะครับเพราะอย่างที่บอกว่าคำสั่ง Open นั้นใช้ในแฟลชไดรฟ์ไม่ได้ครับ
จากในหัวข้อที่แล้วซึ่งผมบอกไว้ว่าการใช้คำสั่ง Open ของไฟล์ Autorun.inf นั้นจะไม่มีผลใดๆในกรณีที่ไฟล์ Autorun.inf นั้นอยู่ในแฟลชไดรฟ์ ทำไมจึงเป็นเช่นนั้น แล้วไวรัสที่ติดๆกันมันใช้วิธีการไหนล่ะ เดี๋ยวเรามาดูกันครับ
สำหรับสาเหตุที่คำสั่ง Open ในไฟล์ Autorun.inf ไม่มีผลในกรณีที่เป็นแฟลชไดรฟ์นั้นเท่าที่ผมลองค้นข้อมูลดูก็ยังไม่พบรายละเอียดหรือการยืนยันที่ชัดเจนนะครับว่าจะด้วยเหตุผลเพื่อความปลอดภัยหรือเหตุผลอื่นใดกันแน่ แต่ผมเดาเอาเองว่าอาจจะเป็นเพราะว่าตัว Autorun นั้นมีการพัฒนาขึ้นมาใช้ครั้งแรกสมัย Windows 95 ซึ่งแน่นอนว่าสมัยนั้นอุปกรณ์ที่เป็น Removable ก็จะมีเพียงฟล็อปปี้ดิสก์และแผ่น CD เท่านั้น ตัวแฟลชไดรฟ์ยังไม่มีใช้งานกัน จึงไม่ได้มีการกำหนดคำสั่ง Open ให้รองรับตัวแฟลชไดรฟ์ไว้ก็อาจเป็นได้
แต่สุดท้ายแล้วจะด้วยเหตุผลอะไรก็แล้วแต่ก็นับว่าเป็นผลดีกับผู้ใช้ครับ เพราะนับว่าเป็นการเพิ่มความปลอดภัยให้เราในการใช้แฟลชไดรฟ์ได้อีกขั้น นั่นคือเราไม่ต้องกังวลว่าเมื่อนำแฟลชไดรฟ์มาเสียบที่เครื่องแล้วจะมีการรันโปรแกรมหรือไวรัสขึ้นมาแบบอัตโนมัติโดยที่เราไม่รู้ตัว
แต่ไม่ได้หมายความว่าคำสั่ง Open ใน Autorun.inf นั้นจะไม่มีประโยชน์นะครับ เราลองมาดูตัวอย่างอีกสักตัวอย่างหนึ่ง โดยผมเพิ่มเติมคำสั่งลงไปในไฟล์ Autorun.inf หลังจากนั้นดึงแฟลชไดรฟ์ออกแล้วเสียบกลับเข้าไปใหม่แล้วมาดูผลกันครับ
จะเห็นได้ว่าในหน้าต่างของ Autoplay นั้นจะขึ้นรูปโปรแกรมเครื่องคิดเลขเป็นเมนูบนสุดโดยมีคำว่าทดสอบจ้าเป็นชื่อของเมนู นี่คือตัวอย่างการทำงานร่วมกันระหว่างไฟล์ Autorun.inf และ Autoplay ซึ่งจะทำให้มีการเรียกใช้คำสั่ง Open ในกรณีที่เป็นแฟลชไดรฟ์ได้ครับ
นั่นคือตัว Autoplay นั้นจะอ่านชื่อที่จะแสดงในส่วนของเมนูจากคำสั่ง Action ในไฟล์ Autorun.inf และจะกำหนดให้ใช้โปรแกรมจากที่ระบุไว้ตรงคำสั่ง Open นั่นเองครับ
ดังนั้นในตอนนี้ถ้าเราทำการกด Enter หรือเลือก OK ก็จะเป็นการเปิดโปรแกรมเครื่องคิดเลข(ไวรัส)ขึ้นมาทำงานทันทีเพราะเป็นเมนูแรกที่เลือกไว้ แต่ไวรัสเท่าที่พบเห็นในช่วงหลังจะไม่ค่อยใช้วิธีนี้กันแล้วเพราะคนทั่วไปมักจะทำการปิดการทำงานของ Autoplay กันหมดแล้ว เพียงแต่อยากให้รู้กันไว้ว่าถ้าหน้า Autoplay มีการขึ้นชื่อโปรแกรมแปลกๆในเมนูแรกก็อย่าเสี่ยงไปคลิก OK หรือกด Enter เข้านะครับเพราะจะกลายเป็นการเรียกไวรัสขึ้นมาทำงานนั่นเองครับ
แถมอีกหน่อยแล้วกันสำหรับคนที่อาจจะบอกว่าเราก็ใช้การเลือก Open folder to view files สิมันก็เปิดไดรฟ์ขึ้นมาให้เลยเหมือนๆกับการพิมพ์ชื่อไดรฟ์นั่นล่ะแล้วก็ปลอดภัยด้วย จะเสียเวลาไปพิมพ์ชื่อไดรฟ์ให้ยุ่งยากทำไม สิบล้านตัวหนังสือไม่เท่าลงมือทำครับมาดูตัวอย่างกันเพราะพบว่ามีไวรัสบางตัวใช้วิธีนี้เหมือนกัน โดยผมแก้ไฟล์ Autorun.inf ให้เป็นแบบนี้ครับ
ซึ่งจะทำให้ได้หน้าต่าง Autoplay แบบนี้ครับ
จะเห็นได้ว่ามีเมนู Open folder to view files อยู่ 2 เมนู ซึ่งเมนูบนสุดนั้นเป็นตัวปลอมนะครับ(สังเกตว่าถ้าของจริง ตรงส่วนใต้ชื่อเมนูซึ่งเป็นตัวสีจางๆจะเขียนว่า using Windows Explorer ครับ ส่วนตัวปลอมข้อความส่วนนั้นจะต่างไปครับ) และแน่นอนว่าถ้ามองผ่านๆไม่ได้สังเกตมากเราก็จะเลือกเมนูบนสุด(ตัวปลอม)เพราะคืดว่าเป็นการเปิดไดรฟ์แบบธรรมดาๆ
และแน่นอนอีกเช่นกันที่มันจะเป็นการเรียกไวรัสขึ้นมาทำงานด้วยคำสั่ง Open=calc.exe จากในไฟล์ Autorun.inf ตามที่ได้อธิบายไปแล้วนั่นเองครับ ส่วนรูปแบบการอ้างอิงไอคอนในบรรทัด Icon= นั้นให้ลองดูเปรียบเทียบจาก หน้า 65(เล่ม 1)นะครับเพราะใช้หลักการเดียวกันครับ
ดังนั้นใครที่เปิด Autoplay ไว้และคิดว่าจะใช้การเลือก Open folder to view files เพื่อเปิดไดรฟ์นั้นก็ขอให้เพิ่มความระมัดระวังขึ้นอีกหน่อยนะครับจะได้ไม่ตกหลุมพรางเจ้าไวรัสมันครับ
และอย่างที่บอกว่าสำหรับไวรัสที่ใช้ช่องทาง Autoplay นั้นมีไม่มากแล้ว(แต่ก็ยังมีอยู่นะครับ)คราวนี้เราจะมาดูวิธีการที่ไวรัสมักจะใช้กันบ้าง โดยผมจะทำการแก้ไขคำสั่งใน Autorun.inf อีกครั้งให้เป็นดังนี้ครับ
จะเห็นว่าไม่มีส่วนที่กำหนดรูปไอคอนแล้ว เนื่องจากไวรัสส่วนใหญ่นั้น มันก็มักจะไม่ใช้ส่วนนี้อยู่แล้วเพราะถ้ารูปไอคอนเปลี่ยนก็จะทำให้ผู้ใช้สงสัยได้ และผมได้เปลี่ยนคำสั่งจาก Open มาเป็น ShellExecute แทนซึ่งเป็นคำสั่งที่สามารถใช้งานกับแฟลชไดรฟ์ได้
เมื่อผมแก้ไขไฟล์ Autorun.inf เรียบร้อยและดึงแฟลชไดรฟ์ออกแล้วเสียบกลับเข้าไปใหม่ ผลก็คือหน้า Autoplay นั้นก็เป็นหน้าตาตามปกติคือบนสุดมีเมนูให้เลือกจัดการกับรูปภาพตามปกติไม่มีรายชื่อโปรแกรมใดๆเนื่องจากผมลบคำสั่ง Action ออกไปแล้วและแน่นอนว่าไม่ได้มีการเปิดโปรแกรมเครื่องคิดเลขขึ้นมาให้แบบอัตโนมัติแต่อย่างใด
อ้าวแล้วคำสั่ง ShellExecute มันทำงานตอนไหนล่ะ มันไม่ได้ทำงานเหมือนคำสั่ง Open ใน CD/DVD เหรอ คำตอบคือทำ แต่ทำเพียงครึ่งเดียวครับ นั่นคือมันจะไม่มีการเปิดโปรแกรมขึ้นมาแบบอัตโนมัติเมื่อเสียบแฟลชไดรฟ์เหมือนที่คำสั่ง Open ทำในกรณีที่ใส่แผ่น CD/DVD เข้าไปในไดรฟ์ครับ แต่สิ่งที่มันทำเหมือนคำสั่ง Open ก็คือเมื่อเรามีการดับเบิ้ลคลิกที่ไดรฟ์มันก็จะทำการเปิดโปรแกรมตามที่มีการระบุไว้ขึ้นมานั่นเองครับ
แต่คำสั่ง ShellExecute ก็มีจุดอ่อนที่เป็นข้อพิรุธให้ผู้ใช้สามารถสังเกตได้นะครับ นั่นก็คือในกรณีที่ใช้คำสั่ง ShellExecute เมื่อคลิกขวาที่ไดรฟ์มันจะขึ้นเมนู Autoplay อยู่บนสุดครับ
ซึ่งเท่าที่พบมานั้นสำหรับไวรัสพวก Script ส่วนใหญ่ก็ยังมีการใช้คำสั่ง ShellExecute อยู่นะครับ แต่ไวรัสที่เป็นพวก .Exe นั้นโดยส่วนใหญ่จะไม่ใช้ ShellExecute แล้วเนื่องจากมีจุดอ่อนที่ทำให้ผิด
สังเกตอย่างที่บอกไปแล้ว แต่จะมีการใช้คำสั่งในรูปแบบอื่นๆแทน ซึ่งข้อดีของคำสั่งรูปแบบใหม่นั้นนอกจากจะทำให้ไม่ขึ้นเมนู Autoplay เหมือนการใช้ ShellExecute แล้ว ข้อดีอีกอย่าง(แต่ไม่ดีกับผู้ใช้)คือถึงแม้ว่าผู้ใช้จะใช้วิธีการคลิกขวาแล้วเลือกเมนูแทนการดับเบิลคลิกก็ไม่สามารถรอดพ้นไวรัสไปได้ไม่ว่าจะเลือกเมนูไหนซึ่งผมขอยกไปอธิบายในหัวข้อถัดไปนะครับ
ผมขอสรุปตรงนี้ก่อนว่า สำหรับกรณีของแฟลชไดรฟ์นั้นจะไม่มีการเปิดโปรแกรมใดๆขึ้นมาเมื่อเราทำการเสียบเข้ากับเครื่องแน่นอนครับไม่ว่าในไฟล์ Autorun.inf นั้นจะระบุคำสั่ง Open หรือ ShellExecute หรือคำสั่งอื่นใดก็ตาม ดังนั้นคนที่กังวลว่าเมื่อเอาแฟลชไดรฟ์ที่ติดไวรัสมาเสียบที่เครื่องแล้วจะมีการติดไวรัสทันทีนั้นขอให้เลิกกังวลไปได้เลยครับ เพราะไวรัสจะมีการทำงานตามคำสั่งในไฟล์ Autorun.inf เมื่อเราทำการดับเบิ้ลคลิกที่ไดรฟ์เท่านั้นครับ ดังนั้นเพื่อหลีกเลี่ยงการเรียกไวรัสขึ้นมาทำงานให้เราใช้วิธีการพิมพ์ชื่อไดรฟ์ในช่อง Address ตามที่ผมแนะนำไว้ในเล่มแรกนะครับ
ถึงตอนนี้อาจจะมีหลายคนแย้งว่าไม่จริงหรอกมั้ง เพราะแฟลชไดรฟ์รุ่นใหม่ๆที่เรียกกันว่า U3 นั้นเมื่อนำมาเสียบในเครื่องมันก็ยังรันโปรแกรมขึ้นมาให้เลยนี่นา ซึ่งเดี๋ยวผมจะอธิบายอีกทีในช่วงท้ายๆนะครับว่าทำไมมันถึงรันโปรแกรมแบบอัตโนมัติจากการเสียบแฟลชไดรฟ์แบบ U3 ได้ เอาเป็นว่าในตอนนี้ผมขอสรุปว่าเพียงแค่การนำแฟลชไดรฟ์ที่ติดไวรัสมาเสียบที่เครื่องนั้นจะยังไม่มีการติดไวรัสอย่างแน่นอนเพราะตัวไวรัสยังไม่ได้โดนเรียกขึ้นมาทำงาน
มีเพียง 2 กรณีเท่านั้นที่จะเป็นการเรียกไวรัสขึ้นมาก็คือช่องทาง Autoplay ในกรณีที่ไวรัสใช้คำสั่ง Action ร่วมกับคำสั่ง Open แล้วเรากด Enter หรือเลือก OK ในหน้าต่าง Autoplay เอง กับอีกช่องทางคือช่องทาง Autorun ซึ่งไวรัสจะใช้วิธีการกำหนดคำสั่งที่จะใช้เรียกตัวเองขึ้นมาไว้ในไฟล์ Autorun.inf แล้วเราไปดับเบิ้ลคลิกที่ตัวไดรฟ์นั้นโดยตรง หรือแม้กระทั่งการคลิกขวาแล้วเลือกเมนูต่างๆครับ
สังคมยังอยู่ได้ เพราะคนไทยยังแบ่งปัน