Thursday, March 12, 2009

DONGLE PROTECTION KEY


DONGLE PROTECTION KEY

Suatu ketika aku dapat tawaran pekerjaan yang cukup ”lucu” yaitu mem bypass sebuah program yang terproteksi oleh sebuah parallel port dongle, atau biasa disebut software protection key. Hal ini aku anggap lucu karena aku harus meng”crack” sebuah program milik orang lain. Tetapi setelah melihat case nya yaitu karena dongle key dari perusahaan itu rusak dan untuk membeli yang baru sangat mahal karena harus beli software nya sekaligus maka aku terima juga pekerjaan itu (ujung – ujung nya duit juga akhirnya hik hik.) “poor me”

What’s Dongle

Dongle atau sering disebut hcu atau software protection key, adalah proteksi suatu software menggunakan hardware yang biasa terpasang pada parallel port atau usb port. Fungsinya ?.... tentu saja untuk otoritas dari pembuat software sehingga hanya personal yang diijinkan / membeli saja yang bisa menjalankan software tersebut. Biasanya ada proteksi lain yang berbentuk “register number”, jadi bukan berbentuk hardware, tapi sayangnya untuk type register number ini begitu orang sudah punya, mereka bisa menggandakan ke computer lain. Cukup dengan mengisi register number yang sama. Beda dengan dongle hard key ini, karena untuk menjalankan program tersebut sebuah dongle harus terpasang pada computer tersebut.
Dongle berisi eeprom atau eprom yang berfungsi untuk menerima routine program dari software terkait.

Unfortunately, aku tidak bisa membahas secara detail apa yang aku lakukan untuk melakukan dumper dongle tersebut,(lagi bt nih). Nggak ding ini karena privacy customer aja (huek). Point nya. Lakukan debug atau disassembling pada executable program yang ada. Terus gunakan juga program untuk memonitoring parallel port yang bisa di download di internet.
Sometime, kita menemui program yang ter “dongle” yang langsung melakukan routine “ KEY NOT FOUND”. Ada juga yang beberapa saat setelah program di eksekusi baru muncul error tersebut. Hal ini akan berpengaruh pada pencarian reg routine protection program tersebut saat dilakukan disassembling. Hal yang ke dua menjadi lebih sulit karena call routine yang di cari menjadi semakin “deeper”
Cara yang dilakukan adalah mencari routine yang men secure “call key” yang membolehkan untuk menjalankan program tersebut. Jadi protection code kita cari terus di eliminate menggunakan perintah lain. Pokoknya, melakukan trace assembler pada pekerjaan ini cukup mengasyikkan apalagi program yang di stack cukup complicated.
Bagi anda yang ingin melakukan Crack dongle ini, banyak situs yang bisa dibaca dan dipelajari kok

Contoh debug yang aku ambil dari sebuah situs




the line 2423 is the last one of the HLVDD.DDL (you can read this info clicking in the line and looking at the right details pane of Smartcheck), as we can see at the return from dll the code execute two VB routines _VbaSetSystemError and immediately _VbaStrCopy.
Now i want to look the disassembled code; i run IDA, load the 55mb database, go to names window, search for a _VbaSetSystemError call followed by _VbaStrCopy call.
I jump to the following part of the code:

007FE1F5 push ecx
007FE1F6 lea edx, [ebp+var_60]
007FE1F9 push edx
007FE1FA mov ax, [ebp+var_6C]
007FE1FE push eax
007FE1FF mov cx, [ebp+var_30]
007FE203 push ecx
007FE204 call sub_447FCC <---- call for HLVDD.DLL
007FE209 mov [ebp+var_B4], ax
007FE210 call ds:__vbaSetSystemError <---- (see line 2424)
007FE216 mov dx, [ebp+var_B4]
007FE21D mov [ebp+var_50], dx
007FE221 mov edx, offset off_455B80
007FE226 lea ecx, [ebp+var_28]
007FE229 call ds:__vbaStrCopy <---- (see line 2427)
007FE22F movsx eax, [ebp+var_50]
007FE233 test eax, eax
007FE235 jnz loc_7FE312 <---- Patch here
007FE23B call sub_448044
007FE240 mov [ebp+var_B4], ax
007FE247 call ds:__ vbaSetSystemError
007FE24D movsx ecx, [ebp+var_B4]
007FE254 test ecx, ecx
007FE256 jnz loc_7FE312 <---- Patch here
007FE25C mov edx, [ebp+var_70]
007FE25F push edx
007FE260 lea eax, [ebp+var_78]
007FE263 push eax
007FE264 call ds:__ vbaStrToAnsi

