Well, I have an interesting and irritating problem where I work, and I’m fed up enough to do something about it. (A personal solution.) To read a general description of my issue, check out this Windows newsgroup posting:
http://groups.google.com/group/comp.os.ms-windows.misc/browse_thread/thread/06bf777efc7ef654/73fec92605a56fa7?hl=en#73fec92605a56fa7
I’ve decided instead of writing a custom command shell to handle the problem (COMSPEC) that the network level solution is better since this would likely survive system upgrades and patches.
WinPktFilter seems like a good way to jump start such an effort as intercepting logon scripts (or anything other script) coming in over the network interface and modifying the data in the packet payload to suite according to rules an application (or NT service) applies to the script.
As I said, WinPktFilter seems like a good place to start, BUT…!!! I want to do a minimum proof of concept before I spend any money. Esp. $1500. So I’m looking for some direction in getting started using whatever is free. The helper libraries seem like they would support a proof of concept effort. Can anyone confirm this? Also, the PassThru sample app looked like the best place to get an idea of starting.
For proof of concept, I am only looking to run something from the command line that will:
(1) Sit and grab packets.
(2) Somehow identify which packets come from a remote command script.
(3) Assemble enough packets to reconstruct the entire login script or make sure that commands in each packet payload are not broken.
(4) Display those scripts to the console.
I am not looking to mangle the script/packet data yet, just do enough proof of concept to see the packets and incoming login script assembled. If I can see the packet payload and correctly identify it, the rest will be pretty simple.
I have no Windows kernel mode experience, but I do have previous kernel/driver coding experience under VAX/VMS, so I can comprehend kernel concepts. I just have no idea where to start with C/C++ Windows programming other than the obvious developer environment (MSVC, etc.) and am looking for a little nudge in the right direction.
Thanks for any comments which will help me get started.
-pj