Open Forex4you Account

Server รัน EA 1000 / ปี

สั่งชื้อคู่มือการโปรแรกม MQL4

Author Topic: [ถาม] วิธีตรวจสอบ URL  (Read 144436 times)

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #30 on: สิงหาคม 01, 2012, 09:20:14 pm »
ลองดูนะครับ  มันรู้ได้ยังไง

โค้ดมีเพียงแค่นี้  ผมเขียนขึ้นมาใหม่ 

#import "InternalDll.dll"
   int CheckAccountNumber();
#import

void init()
{
int li_8 = CheckAccountNumber();

Comment("Account Number = ",li_8);

}

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #31 on: สิงหาคม 01, 2012, 10:22:55 pm »
ถ้ายังงั้นก็ต้องแก้ทุกครั้งที่รัน  มันก็ไม่ใช่การแครกอีเอ  อิอิ

ที่ผมงงอีกอย่างคือทำไมแก้ใน mq4 ก็ไม่ได้ ทั้งที่ค่าในตัวแปรมันก็รับมาจาก mq4
ไม่ใช่แค่ megadroid นะครับ  หลายตัวเลย

อย่างเช่นอีเอ Hyper EA ผมลบคำสั่ง AccountNumber() ทิ้งหมดเกลี้ยงไม่เหลือแล้วแน่นอน
แต่มันดันรีเทิร์น error code ออกมาเป็น 1242  แล้วมันรู้เลขบัญชีผมได้ไง

ตรงนี้ผมไม่แน่ใจนะครับ แต่ถ้าหากว่าตอนชื้อ กับ เจ้าของเค้าของแล้วเค้าให้ระบุ account number ให้เค้าด้วยก็อาจจะเป้นไปได้ว่า เค้านำมันไปใส่ใน code ของ dll แล้ว compile แล้วส่งทั้ง EA และ dll มาให้คุณ ครับ คือเค้ายอมเสียเวลา 1-2 นาทีตอน compile dll ใหม่ให้คุณแต่ป้องกันไม่ให้ dll ตัวนี้ไปใช้ที่ไหนต่อได้ก้เป้นไปได้ครับ เพราะ เวลาคุณส่งค่า account number เข้าไปมันก็ต้องไปเช็กอีกทีว่าตรงกับ เลข ที่ถูกใส่ไวใน dll หรือเปล่าครับ

อีกอย่างนึง สมมุติเขาล็อกเลขบัญชีไว้ใน DLL จริง ยังไงก็ต้องเอาไปเทียบกับคำสั่ง AccountNumber() อยู่ดีนะครับ ซึ่งคำสั่งนี้ผมลบทิ้งเกลี้ยงหมดแล้ว 
ถึงลบออก แต่เงื่อนไข เปรียบเทียบใน  dll  ยังอยู่ครับ   ถึงไม่ใส่ค่าเข้าไปมันก็ยังเปรียบเทียบอยู่ดีครับ

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #32 on: สิงหาคม 01, 2012, 10:28:16 pm »
แล้วมันรู้เลขบัญชีจริงๆของเราได้ยังไงละครับ  ถ้าไม่ใช้คำสั่ง AccountNumber()

ท่านแอดมินลองดูโค้ดโพสข้างบนก่อนครับ มีแค่ 2 บรรทัด

linconz

  • VIP
  • Sr. Member
  • *
  • Posts: 357
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #33 on: สิงหาคม 01, 2012, 10:42:38 pm »
มันอาจจะ check จาก terminal.exe ก็ได้มั๊งครับ ผมก็ไม่ค่อยรู้เรื่องการเขียนโปรแกรมซักเท่าไหร่
เพราะว่า dll สามารถเรียกใช้งานฟังชั่นอื่นที่ทำงานร่วมกับตัว วินโดว์ได้ อันนี้ต้องรอท่าน admin

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #34 on: สิงหาคม 01, 2012, 10:46:49 pm »
หมายถึงเช็กข้อความบน Title Bar แล้วไปตัดหาเลขบัญชีเอาเหรอครับ
ถ้าทำได้ก็รู้หมดเลย เลขบัญชี โบรกเกอร์ เดโมหรือเรียล กราฟคู่ไหน กี่นาที  หลอกมันไม่ได้เลย


linconz

  • VIP
  • Sr. Member
  • *
  • Posts: 357
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #35 on: สิงหาคม 01, 2012, 10:53:17 pm »
ผมว่าน่าจะได้น๊ะครับ ถ้ามันเช็คแบบนี้จริงๆ ด้วยการ เขียน terminal.exe ขึ้นมาอีกอัน เพื่อแก้ไขค่าที่มันเรียกอ่าน แล้วก็ รีเนมอันเก่าซะ
ซึ่งจริงๆ เรายังไม่รู้ว่ามันเช็คจากตรงนี้จริงๆหรือป่าว นี่แค่สันนิษฐานไว้ก่อน เพราะดูจากโค๊ดที่ท่านให้มาแล้ว ไม่มีการเรียกฟังก์ชั่นเช็ค acc จาก mt4 เลย

