หน้าเว็บ

วันจันทร์ที่ 8 ธันวาคม พ.ศ. 2557

GENESIS32: ซ่อนความลับในSCADA

จะทำอย่างไรเมื่อเราต้องการซ่อนความลับในGENESIS32 SCADAเช่นรหัสในการเปิดดูโค้ดVBAที่เราใช้ป้องกันการดูหรือแก้ไขโค้ดVBAเป็นต้น

เทคนิคหนึ่งที่ใช้ได้ดีก็คือFunction Key ที่เมื่อกดคีย์บนแป้นพิมพ์ตามที่กำหนดไว้ก็ให้แสดงข้อความบอกใบ้เป็นรหัสในการเปิดดูโค้ดVBAได้ เป็นต้น เช่นคีย์ Ctrl + Alt + Shift + F9 เป็นต้น จากรูปเมื่อกดคีย์ดังกล่าวผมจะให้แสดงข้อความบอกใบ้ดังรูป

image

ผมก็จะรู้ว่ารหัสปลดล็อกที่ผมสร้างไว้ก็คือ 123456

สร้างFunction Key

ในGraphWorXให้สร้างไฟล์ใหม่ขึ้นมาจากนั้นคลิ้กเมนู Tool > Function Keys.. เพื่อสร้างหรือแก้ไขFunction Key จากนั้นคลิ้ก Add.. > Assign… > เลือก Ctrl, Alt, Shift คลิ้กช่องข้อความแล้วกดปุ่ม F9 บนแป้นพิมพ์เพื่อสร้างFunction Keyคือ Ctrl + Alt + Shift + F9

image

คลิ้ก OK ออกมา

คลิ้กปุ่ม VBA Edit…เพื่อสร้างโค้ดVBA

image

พิมพ์โค้ดแสดงข้อความบอกใบ้

MsgBox "start with 1 and end with 6."

โดยพิมพ์ในSubที่สร้างไว้ให้เราดังรูป


image


จากนั้นทำการสร้างรหัสป้องกันการเข้าดูและแก้ไขโค้ดVBA โดยเลือกTool > Project Properties ให้เลือก Lock project for viewing แล้วกำหนดpasswordเช่นในที่นี้คือ 123456 ให้ตรงกันทั้งสองช่อง คลิ้กOK แล้วกลับไปยังหน้าปกติของGraphWorX


image




จากนั้นSaveไฟล์ แล้วปิดโปรแกรมGraphWorXไป


 


ทดสอบ


ทดสอบโดยเปิดโปรแกรมGraphWorXไปยังไฟล์ข้างต้น ลองเข้าดูโค้ดโดยเลือกเมนู Tools > Macros > Visual Basic Editor


image


เมื่อลองแตกกิ่งProject เพื่อจะดูโค้ด จะพบช่องให้กรอกPasswordเพื่อป้องกันการดูและแก้ไข


image


ให้คลิ้ก Cancel เพื่อออกจากหน้าต่าง


ให้กลับมาที่หน้าGraphWorXปกติ แล้วเข้าโหมดRuntime จากนั้นลองใช้Function Keyโดยพิมพ์ Ctrl + Alt + Shift + F9 ตามที่เราสร้างไว้ก็จะพบข้อความบอกใบ้รหัสข้างต้น(123456) ซึ่งสามารถนำไปปลดล็อกการเข้าดูโค้ดVBAได้

ไม่มีความคิดเห็น:

แสดงความคิดเห็น