**The need:** I need a smart programmer who is familiar with writing drivers for Win 2K/XP that intercept [url removed, login to view] API calls to create a fairly simple .sys driver, and accompanying Win32 app in C or C++ that shows how to call/use the driver. This only needs to work under Windows 2000 and XP.
**The problem:** For security reasons I don't want any other processes to be able to terminate my process (by the TerminateProcess API), or modify my process (by the WriteProcessMemory API).
**The solution:** Both TerminateProcess and WriteProcess can only be used after OpenProcess is called (with proper rights flags set).
I need you to create a driver that hooks calls to NtOpenProcess and checks if the process ID being opened is the same as the process ID of the program that uses the driver (the program we want to protect). If it is, the driver should strip PROCESS_TERMINATE and PROCESS_VM_WRITE out of the requested access flags.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. This includes the driver, and the program that demonstrates how to use the driver.
2) Exclusive and complete copyrights to all work purchased. (No GPL, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site).
Windows 2000, Windows XP