Welcome guest, is this your first visit? Create Account now to join.
  • Login:

Welcome to the OldVersion.com Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed.

Page 2 of 2 FirstFirst 12
Results 11 to 17 of 17
  1. #11
    Release Candiate 2
    Join Date
    Nov 2006
    Posts
    27

    Default

    Quote Originally Posted by The Dude View Post
    Interesting.......

    I've tried to modify the code of skype before so i can run an older version of it,but if i change 1 byte in the script it wont run (They blocked older versions from running somehow)
    I'm not sure what you want, but...

    You say if you change one byte of the script. This means you've done it already.

    Two questions:
    1. What do you mean by script? To me scripts are interpreted, high level, languages. Your machine, as is the case of all machines, runs on machine code.

    2. What byte did you change and why? When I made the changes I made, my changes served a two-fold purpose. First, I wanted to see how to make changes to a .exe via my Hex Editor (Breakpoint Software: Hex Workshop 4.2). Second, I wanted to see if, in a non-dangerous way, the software ran a checksum on itself. The fact that the other software says 99 now means success with the first and no for the second.

    One thing I could add. To block an older version means there has to have been an old record, either to check or in existence. The solution is to defeat that test in some way.

    Can you make your environment look like you never loaded the newer version?

  2. #12

    Default

    No i mean the script mate.. (Open a hex editor and edit the version #,etc in the actual script (Program))

  3. #13
    Release Candiate 2
    Join Date
    Nov 2006
    Posts
    27

    Default

    Quote Originally Posted by The Dude View Post
    No i mean the script mate.. (Open a hex editor and edit the version #,etc in the actual script (Program))
    I'm assuming you're intending to answer both questions but couldn't for some reason.

    I've never heard of a machine language program being called a script. This is a first.

    If, as you say, you change one byte and the program won't run, then there's one of two reasons. Either the software runs a checksum to be sure it hasn't been modified, or you crashed it with your change.

    As a rule, any text strings that appear (example: "press enter to continue") in your editor are data, and the program will likely not be concerned with what those particular bytes are. However, a string in this manner must be output either via a counter and a loop or a loop and a delimiter. The usual delimiter is zero. However, you need not be concerned with which it is if you make sure you do not change the length of the string.

    What I would suggest, before you draw your conclusion that they've restricted operation as you say, is, first, find a known harmless string. First, start with a working version of the program, soethng you've never modified and that works. Second, let's say that you read the text "Skype: The greatest thing since sliced bread" in your hex editor. What you need to do is change some of those bytes.

    Do something like this: (I'm going by memory and ignoring case)

    T: 54 ---> 5A
    h: 48 ---> 45

    This will change the string to "Skype: zee greatest thing since sliced bread." This should not effect program operation UNLESS a checksum is running. Next, save your changed file, of course, after you've renamed the original working file, and try running your changed file. Verify that, in fact, you can modify. Also, let's say it doesn't run. Verify your editor actually can create a file that runs by simply loading a file, saving it, and then running it again. Mine, for example, didn't save as a .exe. I had to change the suffix to .exe.

    If you've done these things, taken these precautions, and your program doesn't run or crashes, then you can conclude the program is error checking. In which case, you are going to have to disassemble it and find that error testing section and defeat it, either by bypass, NOP, call and immediate return, etc.

    However, the elegant solution is as I said way back. Make your environment look like the new version was never there. Either load the old guy on another machine and use it, or make your machine look old and reload the old version. The registry will need to be reverted back to its previous (before the new load) state.

    Hacking is no walk in the park, and it must be done logically.

  4. #14

    Default

    Originally posted by me2@Nov 29 2006, 06:46 AM
    the software runs a checksum to be sure it hasn't been modified
    Exactly what im saying mate!!
    Last edited by The Dude; 11-30-2006 at 09:07 AM.

  5. #15
    Release Candiate 2
    Join Date
    Nov 2006
    Posts
    27

    Default

    But can you prove it?

    What is your evidence?

    You've shown no evidence that that is indeed what's happening.

    Right now you are looking at a black box, and you don't know why it doesn't work. (No error there.) But what have you done to determine why it doesn't work? All I've heard from you is your assumption for why it doesn't work, but you've given little evidence, no facts to support your assumption. You changed something and now it doesn't work. How do you know trolls didn't intercept what you changed before it could be written? How do you know you're reading good information in the first place?

    For all I know, you thought you were looking at something, you changed it, and your program stopped working, but it had nothing to do with a checksum not matching and everything to do with you sending the computer into la la land, because you screwed up a string load, missed a delimiter, or changed an op code from one that meant something (load a register) to one that was nonsense (jump to an address with no instructions or, worse, unknown instructions that do something) and screwed up the program counter, which eventually halted the processor with respect to your new "script." Machine language can and sometimes does do some real damage. You must have a reasonable assurance that any changes you make will not create indeterminate consequences.

    I don't mean to sound harsh, but, based on the evidence you've presented, you don't sound like someone I can help much, not really. I'm the kind who will help if possible, but, as an analogy, I can't teach Multivariate Calculus to a person who doesn't understand Algebra. Maybe you have the basic math down, but it'll only get you so far. You've shown very little evidence you've actually troubleshot this problem enough to draw a reasonable conclusion.

    However, if you are bound and determined to prove yourself correct, that they did add a routine that verifies a checksum, without proving it first, then knock yourself out. I can't help you anyway. Why? Because I'm not going to disassemble your "script;" you are. If you are correct, then you are going to have to hack the machine language, not me. In short, you are going to have to find where the checksum is being checked. But won't you feel stupid when you find out, eventually, that it wasn't a bad checksum but, rather, was you who broke your "script?"

    True, you may know exactly what you're doing, but you sure don't sound like it to me. Sorry, but I calls 'em as I sees 'em.

  6. #16
    Super Moderator
    Join Date
    May 2003
    Posts
    3,496

    Default

    Quote Originally Posted by The Dude View Post
    skype...They blocked older versions from running somehow
    As I type this message. I am logged onto my skype account using version 1.0.0.1. I was unsuccessful in loggin' in using 0.90.0.6 beta though. These are the Linux versions.

  7. #17

    Default

    Originally posted by locustfurnace@Dec 1 2006, 12:46 AM
    As I type this message. I am logged onto my skype account using version 1.0.0.1. I was unsuccessful in loggin' in using 0.90.0.6 beta though.
    Interesting my friend!!

    I know we found that file "Skypeversionchecker.dll" -- I wonder if that has anything to do with it... (I didnt have that file i dont believe.)
    Last edited by The Dude; 12-02-2006 at 08:43 AM.


 

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •