Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C / C++ / MFC
  4. Internet Filtering Applications

Internet Filtering Applications

Scheduled Pinned Locked Moved C / C++ / MFC
c++comsysadminjson
3 Posts 3 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    dipple
    wrote on last edited by
    #1

    OK, I have an internet filtering application that I have inherited. The current application does the internet filtering via a direct interface with Internet Explorer thus it does not work with FireFox or other non IE browsers. So, I have been researching for days. I have not come to a clear solution on how the existing content filtering applications may have implimented there filtering. Does anyone have experience writting an application that will filter internet content regardless of the internet browser. I would like to display a very simple Access denied type page in the browser. Just filtering based on the URL to start with would be good. I am very open to using any language and comfortable with C++. Just seems that there are a large number of applications that already do this and I would be supprised to find that they are all using something like a TDI Hook DLL, Winsock LSP, etc... Just seems there should be an exposed API. I really do not want the user to have to set proxy settings, I am still researching a silent/in-visible proxy server and looking into a Filter Monikor but, any suggestions on doing this would be much appreciated. I am getting a little frustrated that I have not been able to find good information for doing this, Like I mentioned there are a ton of applications already doing this so it seems that I am missing something simple. Thanks Eric Daymark Software, LLC eric@daymarksoftware.com

    L 1 Reply Last reply
    0
    • D dipple

      OK, I have an internet filtering application that I have inherited. The current application does the internet filtering via a direct interface with Internet Explorer thus it does not work with FireFox or other non IE browsers. So, I have been researching for days. I have not come to a clear solution on how the existing content filtering applications may have implimented there filtering. Does anyone have experience writting an application that will filter internet content regardless of the internet browser. I would like to display a very simple Access denied type page in the browser. Just filtering based on the URL to start with would be good. I am very open to using any language and comfortable with C++. Just seems that there are a large number of applications that already do this and I would be supprised to find that they are all using something like a TDI Hook DLL, Winsock LSP, etc... Just seems there should be an exposed API. I really do not want the user to have to set proxy settings, I am still researching a silent/in-visible proxy server and looking into a Filter Monikor but, any suggestions on doing this would be much appreciated. I am getting a little frustrated that I have not been able to find good information for doing this, Like I mentioned there are a ton of applications already doing this so it seems that I am missing something simple. Thanks Eric Daymark Software, LLC eric@daymarksoftware.com

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #2

      Your not missing anything simple. There are only 5 methods I can think of to filter internet content from the end-users machine that are acceptable. 1.) Transparent redirection 2.) Winsock proxy DLL (Not a good idea) 3.) Winsock LSP 4.) TDI layer filter 5.) NDIS layer filter Internet Explorer hooks or Detours is simply not an option in my opinion. If your looking to filter network content with minimal coding, I would suggest that you take a look at the Layered Service provider samples that were included with the Platform SDK. In the folder: \Microsoft Platform SDK\Samples\NetDS\WinSock\LSP If you take a look at the ifslsp sample, you will see it demonstrate URL logging. If you want to implement a simple transparent redirect, you can modify this sample in about 5 minutes by simply editing the FindDestinationAddress() function. Simply redirect all outgoing HTTP request to 127.0.0.1 to a local filter. However if your wanting to filter content without a localhost proxy you would need to extend the non-IFS sample. You have more control over winsock send and receives with the non-IFS. If your looking for a more secure, method of content filtering, I'd recommend TDI layer. There is a sample here on codeproject than can be extended to accomplish this. I am telling you all of this from first-hand experience. I have already implemented an LSP based content filter, and then about a year ago I implemented a TDI based solution, and retired my old LSP based code. Ultimately, the best method of content filtering is on the NDIS layer... But much of it is undocumented, and I have spent many hours experimenting with NDIS driver implementations. Maybe one of these days I will be able to make that work, but not yet :( Im not guru enough...yet :) Best Wishes, -randor

      R 1 Reply Last reply
      0
      • L Lost User

        Your not missing anything simple. There are only 5 methods I can think of to filter internet content from the end-users machine that are acceptable. 1.) Transparent redirection 2.) Winsock proxy DLL (Not a good idea) 3.) Winsock LSP 4.) TDI layer filter 5.) NDIS layer filter Internet Explorer hooks or Detours is simply not an option in my opinion. If your looking to filter network content with minimal coding, I would suggest that you take a look at the Layered Service provider samples that were included with the Platform SDK. In the folder: \Microsoft Platform SDK\Samples\NetDS\WinSock\LSP If you take a look at the ifslsp sample, you will see it demonstrate URL logging. If you want to implement a simple transparent redirect, you can modify this sample in about 5 minutes by simply editing the FindDestinationAddress() function. Simply redirect all outgoing HTTP request to 127.0.0.1 to a local filter. However if your wanting to filter content without a localhost proxy you would need to extend the non-IFS sample. You have more control over winsock send and receives with the non-IFS. If your looking for a more secure, method of content filtering, I'd recommend TDI layer. There is a sample here on codeproject than can be extended to accomplish this. I am telling you all of this from first-hand experience. I have already implemented an LSP based content filter, and then about a year ago I implemented a TDI based solution, and retired my old LSP based code. Ultimately, the best method of content filtering is on the NDIS layer... But much of it is undocumented, and I have spent many hours experimenting with NDIS driver implementations. Maybe one of these days I will be able to make that work, but not yet :( Im not guru enough...yet :) Best Wishes, -randor

        R Offline
        R Offline
        Rahul Vaishnav
        wrote on last edited by
        #3

        Hi, I want to use LSP for inter filtering. I want to modify buffer WSPRecv from non-ifslsp in order to insert forbidden error. Please someone help me how can I modify this buffer and fill forbidden error message in this buffer. So that, that forbidden response can be seen on browser.

        1 Reply Last reply
        0
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        • Login

        • Don't have an account? Register

        • Login or register to search.
        • First post
          Last post
        0
        • Categories
        • Recent
        • Tags
        • Popular
        • World
        • Users
        • Groups