linconz

  • VIP
  • Sr. Member
  • *
  • Posts: 357
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #36 on: สิงหาคม 01, 2012, 10:56:50 pm »
จากโค๊ดที่ท่านให้มา ลอง เอา vb หรือ vc++ เขียนโปรแกรม terminal.exe ขึ้นมาซักตัวซิครับเอาแบบ title bar เหมือนเลย แล้ว ลองเปลี่ยนชื่อ ตัวเก่าเป็นชื่อใหม่แล้วลองรันโค๊ด mt4 ดูว่า มันอ่านได้ค่าต่างกันหรือป่าว

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #37 on: สิงหาคม 01, 2012, 11:03:10 pm »
จากโค๊ดที่ท่านให้มา ลอง เอา vb หรือ vc++ เขียนโปรแกรม terminal.exe ขึ้นมาซักตัวซิครับเอาแบบ title bar เหมือนเลย แล้ว ลองเปลี่ยนชื่อ ตัวเก่าเป็นชื่อใหม่แล้วลองรันโค๊ด mt4 ดูว่า มันอ่านได้ค่าต่างกันหรือป่าว

ผมเขียนเป็นซะที่ไหนครับ อิอิ

แต่ทั้งวันมานี้ผมรัน terminal อยู่ 3 ตัว แบคเทสอีเออื่นไปด้วย DLL มันไม่รวนครับ มันอ่านถูก  ถ้าเขียนได้แบบนี้คงไม่ต้องกลัวโดนแครกแล้ว

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #38 on: สิงหาคม 01, 2012, 11:55:56 pm »
เค้าใช้การอ่านค่าจาก handle ของโปรแกรมครับ จากรูปผมใช้เครื่องมือ spy++ ใน visual studio แสดงตัวอย่างให้ดูครับว่ามันอ่านค่าออกมาได้ แต่ในความเป้นจริงเค้าใช้หลักการเดียวโปรแกรม โกงเกมนั่นหละครับ ที่ชี้ไปยังไฟล์ exe แล้วค้นหาค่าที่เก็บอยู่ในหน่วยความจำของโปรแกรมได้ครับ โดยที่ภายในโปรแกรมหนึ่งลำดับการเก็บข้อมูลไม่เปลี่ยนแปลง ถึงแม้ว่าตำแหน่งของ memory ที่ได้จาก ram ของเครื่องจะเปลี่ยนแต่ตำแหน่งการเก็บข้อมูลในโปรแกรมไม่เปลี่ยนครับ กล่าวคือ โปรแกรม a.exe ใช้หน่วยความจำจำหน่วน 100 หน่วย โดยที่หน่วยที่ 3 ใช้เก็บชื่อ โปรแกรม ในเวลาใช้งานจริง เมื่อเราใช้เปิดโปรแกรม a มันจะไปจองหน่วยความจำจาก ram มา 100 หน่วยโดยที่หน่วยแรกเร่ิมต้นที่ 00000100   ตัวสุดท้ายอยู่ที่  00000200  ตำแหน่งที่เก็บชื่อของโปรแกรมจะอยู่ที่ 00000103  แต่หากโปรแกรมจองหน่วยความจำเริ่มต้นได้ที่ 00000150  ตัวสุดท้ายอยู่ที่  00000250  ตำแหน่งที่เก็บชื่อของโปรแกรมจะอยู่ที่ 00000153 เป้นต้นดังนั่นถ้าเราอยากได้ค่าจาก mt4 มาใช้ต้องศึกษาครับว่าตำแหน่งที่เก็บข้อมูลพวกนี้อยู่ที่ตำแหน่งเท่าไรของ หน่วยความจำที่โปรแกรมเรียกใช้งานครับ

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #39 on: สิงหาคม 02, 2012, 11:22:57 am »
ท่านแอดมินพอจะเขียนฟังก์ชั่น DLL แบบเขาได้รึเปล่าครับ ถ้าทำได้ผมว่ากันแครกได้สูงว่าพวก Protection ทุกยี่ห้อเลย

แล้ว DLL นี่ใช้โปรแกรมอะไรเขียนภาษาไหนครับ จะลองหัดดูบ้าง เอาแบบเขียนแล้ว decompile ไม่ออก

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #40 on: สิงหาคม 02, 2012, 12:32:19 pm »
ท่านแอดมินพอจะเขียนฟังก์ชั่น DLL แบบเขาได้รึเปล่าครับ ถ้าทำได้ผมว่ากันแครกได้สูงว่าพวก Protection ทุกยี่ห้อเลย

