เมื่อก่อนนี้ ปัญหาหนึ่งที่คุณมักจะพบหากนำโปรแกรมที่สร้างจาก AutoIt ไปแจกจ่ายให้กับผู้อื่นก็คือ โปรแกรมป้องกันไวรัสบางโปรแกรมจะแจ้งว่าไฟล์โปรแกรมของคุณเป็นไวรัสหรือหนอน ฯลฯ แม้ปัจจุบันโปรแกรมป้องกันไวรัสจำนวนมากได้ทราบและแก้ไขวิธีการตรวจจับแล้ว ก็ยังมีโปรแกรมบางโปรแกรมที่ยังมีปัญหากับ AutoIt อยู่ ดังตัวอย่างในภาพด้านล่างนี้
ผมสร้างไฟล์โปรแกรมที่แสดงข้อความ โดยใส่โค้ดเพียงบรรทัดเดียวคือ
MsgBox(0,"สวัสดี","123456")
จากนั้นก็คอมไพล์เป็น .exe นำส่งไปตรวจในเว็บตรวจไวรัส ในเว็บแจ้งว่ามีโปรแกรมป้องกันไวรัส 3 โปรแกรมด้วยกันที่มองว่าไฟล์ดังกล่าวเป็นไวรัส
ความผิดพลาดเช่นนี้เกิดจากวิธีการตรวจหาไวรัสที่ยังไม่เข้าใจธรรมชาติของโปรแกรมที่สร้างจาก AutoIt เนื่องจากไฟล์โปรแกรมแบบ .exe ที่สร้างมาจากสคริปต์ AutoIt จะแบ่งข้อมูลในไฟล์ออกเป็น 2 ส่วนด้วยกันคือ
[[A]] Interpreter เป็นส่วนของตัวแปลคำสั่งที่เราเขียนเอาไว้ในสคริปต์ AutoIt ส่วนนี้หากคอมไพล์จาก AutoIt เวอร์ชั่นเดียวกัน จะมีข้อมูลเหมือนกันหมดทุกประการ
[[B]] Script เป็นส่วนเก็บภาษาสคริปต์ที่เราเขียนเอาไว้ โดยทั่วไปพื้นที่ตรงนี้จะมีขนาดข้อมูลใกล้เคียงกับไฟล์ .au3 (ไฟล์สคริปต์ AutoIt ที่ยังไม่ได้คอมไพล์)
ด้วยวิธีการเก็บข้อมูลแบบนี้ปัญหาที่เกิดขึ้นก็คือ ไม่ว่าไฟล์ข้อมูลใดๆ ก็ตามที่คอมไพล์ออกมาเป็น .exe จะมีข้อมูลในส่วนต้น (A) เหมือนกันหมด โปรแกรมตรวจจับไวรัสบางโปรแกรมเมื่อตรวจข้อมูลที่ส่วนต้นแล้วไปตรงกับข้อมูลไวรัส(ที่เขียนมาจากสคริปต์ AutoIt)ในฐานข้อมูล ก็เหมารวมว่าโปรแกรมนั้นๆ เป็นไวรัสทั้งที่ไม่ใช่
อย่างไรก็ตามในปัจจุบันโปรแกรมป้องกันไวรัสส่วนใหญ่จะปรับแก้ไขวิธีการตรวจแล้ว แต่จะมีเพียงบางโปรแกรมเท่านั้นที่ยังเป็นปัญหาอยู่ หากคุณโชคไม่ดีนำไฟล์โปรแกรมไปแจกจ่ายให้กับผู้ใช้บางคนที่ใช้โปรแกรมเหล่านี้ อาจจะถูกเหมาว่าเป็นการแกล้งปล่อยไวรัสใส่เครื่อง
ดังนั้นจุดประสงค์ในบทความนี้จริงๆ ก็คือ ป้องกันความเข้าใจผิดที่อาจเกิดขึ้นได้จากมาใช้งานโปรแกรมที่สร้างจากสคริปต์ AutoIt (เท่าที่ทำโปรแกรมแจกจ่ายในบล็อกนี้ ยังไม่พบปัญหาดังกล่าว แต่ก็กันความเข้าใจผิดไว้ดีกว่า)
หมายเหตุ
คุณสามารถทดสอบได้ด้วยตนเองโดยการ พิมพ์โค้ด MsgBox(0,"สวัสดี","123456") เพียงบรรทัดเดียว แล้วคอมไพล์เป็นโปรแกรม .exe จากนั้นก็นำไฟล์ดังกล่าวไปตรวจยังเว็บ http://www.virustotal.com/ เพื่อดูผลว่ามีโปรแกรมป้องกันไวรัสตัวไหนที่เป็นปัญหากับโปรแกรมที่คุณสร้างขึ้นมา
###จบแล้วครับ###
Sep 3, 2010
Related Post
แจ้งข่าวการเปิดกลุ่ม AutoIt ไทยในเฟสบุ๊ค สำหรับผู้ที่สนใจการเขียนสคริปต์เกี่ยวกับ AutoIt ไม่ว่าจะเป็นการเขียนโปรแกรมทั่วไป หรือเขียนโปรแกรม
วิธีใส่รายละเอียดไฟล์โปรแกรม ที่สร้างจาก AutoIt เมื่อคุณสร้างโปรแกรมจากสคริปต์ AutoIt ขึ้นมาสักโปรแกรมหนึ่ง โดยทั่วไปโปรแก
source code โปรแกรม PSsix Auto Comment 0.2b (สคริปต์เขียนมาจาก AutoIt) ตัว source code ของโปรแกรม PSsix Auto Comment เวอร์ชั่น 0.2b ซึ่งนำมาแจกใ
เขียนบอทเกมด้วย AutoIt : Bot 6 การอ่านเขียน Memory ในเกม นอกจาการใช้ AutoIt เขียนสคริปต์สำหรับอ่านค่าสี เพื่อกำหนดเงื่อนไขเขียนคำ
เขียนบอทเกมด้วย AutoIt : Bot 1 การสั่งกดคีย์ คลิกเม้าส์ ผมได้แยกฟอรั่มสำหรับถามตอบการเขียนสคริปต์บอท (bot) เกมด้วย AutoIt มาระยะหน
ใช้ AutoIt สร้าง HotKey ปุ่มเดียว ปิดเปิดโปรแกรมได้ดั่งใจ :3 ก็มาถึงตอนสุดท้ายสำหรับเรื่องราวการสร้างปุ่ม HotKey กันแล้วนะครับ สำหรับตอ
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment
ส่วนนี้สำหรับแสดงความคิดเห็นทั่วไป สอบถามปัญหาตั้งถามได้ที่ฟอรั่ม
>>> [โปรดอ่าน] เนื่องจาก บทความการใช้งานบางโปรแกรมได้โฟสไปนานแล้ว
โปรแกรมอาจมีการอัปเดท วิธีการใช้งาน อาจใช้ไม่ได้ หรือมีวิธีที่ง่ายกว่าในเวอร์ชั่นใหม่
หากคุณพบว่าวิธีการใช้งานไม่ตรงกับบทความในบล็อกนี้ สามารถแนะนำเพิ่มเติมได้ครับ