Pada line patch here terletak error hardware key not found. Nha pada alamat ini bisa di patching pakai software tertentu sehingga BYE DONGLE KEY.

Monday, March 2, 2009

PEMROGRAMAN LASER GUIDED VEHICLE ( LGV ) bag 1

PEMROGRAMAN LASER GUIDED VEHICLE ( LGV ) bagian 1

Ayo kita bahas pemrograman LGV dari sisi yang aku tahu dan pernah aku praktekkan.
Karena untuk melakukan programming atau modifikasi program membutuhkan banyak sub software, maka penjelasan disini akan dibagi menjadi beberapa bagian (bersambung).
Jadi pada dasarnya untuk membuat satu system Laser guided vehicle ada 3 system yang harus di penuhi. Yaitu :

  1. Program control LGV (operator control) yang bertugas untuk mengontrol dan memonitor pergerakan LGV via radio modem. Biasanya disebut pc 700 atau sw 700.
  2. Program Communication, yang akan melakukan communication dengan carrier.
  3. Program untuk carrier lgv sendiri yang berisi data – data peripheral LGV, dan layout drawing area.
MEMBUAT POINT LGV

Jadi untuk membuat sebuah jalur LGV carrier ada beberapa variable yang harus kita penuhi, yaitu :

  1. Reflector
  2. Point
  3. Segment
  4. Parameter status dari carrier
  5. Reflector

Penentuan posisi reflector

Sebuah reflector dalam system layout ini harus mempunyai beberapa parameter yaitu :
Reflector ID yaitu nomor dari reflector tersebut. Dalam satu system layout tidak boleh ada nomor ID reflector yang sama. Dalam reflector ID harus di inisialisasi posisi reflector dalam axis x dan y termasuk angle nya. Reflector ID digunakan salah satunya untuk inisialisasi parameter dari pembacaan coordinat position dari carrier.


menu reflector ID

Range reflector yaitu angle dari reflector yang akan mendefinisikan minimal dan maksimal pembacaan coordinat x dan y
Angle dari reflector, sudut kemiringan dari reflector segaris dengan sumbu x dan y dari layout map


reflector id editor

Untuk range deviasi dari setiap reflector ID juga harus kita definisikan di sini, seperti point no 2


reflector status

Untuk membuat point per point dari route lgv carrier yang pertama kita lakukan adalah pendektesian dari reflector – reflector dari point tersebut. Cara yang dilakukan adalah menaruh carrier ke point yang ingin di buat, selanjutnya kita deteksi reflecktor yang terbaca dari situ kita tentukan coordinat dari point tersebut .
Setelah kita dapatkan data coordinat dari point tersebut selanjutnya kita edit program layout seven dan kita masukkan data dari point tersebut.

Gambar editor point

Dari point yang pertama tadi kita melanjutkan ke point yang selanjutnya dengan procedure yang sama seperti diatas, nha jarak antar point ini kita sebut segment. Segment ini ternyata yang menentukan parameter seperti status operasi carrier maju atau mundur, speed carrier yang harus di jalankan dalam procentagean banyak parameter lain disetting dari sini ( ada menu tersendiri).

Menu editor segment

Thursday, February 19, 2009

FLASH IN MODULE

FLASH IN MODULE PENGGANTI HARDISK

Pada mesin - mesin industri, banyak yang menggunakan HMI sebuah komputer baik komputer IPC (industrial PC) atau sudah menggunakan PC desktop.

Untuk mesin dengan operating system lama (DOS atau lainnya) atau bahkan perangkat slotnya masih menggunakan ISA, finally kita akan menghadapi masalah pada media penyimpanan program ( hardisk ). Karena saat sekarang mencari hardisk dengan capacity yang kecil ( di bawah 4 Giga B ) semakin susah. Untuk beli hardisk yang baru dengan capaity seperti itu jelas sudah tidak ada.