แล้ว DLL นี่ใช้โปรแกรมอะไรเขียนภาษาไหนครับ จะลองหัดดูบ้าง เอาแบบเขียนแล้ว decompile ไม่ออก
DLL ใช้ visual c++ เขียนครับ ส่วนเรื่องเขียนต้องลองครับผมไม่เคยลองเขียนให้มันเช็กข้อมูลของโปรแกรม แต่ผมเคยเขียนว่า ถ้าเอา EA ไปรันบน HDD ลูกอื่นที่ไม่ใช้ลูกนี้ให้ windows มัน shutdown หรือ log off ตัวเองไปเลยครับ

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #41 on: สิงหาคม 02, 2012, 12:59:16 pm »
decompile ไม่ออกชัวนะครับ visual c++ เวอร์ชั่นไหนดีครับ โปรแกรมเล็กๆหน่อย

ถามต่ออีกอย่าง  เคยเห็นเวลาเขาแครก DLL เขาจะตัด DLL เหลือขนาดเล็กนิดเดียว  แล้วสร้างเป็นไฟล์ .DAT มาแทน
แบบนี้ใช้เทคนิคอะไรครับ  ทำไมทำแบบนี้แล้วแครกอีเอได้

admin

  • Administrator
  • Hero Member
  • *****
  • Posts: 2386
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #42 on: สิงหาคม 02, 2012, 01:20:57 pm »
decompile ไม่ออกชัวนะครับ visual c++ เวอร์ชั่นไหนดีครับ โปรแกรมเล็กๆหน่อย

ถามต่ออีกอย่าง  เคยเห็นเวลาเขาแครก DLL เขาจะตัด DLL เหลือขนาดเล็กนิดเดียว  แล้วสร้างเป็นไฟล์ .DAT มาแทน
แบบนี้ใช้เทคนิคอะไรครับ  ทำไมทำแบบนี้แล้วแครกอีเอได้
เท่าที่ผมเห็นนะครับ EA ที่มันสามารถตัดเอา DLL ออกไปได้ หรือเขียน DLL ใหม่ให้เหลือขนาดเล็ก ลง ส่วนใหญ่แล้ว มันเป้น EA ที่ตัวเนื้อ EA ก็ทำงานได้ในตัวมันอยู่แล้วแต่ใช้ Dll เป้นตัวช่วยป้องกันหรือประมวลผลอะไรบ้างอย่างเล็กน้อยเท่านั่นเอง คนที่ crack ก็ตัด dll ออกไปแล้ว  แล้วทำ dll ปลอม เพื่อหลอกให้ EA ทำงานหรือว่าจะแก้ที่เนือ EA ให้ทำงานได้ในตัวมันเองเลยก็มีนิครับ ส่วน file DAT ก็เป็นที่เก้บข้อมูลที่จำเป้นให้ EA เรียกขึ้นมาอ่านได้เท่านั่นเองครับ DAT เป็นการ save แบบไบนารี เวลาเอาพวกโปรแกรม notepad เปิดจะเป้นตัวที่อ่านไม่ออกเท่านั่นเอง  ส่วนข้อมูลที่เขียนก็เป้นข้อมูลที่ใช้หลอกให้ EA ทำงานครับ  เอาตรงๆถ้าเรารู้การทำงานของ EA ทั้งหมด มันก็ย่อมรู้วิธีแก้ไขให้มันทำงานได้ครับ อย่างตัวอย่างที่คุณว่ามาคือมี dll ที่เล็กลง แล้วมีไฟล์ dat เพิ่มเข้ามา เวลา EA เรียก dll ตัวที่มีขนาดเล็กลง ใน Dll มีฟังก์ชั่นให้ไปอ่านข้อมูลสำคัญมาจาก ไฟล์ dat จากนั่นก็ส่งค่าคืนมาให้ EA ครับค่าที่ส่งคือค่าที่คน crack เข้าทราบอย่างแน่นอนแล้วว่าต้องส่งอะไรกลับออกมาบ้าง EA ถึงทำงานได้ครับ

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #43 on: สิงหาคม 02, 2012, 01:36:08 pm »
คือผมงงที่ว่าทำไมในเมื่อเขาแก้ DLL ได้  ทำไมไม่แก้ DLL อย่างเดียวเลย  จำเป็นอะไรทำไมต้องมี DAT โผล่มาอีกไฟล์

แล้วเท่าที่เห็น mq4 เทรดเองไม่ได้ครับ  เงื่อนไขเปิดปิดออเดอร์จะส่งมาจาก DLL หมดเลย
แถมพอแครกออกมาเทรดเหมือนของแท้เกือบจะเป๊ะเลย แต่ไม่ยังเป๊ะ

D_Diamond

  • Hero Member
  • *****
  • Posts: 673
    • Expert Forex Trading
Re: [ถาม] วิธีตรวจสอบ URL
« Reply #44 on: สิงหาคม 02, 2012, 02:17:44 pm »
มีคำถามอีกแล้วครับ

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