home *** CD-ROM | disk | FTP | other *** search
/ Reverse Code Engineering RCE CD +sandman 2000 / ReverseCodeEngineeringRceCdsandman2000.iso / RCE / Library / +HCU / 091-100.TXT < prev    next >
Encoding:
Text File  |  2000-05-25  |  38.7 KB  |  1,120 lines

  1. ========================================================
  2. +HCU Maillist          Issue: 90              12/16/1997 
  3. --------------------------------------------------------
  4. Send Articles To:......................... *************
  5. Info, Help, Unsubscription, etc:....... ****************
  6. Web Repository.........................hcuml.home.ml.org
  7. ========================================================
  8.  
  9. CONTENTS:
  10.  
  11. #1  Subject: Ring0 Code
  12.  
  13. #2  Subject: Re: PKZip project
  14.  
  15. #3  Subject: c-dilla
  16.  
  17. ARTICLES:
  18.  
  19. -----#1-------------------------------------------------
  20. Subject: Ring0 Code
  21.  
  22. +trurl:
  23.  
  24. Now what would you want such an evil bit of code for?
  25.  
  26. I have seen it two places, 1) in Pietrek's Windows 95 Systems 
  27. Programming Secrets (so check O'Reilly and Schulman's sites), and 2) in 
  28. Kauler's Windows Assembly Language & Systems Programming.
  29.  
  30. Source code for 2) looks a little like this:
  31. (Case WM_Create):
  32. xcreate:
  33.         call    makering0selector
  34.  
  35.           invoke    GETSTOCKOBJECT,OEM_FIXED_FONT
  36.     mov    hOemFont,ax        ;handle to font.
  37.         ret
  38. .....................
  39. ..DATA
  40. dpmiproc        DD      0       ;dpmi extensions entry point.
  41. RING0CALLGATE LABEL DWORD       ;use this to call ring-0 code.
  42. ring0_off       DW      0       ;callgate selector for RING0FUNC
  43. ring0_cs        DW      0       ;       /
  44. ms_dos_str      DB      "MS-DOS",0
  45. ldt_selector    DW      0       ;for direct writing to ldt.
  46. descriptor_selector DW  0       ;ring0, cannot be accessed directly.
  47. ring0errormsg DB "There was an error creating ring 0 access... aborting 
  48. program.",0
  49.  
  50. ..CODE
  51. makering0selector PROC
  52.  
  53.         invoke GLOBALPAGELOCK,cs
  54.         cmp     ax,0
  55.         je      lockfailed
  56.  
  57.         lea     si,ms_dos_str
  58.         mov     ax,168Ah        ;get dpmi extensions entry point.
  59.         int     2Fh             ;-->es:di (undocumented)
  60. ;***        cmp     al,0                 ?????
  61. ;***        jne      extensionsnotfnd
  62.         mov     WORD PTR[dpmiproc],di   ;save entry point
  63.         mov     WORD PTR[dpmiproc+2],es ;       /
  64.         mov     ax,100h         ;undocumented
  65.         call    dpmiproc        ;-->ax=selector to ldt.
  66.         jc      extensionsnotfnd
  67.         mov     ldt_selector,ax
  68.         mov     es,ax
  69. ;create a ring-0 32-bit descriptor...
  70.          push   es
  71.         invoke  ALLOCSELECTOR,cs        ;-->ax=alias to cs.
  72.          pop    es
  73.         cmp     ax,0
  74.         je      selectorerror
  75.         and     ax,0FFF8h               ;get offset of descriptor in 
  76. ldt.
  77.         mov     bx,ax
  78.         mov     al,es:[bx+5]            ;get access-rights byte.
  79.         and     al,10011111b            ;clear dpl field.#
  80.         mov     es:[bx+5],al
  81.         mov     al,es:[bx+6]            ;get granularity & seg-size 
  82. bits.
  83.         or      al,01000000b            ;set bit7, for 32-bit.
  84.         mov     es:[bx+6],al
  85.         or      bx,0100b                ;set bit-2, selects ldt.leave 
  86. dpl=0.#
  87.         mov     di,bx                   ;temp save.
  88.         mov     descriptor_selector,bx  ;save.
  89. ;create callgate, to above descriptor.....
  90.          push   es
  91.         invoke  ALLOCSELECTOR,0         ;create a descriptor in ldt.
  92.          pop    es
  93.         cmp     ax,0
  94.         je      selectorerror
  95.         mov     ring0_cs,ax             ;save final selector.
  96.         and     ax,0FFF8h               ;get offset of descriptor in 
  97. ldt.
  98.         mov     bx,ax
  99.         mov     es:[bx],ring0func       ;my ring0 code
  100.         mov     es:[bx+2],di            ;ring0 alias.
  101.         mov     BYTE PTR es:[bx+4],0 ;04        ;****??dwords copied to 
  102. stack.
  103.         mov     BYTE PTR es:[bx+5],11101100b    
  104. ;present=1,dpl=3,app=00,type=C
  105.         mov     WORD PTR es:[bx+6],0            ;      (type=C: 386 
  106. callgate)
  107.  
  108. qwert:  jmp     SHORT qwerty
  109. lockfailed:
  110. extensionsnotfnd:
  111. selectorerror:
  112.         lea     si,ring0errormsg
  113.         call     errormsgproc
  114.         call    xquitmessage            ;quit program.
  115. qwerty:
  116.         ret
  117. makering0selector ENDP
  118. ;....................................
  119. freeourselectors PROC
  120.         invoke  FREESELECTOR,descriptor_selector
  121.         invoke  FREESELECTOR,ring0_cs
  122.         invoke GLOBALPAGEUNLOCK,cs
  123.         ret
  124. freeourselectors ENDP
  125. ;....................................
  126.  
  127. That's enough for here. I have the 32-bit source code for the book avail 
  128. at
  129. ******************************************************** 
  130. and the 16-bit on my tools page.
  131.  
  132. mammon_
  133.  
  134. ______________________________________________________
  135. Get Your Private, Free Email at **********************
  136.  
  137. -----#2-------------------------------------------------
  138. Subject: Re: PKZip project
  139.  
  140.  
  141. =46irst just a hello, been subscribed for a few days and this is my
  142. first post. Call me spyder (on here anyhow).=20
  143.  
  144. >Does anyone have the book "C Programmer's Guide to NetBIOS" or the=20
  145. >CRC-32 algorithm used in pkzip?
  146.  
  147. Nope but look for a zip password cracker called pkcrack (ftp search
  148. will find plenty) which comes with c source and certainly includes
  149. CRC32 routines. Source has got to be available for the for the infozip
  150. packages also.=20
  151.  
  152. Also get fzc104.zip which is worth running in case you get lucky with
  153. a short password and also worth running with the biggest word list you
  154. can find because it is so fast. If you really want to do it yourself
  155. then fzc104 may give you some sort of performance target to aim at (or
  156. be embarrassed by).=20
  157.  
  158.  
  159.  
  160. -----#3-------------------------------------------------
  161. Subject: c-dilla
  162.  
  163.  
  164. Hello All,
  165.  
  166. I've been writing a lot of stuff that is not strictly cracking 
  167. related - so back on to topic: I've just had a couple of emails out 
  168. of the blue (from people in different continents) asking for 
  169. information on a protection called 'C-Dilla' - the website is at: 
  170.  
  171. ************************
  172.  
  173. I think I'll take a look and see what I find - have you heard 
  174. anything about this protection? From the sound of it, it should be a
  175. challege (apparently it uses VXDs etc)...
  176.  
  177. Anybody want to check this out with me?
  178.  
  179. Cya,
  180. +ReZiDeNt
  181.  
  182. =====End of Issue 90====================================
  183.  
  184.  
  185.  
  186.  
  187.  
  188. ========================================================
  189. +HCU Maillist          Issue: 91              12/17/1997 
  190. --------------------------------------------------------
  191. Send Articles To:......................... *************
  192. Info, Help, Unsubscription, etc:....... ****************
  193. Web Repository.........................hcuml.home.ml.org
  194. ========================================================
  195.  
  196. CONTENTS:
  197.  
  198. #1  Subject: zipcrack & C-Dilla
  199.  
  200. #2  Subject: Ring0 code
  201.  
  202. ARTICLES:
  203.  
  204. -----#1-------------------------------------------------
  205. Subject: zipcrack & C-Dilla
  206.  
  207. Spyder: thanks for the info; I'd thought that pKcrack was for the old 
  208. pkware algorithm (due to its ineffectiveness ;), but I downloaded a copy 
  209. with the source code and sure enough, the CRC32 code is there, same file 
  210. format...I've never had any luck with fzcrack, though, so hopefully I 
  211. can come up with a better approach (a crytpanalyst I am not).
  212.  
  213. +Rezident:
  214. Do you know of any software that uses this protection scheme? The web 
  215. page was more of a sale pitch for developers; I found little real info 
  216. on it (though I guess they're emailing one of my aliases a .ppt file 
  217. protected by their software, who knows if it will ever get here).
  218.  
  219. Most of these techniques seem pretty standard--looking for a key files, 
  220. encrypting data/exe files on disk, looking for trusted apps, looking for 
  221. a cd-rom, etc.
  222.  
  223. mammon_
  224.  
  225.  
  226.  
  227. ______________________________________________________
  228. Get Your Private, Free Email at **********************
  229.  
  230. -----#2-------------------------------------------------
  231. Subject: Ring0 code
  232.  
  233. Hello mammom_!
  234.  
  235. >Now what would you want such an evil bit of code for?
  236.  
  237. I want to be able to patch a program on the fly without using S.I..
  238. I thought it would be possible to change a code segment attributes for
  239. writing to it and inserting a calls to a dll.
  240. If you think that I'm clueless, please let me know. I'm not very sure
  241. about this :-((
  242.  
  243. big thanks :))
  244.  
  245.     +trurl
  246.  
  247. =====End of Issue 91====================================
  248.  
  249.  
  250.  
  251.  
  252.  
  253. ========================================================
  254. +HCU Maillist          Issue: 92              12/18/1997 
  255. --------------------------------------------------------
  256. Send Articles To:......................... *************
  257. Info, Help, Unsubscription, etc:....... ****************
  258. Web Repository.........................hcuml.home.ml.org
  259. ========================================================
  260.  
  261. CONTENTS:
  262.  
  263. #1  Subject: C-Dilla
  264.  
  265. #2  Subject: Subject: Ring0 code
  266.  
  267. #3  Subject: WM_GETTEXT prob...
  268.  
  269. ARTICLES:
  270.  
  271. -----#1-------------------------------------------------
  272. Subject: C-Dilla
  273.  
  274. Hello mammon,
  275.  
  276. > Do you know of any software that uses this protection scheme? The
  277. > web page was more of a sale pitch for developers; I found little
  278. > real info on it (though I guess they're emailing one of my aliases a
  279. > .ppt file protected by their software, who knows if it will ever get
  280. > here).
  281.  
  282.  I don't know of any software apart from that demo they offered. I
  283. have had two requests mailed to me on the same day from different
  284. people, so I suppose someone must have something protected by this.
  285. One of the messages I recieved mentioned a scientific encyclopaedia of
  286. sorts on CD - the CD was given away freely at a conference, but it
  287. only works for 30 days...
  288.  
  289. > Most of these techniques seem pretty standard--looking for a key
  290. > files, encrypting data/exe files on disk, looking for trusted apps,
  291. > looking for a cd-rom, etc.
  292.  
  293.  Yes, I reckon that, if nothing else, it would suceptible to a brute
  294. force 'push date' approach a la my corel crack.
  295.  
  296. Cya,
  297. +ReZiDeNt
  298.  
  299.  
  300.  
  301. -----#2-------------------------------------------------
  302. Subject: Subject: Ring0 code
  303.  
  304. Well trurl ,i found a couple of days ago,a mem patch made by  BLiTZ / PC97
  305. for "Absolute FTP",i guess he is the one to contact for more info..
  306.  
  307. Seems like a very interesting subject btw,we miss win32 TSRs !!
  308.  
  309. Keep us informed with your research..
  310.  
  311. k0X
  312.  
  313.  
  314. -----#3-------------------------------------------------
  315. Subject: WM_GETTEXT prob...
  316.  
  317.  
  318. Hi +all, 
  319.  
  320. Excuse me if this is a dumb newbie question, but I stumbled over another 
  321. problem:
  322.  
  323. I'm trying to crack "2do", some cheap-sh*t shareware off some cheap 
  324. CD... Anyways, I couldn't immediately find a way how to break into the 
  325. code, so I looked with HWND what the handle of the "Enter 
  326. Regkey"-Dialog-box is. 
  327. Then I set a bmsg dlgboxhandle wm_gettext. I expected WinICE to break 
  328. now and giving me lParam, the address where the string would be stored. 
  329. Unfortunately, WinICE gives me "invalid address" all the time :-( 
  330. Anybody knows what I'm doing wrong ?
  331.  
  332. Thanks in advance,
  333. HalVar
  334.  
  335. ______________________________________________________
  336. Get Your Private, Free Email at **********************
  337.  
  338. =====End of Issue 92====================================
  339.  
  340.  
  341.  
  342.  
  343.  
  344. ========================================================
  345. +HCU Maillist          Issue: 93              12/19/1997 
  346. --------------------------------------------------------
  347. Send Articles To:......................... *************
  348. Info, Help, Unsubscription, etc:....... ****************
  349. Web Repository.........................hcuml.home.ml.org
  350. ========================================================
  351.  
  352. CONTENTS:
  353.  
  354. #1  Subject: pw
  355.  
  356. #2  Subject: zipcrack & Corel Trials
  357.  
  358. ARTICLES:
  359.  
  360. -----#1-------------------------------------------------
  361. Subject: pw
  362.  
  363. Allo everyone,
  364. As been interesting by some new challenges,has anyone infos on
  365. protections used by those xxx web password.
  366. As usual,looking on xxx list warez bored me as looking for serial's
  367. warez,some months ago,i've looking to doing registrations myself to be
  368. fast and effective on what i want,but i just require some nfo's now on
  369. accessing this protection who is new on approach for me.
  370. i will clean my hd,if anyone want my serials reg list,i'l post it!
  371. Let me know all that,and thanx by advance to all ppl for knowledges
  372. like the one on this maillist and the 'we know who'
  373. *********************
  374.  
  375. -----#2-------------------------------------------------
  376. Subject: zipcrack & Corel Trials
  377.  
  378. mammon_ wrote:-
  379.  
  380. >Spyder: thanks for the info; I'd thought that pKcrack was for the old 
  381. >pkware algorithm (due to its ineffectiveness ;), but I downloaded a 
  382. copy 
  383. >with the source code and sure enough, the CRC32 code is there, same 
  384. file 
  385. >format...I've never had any luck with fzcrack, though, so hopefully I 
  386. >can come up with a better approach (a crytpanalyst I am not).
  387.  
  388. You should also have a look here:-
  389. ********************************************************
  390.  
  391. Which is a completely different pkcrack. If you know the position and 
  392. value of at least 13 bytes (and preferably a couple of hundred) in one 
  393. of the encrypted files it will break the zip in a couple of hours. The 
  394. guy wrote a paper on zip plain text attacks, you will find source there 
  395. too - very interesting and useful if you are still working on it. (send 
  396. him a postcard - I will). 
  397.  
  398. I only discovered it today (although the site looked familiar, must have 
  399. been there before without paying attention). 
  400.  
  401. Took about 3 hours to break a zip that had been annoying me using a 200 
  402. byte file that was in a previous version which I did have a password 
  403. for. 
  404.  
  405. fzc does work although I doubt anyone has the patience to find anything 
  406. longer than 5 or 6 character passwords. The word list option is very 
  407. fast, I created about 30Mb of words and names and place names and any 
  408. junk I could find and it just rips through it. You have to get lucky but 
  409. worth a try. 
  410.  
  411.  
  412. Changing the subject to cracking Corel trials - I had a quick look at 
  413. one of them. Sure looks like the trial code is just a wrapper stuck on 
  414. the end of a normal executable. The 1st 6 segments are standard and the 
  415. wrapper adds the last 4 maybe. Of course the standard segments have been 
  416. encrypted. 
  417.  
  418. When faced with a similar problem I have had some success debugging or 
  419. attaching to the program with Turbo debug and dumping the whole text 
  420. segment to a file. Some fancy editing puts the decrypted code back into 
  421. the executable then a  bit more hacking around is required to overcome 
  422. the remaining effects of the wrapper. 
  423.  
  424. This works fine for text segments but others will get corrupted by the 
  425. program and even the loader. You really need to break and get control 
  426. just after the segments have been decrypted. Don't really know enough 
  427. about how Win32 loads and runs programs.  Looks like the wrapper has 
  428. some anti-debug features because turbo debug didn't want to break on 
  429. memory writes to the encrypted segments.
  430.  
  431. Lotus also distributes trials with a similar scheme which I also took a 
  432. quick look at. They encrypt the entire original file and provide a 
  433. separate front end program. The front end appears to spawn a .VXD which 
  434. either hooks into some Win32 execution hook (launching it via OLE 
  435. maybe?) or it might even hook into the memory manager and do the
  436. decryption during paging. 
  437.  
  438. Anyhow just some food for thought.
  439.  
  440. Sypder 
  441. ******************** (if I get round to checking it). 
  442.  
  443.  
  444. ______________________________________________________
  445. Get Your Private, Free Email at **********************
  446.  
  447. =====End of Issue 93====================================
  448.  
  449.  
  450.  
  451.  
  452.  
  453. ========================================================
  454. +HCU Maillist          Issue: 94              12/20/1997 
  455. --------------------------------------------------------
  456. Send Articles To:......................... *************
  457. Info, Help, Unsubscription, etc:....... ****************
  458. Web Repository.........................hcuml.home.ml.org
  459. ========================================================
  460.  
  461. CONTENTS:
  462.  
  463. #1  Subject: javascript
  464.  
  465. ARTICLES:
  466.  
  467. -----#1-------------------------------------------------
  468. Subject: javascript
  469.  
  470. Hello all,
  471. I'm still fairly new to cracking so I'll mostly be hanging back unless
  472. I feel I can contribute something worthwhile.Its not much but atleast 
  473. zero may not call me lazy ***************************************** has 
  474. a online javascript e-mail bomber,if nothing else it may prove usefull 
  475. to examine.Anyway,merry christmas to all.
  476. ooWARLORDoo
  477.  
  478. ______________________________________________________
  479. Get Your Private, Free Email at **********************
  480.  
  481. =====End of Issue 94====================================
  482.  
  483.  
  484.  
  485.  
  486. ========================================================
  487. +HCU Maillist          Issue: 95              12/22/1997 
  488. --------------------------------------------------------
  489. Send Articles To:......................... *************
  490. Info, Help, Unsubscription, etc:....... ****************
  491. Web Repository.........................hcuml.home.ml.org
  492. ========================================================
  493.  
  494. CONTENTS:
  495.  
  496. #1  Subject: unpacking EXEs
  497.  
  498. #2  Subject: MUST READ THIS!DO NOT USE ON-LINE E-MAIL BOMBERS
  499.  
  500. ARTICLES:
  501.  
  502. -----#1-------------------------------------------------
  503. Subject: unpacking EXEs
  504.  
  505. Hi Spyder,
  506.  
  507. > Changing the subject to cracking Corel trials - I had a quick look
  508. > at one of them. Sure looks like the trial code is just a wrapper
  509. > stuck on the end of a normal executable. The 1st 6 segments are
  510. > standard and the wrapper adds the last 4 maybe. Of course the
  511. > standard segments have been encrypted. 
  512.  
  513.  Yes, it is a wrapper...that is why the disassembler chokes on it...I
  514. don't know much (in fact, anything) about executable encryption, so I
  515. can't tell you much more about it.
  516.  
  517. > When faced with a similar problem I have had some success debugging
  518. > or attaching to the program with Turbo debug and dumping the whole
  519. > text segment to a file. Some fancy editing puts the decrypted code
  520. > back into the executable then a  bit more hacking around is required
  521. > to overcome the remaining effects of the wrapper. 
  522.  
  523.  Do you mean there is a way to remove the wrapper? I would be very
  524. interested in how this can be done. I have never seen a tutorial on
  525. generic unpacking of packed/encrypted files, and I've also never seen
  526. a program that can unpack packed windoze executables (although there
  527. are windoze packers around).
  528.  
  529. > This works fine for text segments but others will get corrupted by
  530. > the program and even the loader. You really need to break and get
  531. > control just after the segments have been decrypted. Don't really
  532. > know enough about how Win32 loads and runs programs.  Looks like the
  533. > wrapper has some anti-debug features because turbo debug didn't want
  534. > to break on memory writes to the encrypted segments.
  535.  
  536.  Use SoftICE. I don't think there is any anti-debug code (I didn't
  537. come accross any), although I suspect there is some anti-disassembly
  538. code in there. From what I have observed of the Corel/Elan scheme, the
  539. code is decrypted during and after the date checks, and the code is
  540. altered depending on the outcome. If this protection wrapper could be
  541. removed, the program should run fine, as there is no protection in the
  542. application code itself.
  543.  
  544. It seems as though you are familiar with executable 
  545. encryption/decryption techniques, as well as programming under 
  546. windows? Perhaps I could ask you to consider writing a tutorial on the
  547. subject of unpacking and decrypting packed EXEs, particularly windoze
  548. ones? I'm sure the +HCU would be most grateful for an essay on this
  549. subject.
  550.  
  551. Cya,
  552. +ReZiDeNt
  553.  
  554. -----#2-------------------------------------------------
  555. Subject: MUST READ THIS!DO NOT USE ON-LINE E-MAIL BOMBERS
  556.  
  557.  Hi All,
  558. Unfortunetly I found out too late (after posting about the online e-mail 
  559. bomber) I didn't use it but after checking out Fravias page on anonymity 
  560. I was surfing round trying to find out exactly HOW someone  could 
  561. recieve those files from my computer.I found a site on this and it 
  562. details doing such things but the important thing is that the on-line 
  563. e-mail bomber is more then likely one of those tricks.DO NOT use it 
  564. untill you have visited the web site at 
  565. *************************************** and read/understand what is 
  566. going on,I'm sure most of you already are secure enough in what you are 
  567. doing but I wanted to post this warning and apologize for my  extreme 
  568. stupidity and be guaranteed that my butt will be sore for days to come 
  569. from kicking it :-),again all apologies
  570. ooWARLORDoo
  571.  
  572. ______________________________________________________
  573. Get Your Private, Free Email at **********************
  574.  
  575. =====End of Issue 95====================================
  576.  
  577.  
  578.  
  579.  
  580. ========================================================
  581. +HCU Maillist          Issue: 96              12/23/1997 
  582. --------------------------------------------------------
  583. Send Articles To:......................... *************
  584. Info, Help, Unsubscription, etc:....... ****************
  585. Web Repository.........................hcuml.home.ml.org
  586. ========================================================
  587.  
  588. CONTENTS:
  589.  
  590. #1  Subject: unpacking EXEs
  591.  
  592. #2  Subject: unpacking EXEs.. a precision of the "question" possed and a half solution
  593.  
  594. ARTICLES:
  595.  
  596. -----#1-------------------------------------------------
  597. Subject: unpacking EXEs
  598.  
  599. >>When faced with a similar problem I have had some success debugging
  600. >>or attaching to the program with Turbo debug and dumping the whole
  601. >>text segment to a file. Some fancy editing puts the decrypted code
  602. >>back into the executable then a  bit more hacking around is  
  603. >>required to overcome the remaining effects of the wrapper. 
  604. >
  605. > Do you mean there is a way to remove the wrapper? I would be very
  606. >interested in how this can be done. 
  607.  
  608. Well (we assume) the whole original executable is there, some or all
  609. of it encrypted and some junk stuck on the end. 
  610.  
  611. It has to get decrypted to run so at some stage the contents of the
  612. original executable is lying there in memory (or maybe virtual
  613. memory). If you can grab it you could reconstruct the original
  614. executable or patch the decrypted stuff back in an work on bypassing
  615. the wrapper completely. 
  616.  
  617. It isn't easy but it is a nice solution, the original executable is
  618. what you want, although for these trial versions it has got to be a
  619. lot easier obtaining a real copy from somewhere. 
  620.  
  621. >>Looks like the
  622. >>wrapper has some anti-debug features because turbo debug didn't want
  623. >>to break on memory writes to the encrypted segments.
  624. >
  625. >Use SoftICE. I don't think there is any anti-debug code (I didn't
  626. >come accross any), 
  627.  
  628. I'm not really up to speed with softICE and as far as I know it
  629. doesn't have the ability to dump large lumps of memory to file (which
  630. Turbo Debug does). 
  631.  
  632. >It seems as though you are familiar with executable 
  633. >encryption/decryption techniques, as well as programming under 
  634. >windows? 
  635.  
  636. No not very, it was a required technique to work around a dongle
  637. wrapper which also encrypted some of the wrapped program, thankfully
  638. that only encrypted the .text segment which is unchanged and in memory
  639. all the time the program is running. 
  640.  
  641. >Perhaps I could ask you to consider writing a tutorial on the
  642. >subject of unpacking and decrypting packed EXEs, 
  643.  
  644. Maybe on the dongle stuff, that is a current project isn't it. 
  645.  
  646. Spyder...
  647.  
  648. ______________________________________________________
  649. Get Your Private, Free Email at **********************
  650.  
  651. -----#2-------------------------------------------------
  652. Subject: unpacking EXEs.. a precision of the "question" possed and a half solution
  653.  
  654. Unpacking EXE's is a fairly complicated process and I suppose this is
  655. why nobody ever wrote a tutorial on it. However this does not mean it
  656. cannot be done. The art of unpacking DOS exe and COM files is old and
  657. you can find generic type unpackers on ******************************
  658. or text and sourcecodes on
  659. ************************
  660. The manual task of unpacking DOS exefiles you can find described in
  661. Bugsy's Obsession EXE-dumper 2.4. It should be avaible on both the above
  662. links
  663.  
  664. As for windows EXE files - there exists no single type of windows file
  665. rather there exists multiple different exe-formats of which the most
  666. important is NE, PE and LX.
  667.  
  668. NE stands for New Executable and is the EXE format that MS introduced
  669. for Win 3.1 - it's some what old and IMHO very crappy. It's a 16 bit
  670. format. Documentation about this format exist unfortunately I don't have
  671. a URL. If you wanna figure it out yourself PKLITE comes in a version
  672. that packs this format. (this file format is outdated and is not much
  673. used anymore except by those people who still want their programs to run
  674. on win 3.1 without win32s installed)
  675.  
  676. PE stands for Portable Executable and is the format MS introduced for
  677. windows NT & 95 (hence the portable). And it is by far the most common.
  678. Packers/encrypters for this format are "rare" since encrypting this
  679. fucked up advanced format with lots of possibillities of abuse is pretty
  680. hard. A formal documentation can be found on MS's developers pages or on
  681. ************************
  682. Shortly I'll release the sourcecode for such a crypter myself and I
  683. suppose reading this sourcecode would tell you how to unpack it too. Let
  684. it be said: IT'S a very hard job. It can be done though weee.. :).. In
  685. reference to your specific problem - if the "envelope" does not decrypt
  686. the actual program it can be removed relatively easy: In the PE header
  687. there is a field called entrypointrva and you simply modify this to skip
  688. directly to the "real" program. Finding the real entry point can be like
  689. this:
  690. 1. Run a program by Matt Pietrek called PEDUMP on the EXE file. (if you
  691. don't have it
  692. it'll suffice to find the ImageBase in the PE header (find the
  693. documentation on the above link) ) find the ImageBase. Write this down.
  694. It's likely to be 400000h but could be 10000h if it was linked with an
  695. old linker.
  696. 2. Now load up the program with winice and trace thru the code untill
  697. you feel (back to the idea of "zen") that it calculates the old
  698. entrypoint and jmp's to it. The jump is liable to be preceeded by POPS,
  699. SUB register, [EBP+something] type, MOV register, [EBP+Something] and
  700. for the packagers I've seen so far the JMP itself is either of the type
  701. JMP Register or  db E9h XX,XX,XX.. Trace this jump and write down the
  702. EIP.
  703. 3. Subtract the value found in 2 with the value found in 1 and patch it
  704. into the PE header following the above mentioned documentation at the
  705. point that says: EntryPointRVA.
  706. 4. You've now moved the entrypoint and hopefully everything works as it
  707. should without the start up code.
  708.  
  709. LX stands for linear executable and is a very old format or rather to be
  710. exact covers a bunch of formats one for OS2, etc. The windows format is
  711. used for VxD's. Packers to this format exist (or I think that *ONE*
  712. packager exist) and unpacking this format is a particularly nasty job!
  713.  
  714. If you in general are interested in this kinda topic I strongly suggest
  715. you refer to
  716. ************************
  717. or
  718. *******************************
  719. Or perhaps join Hanno Boeck's EXE mailing list - you can find a link to
  720. it on either of the above pages. 
  721.  
  722. Sorry about the shortness of the above.. I was in a hurry.. 
  723.  
  724. Stone - United Cracking Force
  725.  
  726. =====End of Issue 96====================================
  727.  
  728.  
  729.  
  730.  
  731. ========================================================
  732. +HCU Maillist          Issue: 97              12/24/1997 
  733. --------------------------------------------------------
  734. Send Articles To:......................... *************
  735. Info, Help, Unsubscription, etc:....... ****************
  736. Web Repository.........................hcuml.home.ml.org
  737. ========================================================
  738.  
  739. CONTENTS:
  740.  
  741. #1  Subject: Kremlin v2.0 - Protection against wdasm?
  742.  
  743. #2  Subject: Merry Christmas!
  744.  
  745. #3  Subject: Re: +HCU ML Issue 96
  746.  
  747. ARTICLES:
  748.  
  749. -----#1-------------------------------------------------
  750. Subject: Kremlin v2.0 - Protection against wdasm?
  751.  
  752. Kremlin is one of my favourite encryption tools and i like too follow it
  753. with regards too the cracking aspects. It has been the subject of a
  754. couple of tutorials and the maker himself wrote a letter too fravia in
  755. good faith. When i noticed the new version 2.0 was out i d/l it too see
  756. if he had improved on the last version VERY bad protection. I was
  757. slightly dissapointed too see that the first .dll file i targeted
  758. (KremDLL.dll) housed the guts of the encryption scheme. after doing a
  759. half crack on it so it would accpet any rego key and running the program
  760. successfully i got a strange window with something along the lines of 
  761. "Some how you have enter the correct regerstation key without paying for
  762. Kremlin... (yadda yadda yadda)" this also triggered the program too
  763. cripple itself again. Although it still accepted psuedo-rego keys.
  764.  
  765. Without finding any referance too that particular window in KremDLL.dll
  766. i tried too disassemble main exe with wdasm and got a segment fault. 
  767.  
  768. Maybe he has learnt from the past after all?
  769.  
  770. -faeton
  771.  
  772. -----#2-------------------------------------------------
  773. Subject: Merry Christmas!
  774.  
  775.  
  776.          0              
  777.         / \        MERRY    
  778.        /+  \       CHRISTMAS  
  779.       /  *  \      AND     
  780.       /+   *\      HAPPY   
  781.      /  *  * \     CRACKING! 
  782.      ^^^| |^^^            
  783.                        
  784.    
  785.  
  786. -----#3-------------------------------------------------
  787. Subject: Re: +HCU ML Issue 96
  788.  
  789.  
  790. Hi all, 
  791.  
  792. I got a question concerning an idea for a rather tough protection 
  793. sheme... 
  794.  
  795. Assuming you have a program with certain features disabled in the 
  796. unregistered version, and you can unlock them with a Regkey.
  797.  
  798. Now the programmer manipulates the valid serial in a way to get the 
  799. exact amount of RAM to allocate for the full version with all features. 
  800. Let's take a 14-digit RegKey and you should be pretty safe against any 
  801. kind of brute-force. So even if somebody cracks your "check-serial" 
  802. part, it wouldn't work since the program quits with an error message 
  803. under Win95.
  804.  
  805. HalVar
  806.  
  807.  
  808. ______________________________________________________
  809. Get Your Private, Free Email at **********************
  810.  
  811. =====End of Issue 97====================================
  812.  
  813.  
  814.  
  815.  
  816. ========================================================
  817. +HCU Maillist          Issue: 98              12/25/1997 
  818. --------------------------------------------------------
  819. Send Articles To:......................... *************
  820. Info, Help, Unsubscription, etc:....... ****************
  821. Web Repository.........................hcuml.home.ml.org
  822. ========================================================
  823.  
  824. CONTENTS:
  825.  
  826. #1  Subject: Kremlin 2
  827.  
  828. #2  Subject: EXE wrappers
  829.  
  830. #3  Subject: Thanks for the info
  831.  
  832. #4  Subject: Merry Christmas!
  833.  
  834. ARTICLES:
  835.  
  836. -----#1-------------------------------------------------
  837. Subject: Kremlin 2
  838.  
  839. Kremlin 2
  840. Will be published asap on my page, 
  841. cracked (of course) by Jon
  842.  
  843. later
  844. fravia+
  845.  
  846. -----#2-------------------------------------------------
  847. Subject: EXE wrappers
  848.  
  849. Hi Spyder,
  850.  
  851. > Well (we assume) the whole original executable is there, some or all
  852. > of it encrypted and some junk stuck on the end. 
  853.  
  854.  Yes, the entire EXE is present in the case of Corel products - they
  855. are not limited in any way, apart from the 30-day limit.
  856.  
  857. > memory). If you can grab it you could reconstruct the original
  858. > executable or patch the decrypted stuff back in an work on bypassing
  859. > the wrapper completely. 
  860.  
  861.  Yes, this is what I thought - I just wish I knew *how* :-)
  862.  
  863. > It isn't easy but it is a nice solution, the original executable is
  864. > what you want, although for these trial versions it has got to be a
  865. > lot easier obtaining a real copy from somewhere. 
  866.  
  867.  Well, I've already cracked the Corel/Elan protection, but I still
  868. would like to know how to remove this sort of wrapper. It could be
  869. useful in defeating other protections.
  870.  
  871. > I'm not really up to speed with softICE and as far as I know it
  872. > doesn't have the ability to dump large lumps of memory to file
  873. > (which Turbo Debug does). 
  874.  
  875.  I suspect it probably does, the manuals will doubtless tell you. They
  876. are available from the numega website - the link to the files is on my
  877. webpage: ***************************
  878.  
  879. > Maybe on the dongle stuff, that is a current project isn't it. 
  880.  
  881.  Yes, it is. I wish I had a piece of dongle protected software to
  882. experiment with.
  883.  
  884. Cya,
  885. +ReZiDeNt
  886.  
  887. -----#3-------------------------------------------------
  888. Subject: Thanks for the info
  889.  
  890. Hello Stone,
  891.  
  892. > ****************************** or text and sourcecodes on
  893. > ************************ The manual task of unpacking DOS exefiles
  894. > you can find described in Bugsy's Obsession EXE-dumper 2.4. It
  895. > should be avaible on both the above links
  896.  
  897.  Yes, I've visited both these sites before. Your site I found very
  898. useful, thanks!
  899.  
  900. > Sorry about the shortness of the above.. I was in a hurry.. 
  901.  
  902.  Not at all! It was very useful and imformative! Thanks for taking the
  903. time to explain.
  904.  
  905. Cya,
  906. +ReZiDeNt
  907.  
  908. -----#4-------------------------------------------------
  909. Subject: Merry Christmas!
  910.  
  911. Hi all!
  912.  
  913. The title says it all - Merry Christmas!
  914.  
  915. BTW, has anyone else noticed the almost obcene commercialism that has 
  916. overtaken Christmas?
  917.  
  918. Cya,
  919. +ReZiDeNt
  920.  
  921. =====End of Issue 98====================================
  922.  
  923.  
  924.  
  925.  
  926. ========================================================
  927. +HCU Maillist          Issue: 99              12/26/1997 
  928. --------------------------------------------------------
  929. Send Articles To:......................... *************
  930. Info, Help, Unsubscription, etc:....... ****************
  931. Web Repository.........................hcuml.home.ml.org
  932. ========================================================
  933.  
  934. CONTENTS:
  935.  
  936. #1  Subject: A request for help from obscura: War on a Spammer
  937.  
  938. #2  Subject: Softice 3.2 Touchpad driver?
  939.  
  940. #3  Subject: Thoughts inspired by the Kremlin post
  941.  
  942. ARTICLES:
  943.  
  944. -----#1-------------------------------------------------
  945. Subject: A request for help from obscura: War on a Spammer
  946.  
  947. A request for help... I already told them that 
  948. the only one that could really help (apart from 
  949. +ORC) is +Alistair, tough.
  950.  
  951. later
  952. fravia+
  953.  
  954. -------------Forwarded Message-----------------
  955.  
  956. From:    Mixmaster, *************************************
  957. To:    , **********************
  958. Date:    25-12-97  0:06 
  959. RE:    War on a Spammer
  960.  
  961. Hello Fravia,
  962.  
  963. Knowing how you feel about spam I would like to ask you and the 
  964. best of the students of +ORC to join our fight.
  965.  
  966. Daily our little usenet discussion group has been bombarded with
  967. porno spam from snatchpatch.com. 
  968. We decided to fight this abuse. We were succesful in getting
  969. snatchpatch canceeled from an ISP . When we contacted Holonet.net
  970. the website provider we hit a brick wall. 
  971. Yesterday we started contacting the other customers of Holonet to
  972. let them know of this abuse.
  973.  
  974. The owner of snatchpatch  (Rich Kwiat ) then mailed a virus to one of our members.
  975. I'll paste a copy of the email he received at the bottom.
  976.  
  977. Please consider helping us out. When he starts sending viruses to people it is
  978. time to get serious.
  979.  
  980. A whois lookup will show you that snatchpatch.com and amateurnight.com
  981. are one in the same. Both owned by:
  982.  Administrative Contact:
  983.       Kwiat, Rich  (RK1829)  amateur@AMATEURNIGHT.COM
  984.       954-433-1437
  985.  
  986. Have a happy holiday!
  987.  
  988. Tom
  989.  
  990.  
  991. Here is a copy of the email containg the virus one our members 
  992. received:
  993.  
  994. From rich@ppp.nasionet.net Fri Dec 19 01:51:14 1997
  995.  Received: from LOCALNAME ([202.189.3.9]) by wasp.nasionet.net
  996.      (Netscape Mail Server v1.1) with SMTP id AAA23486
  997.      for **************************** Fri, 19 Dec 1997 17:45:33 +0800
  998.  Message-ID: <349B25BA.7604#ppp.nasionet.net>
  999.  Date: Fri, 19 Dec 1997 17:56:10 -0800
  1000.  From: "Chan Chao Liang" <rich@ppp.nasionet.net>  Save Address Block
  1001. Sender
  1002.  Reply-To: rich@ppp.nasionet.net
  1003.  X-Mailer: Mozilla 3.0 (Win16; I)
  1004.  MIME-Version: 1.0
  1005.  To: *************************
  1006.  Subject: Greeting
  1007.  Content-Type: multipart/mixed; boundary="------------40C03E6C72"
  1008.       Attachment Enclosed!
  1009.  
  1010.                                       
  1011.  
  1012.  
  1013.  Hi Kenny, what'a nice Christian Name. Ha ! Ha ! Haaaaaaaaaaaaa!
  1014.  
  1015.  Some interesting info here is :
  1016.  1. http://www.ultimate.inter.net/ultimate.html
  1017.          is a ultimate babe competition on net, try to go for top 10
  1018.  2. Make sure you open the attached greeting xmas.exe
  1019.  
  1020.  That's all for now. Bye 
  1021.  
  1022.  seewm@tm.net.my
  1023.  
  1024.  
  1025.      Download Attachment: XMAS.EXE
  1026. --end of forwarded message fravia to +HCU general maillist
  1027.  
  1028.  
  1029. -----#2-------------------------------------------------
  1030. Subject: Softice 3.2 Touchpad driver?
  1031.  
  1032. Greetings, Happy Holidays, and a prosperous new year!
  1033.  
  1034. I use Softice 3.2 and can not find a driver for my Cirque Touchpad.  I can
  1035. use the normal mouse, but prefer the touchpad.  Does anyone have a solution
  1036. for this problem?
  1037.  
  1038. Thanks
  1039. zinger
  1040.  
  1041. -----#3-------------------------------------------------
  1042. Subject: Thoughts inspired by the Kremlin post
  1043.  
  1044. Hi all!
  1045.  
  1046. -faeton wrote about the author of Kremlin:
  1047. >Maybe he has learnt from the past after all?
  1048.  
  1049. This reminds me to ask if anybody has checked out the
  1050. new versions of MS MONEY and MS PROJECT, if Microsoft
  1051. has learnt anything from the strainer lessons?
  1052. Probably, they don't care, but it would be fun to
  1053. see whats the situation after a dozen people published
  1054. tutorials about the protection. Some time ago I have
  1055. tried to download them, but gave up (I think both
  1056. above 20 meg now).
  1057.  
  1058. Another thought for shareware programmers who are
  1059. trying to produce crippled demo versions with regkeys
  1060. (like Kremlin). Yesterday, I cracked +RCG's example 4
  1061. and wrote an essay to +Fravia which containes some
  1062. ideas, how to implement a good cripple protection.
  1063.  
  1064. Bye Zer0+
  1065.  
  1066.  
  1067.  
  1068. =====End of Issue 99====================================
  1069.  
  1070.  
  1071.  
  1072.  
  1073. ========================================================
  1074. +HCU Maillist          Issue: 100             12/27/1997 
  1075. --------------------------------------------------------
  1076. Send Articles To:......................... *************
  1077. Info, Help, Unsubscription, etc:....... ****************
  1078. Web Repository.........................hcuml.home.ml.org
  1079. ========================================================
  1080.  
  1081. CONTENTS:
  1082.  
  1083. #1  Subject: Steganography
  1084.  
  1085. #2  Subject: new address
  1086.  
  1087. ARTICLES:
  1088.  
  1089. -----#1-------------------------------------------------
  1090. Subject: Steganography
  1091.  
  1092. Has anyone cracked the pictures on the steganography page?
  1093. The text file includes a lot of goodies (Even a Cosmological view of the closest 2300 galaxies!), but no link to the advanced Steg page.
  1094. Presumabley I either did something wrong, missed out on something, or Fravia was just joking.
  1095. I would be interested if anyone else has had these problems(Some of the links connect to fravia.org, which I can't connect to, so maybe the advanced page is there )
  1096. +Alt-F4
  1097. ____________________________________________________________________
  1098. Get free e-mail and a permanent address at *************************
  1099.  
  1100. -----#2-------------------------------------------------
  1101. Subject: new address
  1102.  
  1103. Hi All!
  1104.  
  1105. First of all: merry Christmas!!! :)
  1106. Second: I've changed my address, now you can find me at 
  1107. ****************
  1108.  
  1109. .... that's all! :)
  1110. byez,
  1111.  
  1112.     .+MaLaTTiA.
  1113.  
  1114. =====End of Issue 100===================================
  1115.  
  1116.  
  1117.  
  1118.  
  1119. -- End --
  1120.