Apa solusi nya

Ada product lain yang bisa di pakai, namanya Flash In Module, yaitu sebuah media penyimpan data yang berbentuk EEPROM yang berfungsi sebagai hardisk.
Capacity dari alat ini cukup ( kecil ), untuk fungsi - fungsi yang berhubungan dengan mesin - mesin ini. ada 512 MB, 1 Gb sampai 8 Gb.
dan bagusnya mesin ini akan langsung dikenali oleh bios komputer sebagai Hardisk.




gambar flash in module


Procedure Aplikasinya

Sama seperti menginstall sebuah hardisk baru, yaitu FORMAT, beri SYSTEM (untuk DOS ) atau Install operating system lain ( misal Windows 98).

Harga / cost lebih murah dibandingkan dengan perangkat yang sama untuk keperluan industri keluaran fabrikan nya


module terpasang di mainboard





MEMBUAT PASSWORD EKSEKUSI PADA PLC

Anda programmer mesin dengan menggunakan PLC,........
Dan saat start up mesin yang anda program, ingin ada "upacara - upacara" tertentu supaya mesin anda bisa berjalan automatic.....?

Gampang.


buat eksekusi -eksekusi tertentu pada mesin, misalnya input sensor 00 harus on selama 7 kali, kemudian input limit switch 01 harus on 8 kali

Atau kalau mau lebih detil diolah dengan instruction tertentu yang agak special agar data tersebut dapat di sembunyikan. Atau di buat suatu loop instruction yang agak membingungkan jika di trace oleh orang lain.

Data ini disimpan dalam suatu Data memori sehingga akan menjadi suatu kondisi untuk menjalankan automatic cycle.
Kombinasinya terserah anda.

Monday, February 9, 2009

PEMBUATAN PANEL DENGAN MENGGUNAKAN HMI

Panel dengan touchscreen

Panel yang menggunakan HMI touchscreen sangat memudahkan dalam penempatan part - part yang ada sehingga menjadi lebih ringkas, panel kelihatan kosong karena space yang dibutuhkan hanya sedikit.
Ini terjadi karena banyak fungsi - fungsi dari part yang sudah bisa diambil alih oleh touchscreen panel. Dan keuntungan lain yang bisa kita dapat adalah kita bisa menghilangkan banyak tombol - tombol untuk operasional baik manual maupun automatic.
contoh panel yang pernah saya dan teman buat menggunakan HMI touchscreen.


tampilan pintu panel control

sedang untuk inside panel terlihat "kosong"


inside panel

Touchscreen yang kita pakai adalah milik OMRON yaitu type NT31, cukup old fashion memang, tetapi fitur yang ada masih terbilang complete kalau hanya untuk pengoperasian mesin yang "tidak aneh - aneh".
Hanya saja untuk programming, kita menggunakan NTST ver 4,7. Yang mulai susah di cari di pasaran.

Wednesday, January 28, 2009

MENGUBAH PASSWORD PASSWORD SORTIR PACKING "SYSTEM CERAMIC"

MERUBAH PASSWORD SORTIR PACKING

Di industri mesin keramik tile ada satu mesin untuk mensortir dan mem"packing" keramik yang sudah jadi. Salah satunya diproduksi oleh "SYSTEM CERAMIC".
mesin ini cukup tinggi teknologinya, HMI yang dipakai adalah sebuah pc desktop dengan minimum operating system under DOS, yang akan terhubung dengan perangkat komputer (cpu 80186 berikut peripheral input outputnya).

Karena setting parameter disini cukup banyak (bisa di save menjadi file dengan extention tertentu) maka perubahan value parameter sedikit saja bisa merubah kinerja mesin menjadi tidak sesuai dengan keinginan kita.

Untuk mengubah setting parameter ini, operator harus memasukkan sebuah password "level". Dan password yang diijinkan adalah password level 3.

