Cracking methods and how to stop them

Just starting out? Need help? Post your questions and find answers here.
User avatar
Demivec
Addict
Addict
Posts: 4260
Joined: Mon Jul 25, 2005 3:51 pm
Location: Utah, USA

Re: Cracking methods and how to stop them

Post by Demivec »

utopiomania wrote:No? Because PB uses a copy protection SYSTEM. You pay for the SW, and receives a personal account. IF you
distribute your copy, you feel you could be pointed out if you shared it with the world.. And besides, you paid for
it so why give it away to som chinese kid?

To me this is an ok approch and copy protection as good as anything else. The system I think of is similar, you
receive your personal licence, and If you share the SW on the net, your name and email will be all over the
place, and a commercial protector will make it very hard to remove your fingerprint from it.
[Begin Off-Topic] (The following doesn't describe methods for cracking software)

@utopiomania: I just had a comment on what you referred to as "PB's copy protection SYSTEM". I think the 'system' you describe keeps people from downloading things from the server where PB is stored and not so much the making copies of and using PB products. So in my mind it really prevents server traffic (which I admit may be an unrealistic viewpoint).

It is currently possible for someone to purchase the product and then distribute it contrary to its license, thus no protection from illegal distribution/use.

I agree with others who have expressed that copy protection can take a great deal of time (which = money) and not produce the desired results (i.e. decrease the 'potential' revenue lost) while using that same time and money on improving a product is more likely to produce the desired results (i.e. increase in the 'actual' revenue gained).

My personal experience is that I would rather pay more for something that did what I needed it to do without restrictions such as: needing to frequently connect to the internet, subscriptions good for limited time-periods, multiple passwords and registrations, and so forth. Each copy protection method brings a downside to legitimate users. The serious question of software production is how much protection will the legitimate users put up with before they become the larger portion of 'potential' revenue that is lost instead of those that would illegally copy and distribute the software. The answer will vary for each situation.

An additional comment on PB's methods of distribution. I originally discovered PB because I ran across an illegal copy. I tried it out, visited the forums and purchased a copy and figuratively 'burned' the illegal copy. I never used the demo because I didn't discover it until later. My point in this account is that even when PB's system seems to fail it can succeed. I recommend people acquire the demo and purchase PB at their first opportunity. And just for the record I don't steal, crack, or distribute software illegally.
[/End Off-Topic]
Last edited by Demivec on Tue Jun 01, 2010 3:20 am, edited 1 time in total.
a.ross
User
User
Posts: 21
Joined: Tue Dec 08, 2009 12:50 am

Re: Cracking methods and how to stop them

Post by a.ross »

utopiomania wrote: As I said, you just don't bother reading and understanding previous posts before you jump in, do you?
Admittedly you are right I often don't..... Sometime i just read the first few, decide what i think is going on and reply.
Trond
Always Here
Always Here
Posts: 7446
Joined: Mon Sep 22, 2003 6:45 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by Trond »

Stop talking, go ahead and post your crackme.
User avatar
utopiomania
Addict
Addict
Posts: 1655
Joined: Tue May 10, 2005 10:00 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by utopiomania »

Trond wrote:
Stop talking, go ahead and post your crackme.
Well, I'm working on it right now, only I need to make it a practical SYSTEM because a single crackme.exe protected
by a commercial protector proves nothing.

I need to come up with a demo that works for both parties, customers AND single developers, one that is very hard
to crack, and that isn't in my face, neither as a customer, nor as a developer.

I have a plan now for both sides of the system, and code linecount is increasing. I might post in a separate thread to
get some input along the way, and to avoid 'anything can be cracked'/flamewars type of input on this topic.


Anyways, sorry for talking so much, but, Trond, the 'crackme' is on its way.. So be patient, we'll all see who is the
fool(s) here in the end, might be me, but I don't think so at this point. :)

Here's some SOURCE CODE TEXT protected by an obfuscator, please decode it. My system will be obfuscated at
ASSEMBLY level, so be my guest at trying to crack it. Practise cracking the ASCII below while you wait:

Code: Select all

#define O(b,f,u,s,c,a)b(){int o=f();switch(*p++){X u:_ o s b();X c:_ o a b();
default:p--;_ o;}}
#define t(e,d,_,C)X e:f=fopen(B+d,_);C;fclose(f)
#define U(y,z)while(p=Q(s,y))*p++=z,*p=' '
#define N for(i=0;i<11*R;i++)m[i]&&
#define I "%d %s\n",i,m[i]
#define X ;break;case
#define _ return
#define R 999
typedef char*A;int*C,E[R],L[R],M[R],P[R],l,i,j;char B[R],F[2];A m[12*R],malloc
(),p,q,x,y,z,s,d,f,fopen();A Q(s,o)A s,o;{for(x=s;*x;x++){for(y=x,z=o;*z&&*y==
*z;y++)z++;if(z>o&&!*z)_ x;}_   0;}main(){m[11*R]="E";while(puts("Ok"),gets(B)
)switch(*B){X'R':C=E;l=1;for(i=0;i<R;P[i++]=0);while(l){while(!(s=m[l]))l++;if
(!Q(s,"\"")){U("<>",'#');U("<=",'$');U(">=",'!');}d=B;while(*F=*s){*s=='"'&&j
++;if(j&1||!Q(" \t",F))*d++=*s;s++;}*d--=j=0;if(B[1]!='=')switch(*B){X'E':l=-1
X'R':B[2]!='M'&&(l=*--C)X'I':B[1]=='N'?gets(p=B),P[*d]=S():(*(q=Q(B,"TH"))=0,p
=B+2,S()&&(p=q+4,l=S()-1))X'P':B[5]=='"'?*d=0,puts(B+6):(p=B+5,printf("%d\n",S
()))X'G':p=B+4,B[2]=='S'&&(*C++=l,p++),l=S()-1 X'F':*(q=Q(B,"TO"))=0;p=B+5;P[i
=B[3]]=S();p=q+2;M[i]=S();L[i]=l X'N':++P[*d]<=M[*d]&&(l=L[*d]);}else p=B+2,P[
*B]=S();l++;}X'L':N printf(I)X'N':N free(m[i]),m[i]=0   X'B':_ 0 t('S',5,"w",N
fprintf(f,I))t('O',4,"r",while(fgets(B,R,f))(*Q(B,"\n")=0,G()))X 0:default:G()
;}_ 0;}G(){l=atoi(B);m[l]&&free(m[l]);(p=Q(B," "))?strcpy(m[l]=malloc(strlen(p
)),p+1):(m[l]=0,0);}O(S,J,'=',==,'#',!=)O(J,K,'<',<,'>',>)O(K,V,'$',<=,'!',>=)
O(V,W,'+',+,'-',-)O(W,Y,'*',*,'/',/)Y(){int o;_*p=='-'?p++,-Y():*p>='0'&&*p<=
'9'?strtol(p,&p,0):*p=='('?p++,o=S(),p++,o:P[*p++];}
Trond
Always Here
Always Here
Posts: 7446
Joined: Mon Sep 22, 2003 6:45 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by Trond »

I need to come up with a demo that works for both parties, customers AND single developers, one that is very hard
to crack, and that isn't in my face, neither as a customer, nor as a developer.
And I just need to make a perpetum mobile before dinner. :D

Edit: Your C code doesn't compile. "cr.c:3: error: expected identifier or '(' before 'default'".
User avatar
utopiomania
Addict
Addict
Posts: 1655
Joined: Tue May 10, 2005 10:00 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by utopiomania »

Trond, ta deg en bolle og les posten om igjen. Plukk opp hansken og ha litt fun her, hadde det ikke vært kult
om systemet mitt virket sånn halveis? Kom igjen med noe input som kan få dette til å funke? Sånn jeg ser det
så er du rimelig fokusert og ikke til å spøke med, så kom igjen, mann, men ikke post på autopilot.

Tenk litt, les omigjen, se på kildekoden over. Kan du 'patche' den for å forstå noe. :) Om systemet mitt er
beskyttet på samme måten på assembly level tror jeg drittungene har et problem, men d er mulig jeg tar feil.

Fokus mann. Satan finner du i detaljene. :) Drit i compile feilen din, det er liten bug i kildekoden. Crack den
og pek på den for meg.
Trond
Always Here
Always Here
Posts: 7446
Joined: Mon Sep 22, 2003 6:45 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by Trond »

Jeg kan jo ikke C engang... Jeg kommer sannsynligvis ikke til å klare å cracke noe vanskelig hvis ikke det er grove feil.

Code: Select all

cr.c:20: error: void value not ignored as it ought to be
Tar meg heller en bolle.
Image
User avatar
utopiomania
Addict
Addict
Posts: 1655
Joined: Tue May 10, 2005 10:00 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by utopiomania »

:D Cool pic. Enjoy your Bolle..
Trond
Always Here
Always Here
Posts: 7446
Joined: Mon Sep 22, 2003 6:45 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by Trond »

Is it supposed to crash when you type in 123123123?
User avatar
utopiomania
Addict
Addict
Posts: 1655
Joined: Tue May 10, 2005 10:00 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by utopiomania »

It? What is it?
User avatar
DoubleDutch
Addict
Addict
Posts: 3220
Joined: Thu Aug 07, 2003 7:01 pm
Location: United Kingdom
Contact:

Re: Cracking methods and how to stop them

Post by DoubleDutch »

utopiomania: I cannot see the point of using a source code obfuscator on a compiled language?
https://deluxepixel.com <- My Business website
https://reportcomplete.com <- School end of term reports system
User avatar
utopiomania
Addict
Addict
Posts: 1655
Joined: Tue May 10, 2005 10:00 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by utopiomania »

Here's some pause music..nice..

check out the fireworks at 02:11 :)
User avatar
DoubleDutch
Addict
Addict
Posts: 3220
Joined: Thu Aug 07, 2003 7:01 pm
Location: United Kingdom
Contact:

Re: Cracking methods and how to stop them

Post by DoubleDutch »

This thread has turned to nonsense. Can a mod lock it before it gets any worse? :twisted:
https://deluxepixel.com <- My Business website
https://reportcomplete.com <- School end of term reports system
User avatar
PureLeo
Enthusiast
Enthusiast
Posts: 221
Joined: Fri Jan 29, 2010 1:05 pm
Location: Brazil

Re: Cracking methods and how to stop them

Post by PureLeo »

Code: Select all

Tenk litt, les omigjen, se på kildekoden over. Kan du 'patche' den for å forstå noe. :) Om systemet mitt er
beskyttet på samme måten på assembly level tror jeg drittungene har et problem, men d er mulig jeg tar feil.
Looks pretty obfuscated for me :P can't crack it
Trond
Always Here
Always Here
Posts: 7446
Joined: Mon Sep 22, 2003 6:45 pm
Location: Norway

Re: Cracking methods and how to stop them

Post by Trond »

DoubleDutch wrote:utopiomania: I cannot see the point of using a source code obfuscator on a compiled language?
It's true, especially on assembly language it's not very effective. However his code is also using a virtual machine.
Post Reply