Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 17:25

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



HomeSocks Kindersicherung / Traffic Filter

Discussion on HomeSocks Kindersicherung / Traffic Filter within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2016
Posts: 2
Received Thanks: 0
Question HomeSocks Kindersicherung / Traffic Filter

Hallo wie der Titel schon zeigt programmiere ich gerade an einem Traffic Filter , mache es einfach über einen zentralen socks5 der jeweils den netzverkehr überwacht und gegebenen fals anfragen zurück weist.

ich schaffe es über den socks5 client aber leider immer jeweils nur die ping url auszulesen, daheißt youporn etc kann indexiert und ´geblockt werden, google anfragen nach porn inhalten etc aber nicht, wisst ihr da wie ich sowas noch geblockt bekommen würde ?

mein source ist in c# wenn ihr wollt pm an mich und ihr bekommt die snippets wie ich was mache will das projekt nachher eh veröffentlichen

Code:
 namespace SocketServer
{

    public class Socks5Session
    {
        TcpClient socksClient;
        TcpClient serverClient;
        byte SOCKS_VERSION = 5;
        byte SOCKS_NOAUTH = 0;
        byte SOCKS_REPLYSUCCESS = 0;
        byte SOCKS_IPV4ADDR = 1;
        byte SOCKS_DNSNAME = 3;

        private IPAddress m_loginServerIP = null;

        private int m_loginServerPort = -1;

        public Socks5Session()
        {

        }

        public Socks5Session(TcpClient client, IPAddress targetIP, int targetPort)
        {
            socksClient = client;
            m_loginServerIP = targetIP;

            m_loginServerPort = targetPort;
       
        }


        public void Work()
        {

            NetworkStream socksClientStream = socksClient.GetStream();

            /* *****************************************************
             * supported methods part
             * ***************************************************** */

            byte[] authFields = new byte[2];
            socksClientStream.Read(authFields, 0, 2);

            // read n supported methods 
            byte[] methods = new byte[authFields[1]];
            socksClientStream.Read(methods, 0, methods.Length);

            /* *****************************************************
             * method selection part
             * ***************************************************** */

            // return version and auth method "no auth"
            byte[] selectedAuthMethod = { SOCKS_VERSION, SOCKS_NOAUTH };
            socksClientStream.Write(selectedAuthMethod, 0, 2);

            /* *****************************************************
             * request part
             * ***************************************************** */

            byte[] requestFields = new byte[4];
            socksClientStream.Read(requestFields, 0, 4);

            // adresstypes ipv4 and hostname are supported
            string connection_target = "";
            int target_port;
            if (requestFields[3] == SOCKS_IPV4ADDR)
            {
                //ip4v adress is requested
                byte[] target_data = new byte[4];
                socksClientStream.Read(target_data, 0, 4);
                IPAddress ip = new IPAddress(target_data);
                connection_target = ip.ToString();
            }
            else if (requestFields[3] == SOCKS_DNSNAME)
            {
                //domainname requested
                //doc: byteorder
                byte[] domainname_length = new byte[1];
                // read the following domain name length
                socksClientStream.Read(domainname_length, 0, 1);
                byte[] target_data = new byte[domainname_length[0]];
                // read a domain name of requseted length
                socksClientStream.Read(target_data, 0, domainname_length[0]);
                //interpret the domainname in default encoding
                connection_target = Encoding.Default.GetString(target_data);
            }
            else
            {
                //unsupported addresstype
                Console.WriteLine("unsupported addresstype " + requestFields[3].ToString());

            }

            //if requested address is supported
            if (connection_target != "")
            {

                /* *****************************************************
                * server client connection part
                * ***************************************************** */


                //doc: byteorder
                byte[] bintargetport = new byte[2];
                socksClientStream.Read(bintargetport, 0, 2);
                byte[] tmp_byteorder = new byte[2];
                tmp_byteorder[0] = bintargetport[1];
                tmp_byteorder[1] = bintargetport[0];
                target_port = (int)BitConverter.ToUInt16(tmp_byteorder, 0);
                Console.WriteLine("TARGET: " + connection_target + ":" + target_port.ToString());
mit dem sourcen kann ich nicht nur die end ip sondern auch die
dns url anfrage blocken aber wie kann man den post filtern

mfg KleinAnorld.
KleinAnorld is offline  
Old 07/07/2016, 23:22   #2
 
elite*gold: 67
Join Date: Aug 2014
Posts: 1,321
Received Thanks: 927
Mach keinen proxy sonderen einfach einen DNS Server. Youporn dann einfach auf google umleiten oder so
Xio. is offline  
Old 07/08/2016, 08:19   #3


 
Jeoni's Avatar
 
elite*gold: 966
Join Date: Apr 2010
Posts: 1,104
Received Thanks: 681
Wie ich es verstanden habe, will er aber nicht nur einzelne Seiten sperren, sondern auch verhindern, dass die kontrollierte Person nach explizit anstößigen Begriffen in einschlägigen Suchmaschinen sucht. So, dass Google generell erlaubt ist, außer man sucht nach schmutzigen Begriffen.
In HTTP ist das ja mit deinem SOCKS-Proxy relativ leicht umzusetzen. Der Proxy muss die Anfrage parsen und wenn sie entsprechend schmutzige Begriffe enthält, ablehnen. Problematischer wird das Ganze allerdings, wenn der Nutzer HTTPs benutzt. Hier kannst du prinzipiell nicht mitlesen. Um das zu umgehen, könntest du beim SSL-Verbindungsaufbau als Man-In-The-Middle agieren. Hierbei musst du dem Nutzer aber dein Zertifikat unterjubeln, was bei ihm im Browser zum Zertifikatsfehler führt, wenn das Zertifikat nicht in seiner Liste erlauber Zertifikate ist. Dann kannste aber afaik alle Nachrichten mitlesen.
Mit freundlichen Grüßen
Jeoni
Jeoni is offline  
Reply


Similar Threads Similar Threads
Agent server traffic filter
06/28/2016 - SRO Private Server - 2 Replies
Hi, so I was working around with the agent server traffic filter- AgentServer { Certification "91.121.100.39", 15882 traffic_filter_activity "service_on" MaxUser 10000 SockTCPCount 25000 MaxConnectionsPerServer "1000000" MaxConnectionsPer1_OServer "1000000" }
★ Twitter Traffic ★ Real US Traffic ★ Adult Traffic ★ Sicher - Schnell - Günstig
02/21/2015 - elite*gold Trading - 0 Replies
Twitter Traffic - Adult Traffic - Echte & Aktive Twitter Nutzer (Besucher) aus USA Du zahlst immer noch für Traffic von Hitleap, Addmefast etc. !!? Hör auf damit!! Der Traffic bringt dir 0. Mit meinem Traffic kannst du dir ECHTE KUNDEN aufbauen, ein Netzwerk aufbauen!! Aktuelle Followers: 45,000 Täglich steigend um +2,000 Ich habe mir nach 3 Wochen Arbeit mehere Twitter Accounts im Bereich ''Erotik'' aufgebaut.
FRITZ!Box - Kindersicherung umgehen [MAC/IP Filter]
01/05/2013 - Tutorials - 1 Replies
.



All times are GMT +2. The time now is 17:25.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.