Topic
  • 4 replies
  • Latest Post - ‏2011-10-18T09:51:30Z by PAMG_Petar_Tsankov
PAMG_Petar_Tsankov
PAMG_Petar_Tsankov
5 Posts

Pinned topic Using Rational Purify to test a native windows service

‏2011-10-12T18:10:01Z |
Hi everybody,

I am working on a project related to security testing of protocol implementations.

I would like to test the native IKE implementation of Windows XP, and Purify seems to be the perfect candidate for detecting memory access errors.

Following the procedure described in the "Using PurifyPlus to test unmanaged code running as a Windows Service" article (URL: https://www-304.ibm.com/support/docview.wss?uid=swg21410004) didn't do the job. I instrumented the windows service (c:\windows\system32\lsass.exe), then I run the service again and nothing appears in the Purify GUI window.

I would appreciate any suggestions and hits on what I might be doing wrong. Can somebody at least confirm that what I am trying to achieve is possible, otherwise it makes no sense to purchase the product. If my goal is unclear, I could provide more details.

Note that I had to disable the windows file protection service, which was automatically replacing the instrumented files with the original ones.

Thank you in advance!

Best,
Petar
Updated on 2011-10-18T09:51:30Z at 2011-10-18T09:51:30Z by PAMG_Petar_Tsankov
  • PAMG_Petar_Tsankov
    PAMG_Petar_Tsankov
    5 Posts

    Re: Using Rational Purify to test a native windows service

    ‏2011-10-15T13:53:18Z  
    Anybody?

    I will rephrase my question: Is it possible to instrument a native windows service, i.e. an executable from \windows\system32, and restart the service so that it appears in Purify?

    Thanks,
    Petar
  • SystemAdmin
    SystemAdmin
    2948 Posts

    Re: Using Rational Purify to test a native windows service

    ‏2011-10-15T22:48:42Z  
    Anybody?

    I will rephrase my question: Is it possible to instrument a native windows service, i.e. an executable from \windows\system32, and restart the service so that it appears in Purify?

    Thanks,
    Petar
    Hi Petar,

    Yes, it IS possible to Purify a system service. Usually when I tell
    people it's possible, they haven't yet found the Tech Note that you
    referenced in your original email. In this case, you've found the
    instructions, but it's still not working for you, so I'm not sure what
    to recommend as a next step.

    Perhaps you can refer to the instructions in the Purify online help
    (see attached file). As you'll see, the attached instructions use a
    slightly different approach than the Tech Note you found. Perhaps
    these slight differences will get things working for you.

    Are you starting the Purify GUI ahead of time? Or does it pop up
    automatically (with no data inside)? When following those instructions,
    it's critical that you allow the service to interact with the desktop.
    If you skip this step, there's no way the Purify'd service can send
    data to the Purify GUI --- and this would result in an empty Purify
    window.

    Best regards,
    Don
  • PAMG_Petar_Tsankov
    PAMG_Petar_Tsankov
    5 Posts

    Re: Using Rational Purify to test a native windows service

    ‏2011-10-17T08:23:56Z  
    Hi Petar,

    Yes, it IS possible to Purify a system service. Usually when I tell
    people it's possible, they haven't yet found the Tech Note that you
    referenced in your original email. In this case, you've found the
    instructions, but it's still not working for you, so I'm not sure what
    to recommend as a next step.

    Perhaps you can refer to the instructions in the Purify online help
    (see attached file). As you'll see, the attached instructions use a
    slightly different approach than the Tech Note you found. Perhaps
    these slight differences will get things working for you.

    Are you starting the Purify GUI ahead of time? Or does it pop up
    automatically (with no data inside)? When following those instructions,
    it's critical that you allow the service to interact with the desktop.
    If you skip this step, there's no way the Purify'd service can send
    data to the Purify GUI --- and this would result in an empty Purify
    window.

    Best regards,
    Don
    Hi Don,

    Thanks for your reply. I will try out the instructions listen in the link you provided and I will let you know how it goes :)

    Best,
    Petar
  • PAMG_Petar_Tsankov
    PAMG_Petar_Tsankov
    5 Posts

    Re: Using Rational Purify to test a native windows service

    ‏2011-10-18T09:51:30Z  
    Hi Don,

    Thanks for your reply. I will try out the instructions listen in the link you provided and I will let you know how it goes :)

    Best,
    Petar
    Hi Don,

    your suggestion worked. I think the problem was that the Purify's cache directory was not in my Path.

    Now I just need to find the exact service which I need to instrument (I will be testing the Windows XP's IKE protocol implementation), but for this I can ask the Microsoft people :)

    Thanks a lot for your help!

    Best regards,
    Petar