ProTüp Sürüm6.3

kresuz
Program Url: www.elronyazilim.com.tr
Program Tipi:Tüp takip programı
     Araçlar:
OllyDbg v1.10
Basit (X)  Orta ()  Zor ( )  Pro ( )


Başlangıç

Program demo şeklinde.Her bölümünün demo limiti farklı.Ayrıca programcı uyanıklık yapmak istemiş.Limit sayılarını tam olarak degil,genelde bir altı ile kontrol ediyor. Bu olayla kontrol noktalarını karıştırmak istemiş.Her güzelin bir kusuru olduğu gibi büyük hatalarda yapmış.Kontrol noktalarının biri bulundugu anda diğerleride kolaylıkla bulunuyor. (İp uçları meydanda.Biraz dikkat olayı çözmek için yeterli oluyor.)
Yazı


Programı olldbg de yükleyip çalıştırın.Stok bölümünde ürün işlemlerine gelin.Demo limite kadar kayıt yapın.Demo sürümde 
kayıt sınırı vardır yazısını görün.Şimdi Ollydbg ye gecin.Karşılaştırma noktalarını bulmak için ApiBreak'tan lstrcmpiA ya 
breakpoint koyun.
 
Simdi programa dönün.Kaydet tusuna bir daha basın.Breakpoint calıstı.Ollydbg ye döndük.

 
Kernel32.dll içindeyiz.F2 ile breakpointi kaldırın.ALT+F9 yapın ki buradan cıkalım.
 
Şimdi programın kullandıgı DLL dosyalarından biri olan msdasgl.dll ye gectik.Buradan program koduna gelene kadar CTRL+F9 yapın.
 
Program kodlarına geldik.Burada ya F8 ile trace edecegiz(çok uzun sürer)yada CTRL+F9 ile hata mesajı görülene kadar gidecegiz. CTRL+F9 en iyisi.Uzun uzun ugrasmayın ben kestirme den söyleyeyim 15 sefer CTRL+F9 yapın sonra F8 ile devam edin.
 
Yukarıdaki yer stok-ürün işleri bölümünün demo limit kontrol yeri.

00603C87  |.  83F8 09           CMP     EAX, 9
00603C8A      7E 23             JLE     SHORT 00603CAF   ==>Eşit ve küçükse kayda devam.
Programcının bize bıraktıgı ip ucuda  ASCII "Bu işlem için yetkiniz yok!..."yazısı bütün limit kontrol yerlerinde var.
Trace ederken bu yazıyı görünce üst satırlara bakın.

PATCH :
00603C8A      7E 23             JLE     SHORT 00603CAF   ==>Eşit ve küçükse kayda devam.
00603C8A      7E 23             Jmp     SHORT 00603CAF   ==>Sonuc ne olursa olsun kayda devam.

Bütün bölümlerde yukarıdakileri uygularsanız ve JLE leri JMP yaparsanız.demo limitler kalkıyor.ultra32 ile programda 
yazan DEMO yazılarınıda silin. 

STOK-YER İŞLEMLERİ:

0060494A  |.  FF52 58           CALL    NEAR DS:[EDX+58]
0060494D  |.  83F8 04           CMP     EAX, 4
00604950      7E 23             JLE     SHORT 00604975
00604952  |.  8B06              MOV     EAX, DS:[ESI]
00604954  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
0060495A  |.  B2 01             MOV     DL, 1
0060495C  |.  E8 8FA0E4FF       CALL    0044E9F0
00604961  |.  8B06              MOV     EAX, DS:[ESI]
00604963  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
00604969  |.  B2 01             MOV     DL, 1
0060496B  |.  E8 A8E3E3FF       CALL    00442D18
00604970  |.  E9 DE020000       JMP     00604C53
00604975  |>  8B06              MOV     EAX, DS:[ESI]
00604977  |.  80B8 14050000 00  CMP     BYTE PTR DS:[EAX+514], 0
0060497E  |.  75 11             JNZ     SHORT 00604991
00604980  |.  B2 03             MOV     DL, 3
00604982  |.  B8 E44C6000       MOV     EAX, 00604CE4                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

STOK-YABANCI STOK

00607E03  |.  FF52 58           CALL    NEAR DS:[EDX+58]
00607E06  |.  83F8 04           CMP     EAX, 4
00607E09      7E 23             JLE     SHORT 00607E2E
00607E0B  |.  8B06              MOV     EAX, DS:[ESI]
00607E0D  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
00607E13  |.  B2 01             MOV     DL, 1
00607E15  |.  E8 D66BE4FF       CALL    0044E9F0
00607E1A  |.  8B06              MOV     EAX, DS:[ESI]
00607E1C  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
00607E22  |.  B2 01             MOV     DL, 1
00607E24  |.  E8 EFAEE3FF       CALL    00442D18
00607E29  |.  E9 81020000       JMP     006080AF
00607E2E  |>  8B06              MOV     EAX, DS:[ESI]
00607E30  |.  80B8 14050000 00  CMP     BYTE PTR DS:[EAX+514], 0
00607E37  |.  75 11             JNZ     SHORT 00607E4A
00607E39  |.  B2 03             MOV     DL, 3
00607E3B  |.  B8 4C816000       MOV     EAX, 0060814C                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

ABONE:

005F9230  |.  FF52 58           CALL    NEAR DS:[EDX+58]
005F9233  |.  83F8 1D           CMP     EAX, 1D
005F9236      7E 2D             JLE     SHORT 005F9265
005F9238  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
005F923D  |.  8B00              MOV     EAX, DS:[EAX]
005F923F  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
005F9245  |.  B2 01             MOV     DL, 1
005F9247  |.  E8 A457E5FF       CALL    0044E9F0
005F924C  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
005F9251  |.  8B00              MOV     EAX, DS:[EAX]
005F9253  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
005F9259  |.  B2 01             MOV     DL, 1
005F925B  |.  E8 B89AE4FF       CALL    00442D18
005F9260  |.  E9 F6070000       JMP     005F9A5B
005F9265  |>  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
005F926A  |.  8B00              MOV     EAX, DS:[EAX]
005F926C  |.  80B8 18050000 00  CMP     BYTE PTR DS:[EAX+518], 0
005F9273  |.  75 11             JNZ     SHORT 005F9286
005F9275  |.  B2 03             MOV     DL, 3
005F9277  |.  B8 549B5F00       MOV     EAX, 005F9B54                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

MASRAF/PRS.

MASRAF:

00615150  |.  FF52 58           CALL    NEAR DS:[EDX+58]
00615153  |.  83F8 1D           CMP     EAX, 1D
00615156      7E 23             JLE     SHORT 0061517B
00615158  |.  8B07              MOV     EAX, DS:[EDI]
0061515A  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
00615160  |.  B2 01             MOV     DL, 1
00615162  |.  E8 8998E3FF       CALL    0044E9F0
00615167  |.  8B07              MOV     EAX, DS:[EDI]
00615169  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
0061516F  |.  B2 01             MOV     DL, 1
00615171  |.  E8 A2DBE2FF       CALL    00442D18
00615176  |.  E9 65020000       JMP     006153E0
0061517B  |>  8B07              MOV     EAX, DS:[EDI]
0061517D  |.  80B8 28050000 00  CMP     BYTE PTR DS:[EAX+528], 0
00615184  |.  75 11             JNZ     SHORT 00615197
00615186  |.  B2 03             MOV     DL, 3
00615188  |.  B8 68546100       MOV     EAX, 00615468                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

PERSONEL İŞLEMLERİ:

00615B2E  |.  FF52 58           CALL    NEAR DS:[EDX+58]
00615B31  |.  83F8 1D           CMP     EAX, 1D
00615B34      7E 2D             JLE     SHORT 00615B63
00615B36  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
00615B3B  |.  8B00              MOV     EAX, DS:[EAX]
00615B3D  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
00615B43  |.  B2 01             MOV     DL, 1
00615B45  |.  E8 A68EE3FF       CALL    0044E9F0
00615B4A  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
00615B4F  |.  8B00              MOV     EAX, DS:[EAX]
00615B51  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
00615B57  |.  B2 01             MOV     DL, 1
00615B59  |.  E8 BAD1E2FF       CALL    00442D18
00615B5E  |.  E9 67010000       JMP     00615CCA
00615B63  |>  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
00615B68  |.  8B00              MOV     EAX, DS:[EAX]
00615B6A  |.  80B8 2C050000 00  CMP     BYTE PTR DS:[EAX+52C], 0
00615B71  |.  75 11             JNZ     SHORT 00615B84
00615B73  |.  B2 03             MOV     DL, 3
00615B75  |.  B8 305D6100       MOV     EAX, 00615D30                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

BANKA/ÇEK
BANKA-HESAP İŞLEMLERİ:

0060D62E  |.  FF52 58           CALL    NEAR DS:[EDX+58]
0060D631  |.  83F8 02           CMP     EAX, 2
0060D634      7E 23             JLE     SHORT 0060D659
0060D636  |.  8B06              MOV     EAX, DS:[ESI]
0060D638  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
0060D63E  |.  B2 01             MOV     DL, 1
0060D640  |.  E8 AB13E4FF       CALL    0044E9F0
0060D645  |.  8B06              MOV     EAX, DS:[ESI]
0060D647  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
0060D64D  |.  B2 01             MOV     DL, 1
0060D64F  |.  E8 C456E3FF       CALL    00442D18
0060D654  |.  E9 0F020000       JMP     0060D868
0060D659  |>  8B06              MOV     EAX, DS:[ESI]
0060D65B  |.  80B8 38050000 00  CMP     BYTE PTR DS:[EAX+538], 0
0060D662  |.  75 11             JNZ     SHORT 0060D675
0060D664  |.  B2 03             MOV     DL, 3
0060D666  |.  B8 CCD86000       MOV     EAX, 0060D8CC                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

ÇEK-ALINAN ÇEK:

0060E932  |.  FF52 58           CALL    NEAR DS:[EDX+58]
0060E935  |.  83F8 09           CMP     EAX, 9
0060E938      7E 23             JLE     SHORT 0060E95D
0060E93A  |.  8B06              MOV     EAX, DS:[ESI]
0060E93C  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
0060E942  |.  B2 01             MOV     DL, 1
0060E944  |.  E8 A700E4FF       CALL    0044E9F0
0060E949  |.  8B06              MOV     EAX, DS:[ESI]
0060E94B  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
0060E951  |.  B2 01             MOV     DL, 1
0060E953  |.  E8 C043E3FF       CALL    00442D18
0060E958  |.  E9 9A040000       JMP     0060EDF7
0060E95D  |>  8B06              MOV     EAX, DS:[ESI]
0060E95F  |.  80B8 38050000 00  CMP     BYTE PTR DS:[EAX+538], 0
0060E966  |.  75 11             JNZ     SHORT 0060E979
0060E968  |.  B2 03             MOV     DL, 3
0060E96A  |.  B8 DCEE6000       MOV     EAX, 0060EEDC                                    ;  ASCII "Bu işlem için yetkiniz yok!..."
0060E96F  |.  E8 A088EDFF       CALL    004E7214

ÇEK-VERİLEN ÇEK:

0060E932  |.  FF52 58           CALL    NEAR DS:[EDX+58]
0060E935  |.  83F8 09           CMP     EAX, 9
0060E938      7E 23             JLE     SHORT 0060E95D
0060E93A  |.  8B06              MOV     EAX, DS:[ESI]
0060E93C  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
0060E942  |.  B2 01             MOV     DL, 1
0060E944  |.  E8 A700E4FF       CALL    0044E9F0
0060E949  |.  8B06              MOV     EAX, DS:[ESI]
0060E94B  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
0060E951  |.  B2 01             MOV     DL, 1
0060E953  |.  E8 C043E3FF       CALL    00442D18
0060E958  |.  E9 9A040000       JMP     0060EDF7
0060E95D  |>  8B06              MOV     EAX, DS:[ESI]
0060E95F  |.  80B8 38050000 00  CMP     BYTE PTR DS:[EAX+538], 0
0060E966  |.  75 11             JNZ     SHORT 0060E979
0060E968  |.  B2 03             MOV     DL, 3
0060E96A  |.  B8 DCEE6000       MOV     EAX, 0060EEDC                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

SATIN ALMA:
SATICI KAYIT:

006591A6  |.  FF52 58           CALL    NEAR DS:[EDX+58]
006591A9  |.  83F8 04           CMP     EAX, 4
006591AC      7E 2D             JLE     SHORT 006591DB
006591AE  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
006591B3  |.  8B00              MOV     EAX, DS:[EAX]
006591B5  |.  8B80 14040000     MOV     EAX, DS:[EAX+414]
006591BB  |.  B2 01             MOV     DL, 1
006591BD  |.  E8 2E58DFFF       CALL    0044E9F0
006591C2  |.  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
006591C7  |.  8B00              MOV     EAX, DS:[EAX]
006591C9  |.  8B80 1C040000     MOV     EAX, DS:[EAX+41C]
006591CF  |.  B2 01             MOV     DL, 1
006591D1  |.  E8 429BDEFF       CALL    00442D18
006591D6  |.  E9 CC020000       JMP     006594A7
006591DB  |>  A1 E0BB6600       MOV     EAX, DS:[66BBE0]
006591E0  |.  8B00              MOV     EAX, DS:[EAX]
006591E2  |.  80B8 3C050000 00  CMP     BYTE PTR DS:[EAX+53C], 0
006591E9  |.  75 11             JNZ     SHORT 006591FC
006591EB  |.  B2 03             MOV     DL, 3
006591ED  |.  B8 34956500       MOV     EAX, 00659534                                    ;  ASCII "Bu işlem için yetkiniz yok!..."

Patchmaker için kodlar:

APATCH
Address    Size   State     Old                               New                              
005F9236     2.   Active    JLE     SHORT 005F9265            JMP     SHORT 005F9265
00603C8A     2.   Active    JLE     SHORT 00603CAF            JMP     SHORT 00603CAF
00604950     2.   Active    JLE     SHORT 00604975            JMP     SHORT 00604975
00607E09     2.   Active    JLE     SHORT 00607E2E            JMP     SHORT 00607E2E
0060D634     2.   Active    JLE     SHORT 0060D659            JMP     SHORT 0060D659
0060E938     2.   Active    JLE     SHORT 0060E95D            JMP     SHORT 0060E95D
00615156     2.   Active    JLE     SHORT 0061517B            JMP     SHORT 0061517B
00615B34     2.   Active    JLE     SHORT 00615B63            JMP     SHORT 00615B63
00616FAC     2.   Active    JLE     SHORT 00616FDB            JMP     SHORT 00616FDB
006591AC     2.   Active    JLE     SHORT 006591DB            JMP     SHORT 006591DB

Bu tutoriali yazmaktaki amacım programcılara ,programlarını daha iyi korumaları için yol göstermektir..
Son olarak şunu söyleyeyim:Bir programı kullanarak para kazanıyorsanız,o programı mutlaka satın alın.Emeğe değer verin...
Lisansız kullanımdan tutoriali hazırlayanlar sorumlu değildir.

Son Notlar
Bu yazıda yazım yanlışları , bilgi hatası olabilir.Eğer bir yanlış bulursanız bana mail atın düzeltmeye çalışırım.

E-Mail: kresuz

;