Adalah sebuah password yang di anggap "general password", yaitu password dengan level 4. Karena dengan password ini operator bisa merubah setting parameter dan melihat apa password level 3 (bisa dirubah kapan saja sesuai keinginan operator).

Password level 4 " syscrb " ini akhirnya menjadi password yang sudah di ketahui oleh banyak orang, maka password level 3 menjadi tidak berguna lagi.

Bagaimana solusinya?

gampang ubah password level 4 ini sehingga hanya user yang di ijinkan saja yang tahu dan bisa membukanya.

Caranya:


Anda punya software buatan "NORTON", yang nama nya PCTOOL, (bisa juga menggunakan software editor lain spt hexeditor dan lain lain, dengan syarat tidak tidak merubah space, sector, dan capacity dari file yang di edit).

kita coba pakai PCTOOL dulu

pc tool yang aku pakai

Dengan program ini kita edit executable file dari program yang ada. yaitu file "iak.exe".
cari character di dalam file tersebut "syscrb"


file iak.exe

kita lihat character yang di beri tanda elips merah, itu adalah character dari password level 4 yang ada. Coba sekarang kita ganti character tersebut dengan keinginan kita.
Tampilan akan seperti di bawah setelah penggantian

password telah diganti menjadi "naufal"

kalau bisa character pengganti tetap 6 character seperti aslinya. terus kalau sudah di update (ada menu untuk itu).
Selesai sudah, password level 4 yang sudah kita rubah. Tidak semua orang bisa membuka general password ini. setelah itu ubahlah password level 3 sesuai dengan keinginan anda sehingga orang yang dijinkan saja yang boleh tahu password ini.
simple kan................

Wednesday, January 21, 2009

MEMBANTU TEMAN

PEMBUATAN PANEL CONTROLL


Dari mesin yang pernah saya pelajari, saya senang dengan model pemrograman PLC dari fabrikan SITI, karena menurut saya dibandingkan dengan fabrikan B n T, SITI mempunyai keunggulan bisa memanfaatkan device input (seperti proximity) yang lebih sedikit, tapi "bermain" di tingkat pemrograman yang bagus.
Instruksi yang di pakai pada pemrograman cukup tinggi sehingga menghasilkan siklus automation yang rumit.
HEBAT.....
Sayangnya untuk pengoperasian mesin, user butuh "perkenalan" yang lebih lama dengan mesin ini.

B nT dengan device input output yang lebih banyak, pemrograman menjadi sedikit lebih simple dan kelebihannya untuk pengoperasian jadi lebih cepat dalam "perkenalannya"

Belajar dari dua fabrikan besar tersebut, ....... saya dapat mengambil point-point yang menguntungkan saat diajak teman membantu membuat automation mesin dengan biaya yang murah dan hasil yang maksimal (dengan memanfaatkan device yang minimal). Ini jika dibandingkan dengan memesan langsung dari vendor - vendor yang resmi.

Dalam proses ini, saya dan teman - teman berusaha menggunakan device input dan output yang se minimal mungkin (murah), tapi menghasilkan automation yang cukup maksimal dan jangan lupa pengoperasian mesin sangat mudah.

jadi dari wiring electric diagram, saya buat se simple mungkin.

Menyenangkan jua membuat design mesin, menerjemahkan ke wiring electric, terjemahkan lagi ke electric panel. Sewaktu pembuatan panel ternyata susah juga. Kami pelajari system layout dari B n T dan SITI, di sini ternyata ada perbedaan dalam penempatan part - part nya., akhirnya kami adopsi 2 system tersebut dan lainnya kami sesuaikan.

Hasilnya seperti ini



gambar bagian atas panel biar agak detil saya bagi dua

bagian bawah panel

ini gambar full panel nya

karena operating panelnya tidak menggunakan touchscreen, maka tombol operasinya cukup banyak. Oh ya kita pakai display panel yang di buat sendiri.

control display panel

PEMROGRAMAN PANEL

Karena sudah nge "Fans" dengan system pemrograman model SITI, akhirnya secara nggak sadar model pemrograman mereka banyak teradopsi di system ini

PCD 892

PCD 892
gambar silicon disk PCD 892

DONGLE KEY

DONGLE KEY
contoh gambar dongle \ software protection key