Anti proxy via database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Dave schaafsma

dave schaafsma

07/06/2012 13:58:41
Quote Anchor link
Beste leden,

Ik ben bezig met een database en script wat controleert bijvoorbeeld bij het aanmelden of er een gebruiker een proxy gebruikt. Alles loopt via een database tabel waar alle hostnamen + ip's van proxy site's in komen te staan.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
CREATE TABLE IF NOT EXISTS `proxies` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `ip` varbinary(16) NOT NULL,
  `host` varchar(200) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `ip` (`ip`,`host`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;



Dit is mijn sql ik ben bezig met een klein maar simpel formulier te schrijven met 2 balkjes en 1 button waar je de host's en ip's kan toevoegen. Waar moet ik rekening mee houden ?
 
PHP hulp

PHP hulp

22/12/2024 07:52:27
 
- Ariën  -
Beheerder

- Ariën -

07/06/2012 14:37:30
Quote Anchor link
En hoe wil je detecteren of iemand een proxie gebruikt. Dit is nooit 100% waterdicht. Ik vraag me eigelijk ook nog af wat je met zo'n lijst wilt bereiken en doen?
 
Dave schaafsma

dave schaafsma

07/06/2012 14:50:40
Quote Anchor link
Doormiddel van een lijst met proxy servers te maken en daarvanuit de meeste tot bijna alle proxy' host name's en ip's te blokeren. Het zal dan wel niet 100 % waterdicht zijn maar wil het gewoon probeeren zoveel mogelijk ervanaf te gooien.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<?php

    $mysqli
= new mysqli('localhost', 'gebruikersnaam', 'wachtwoord', 'database');
    
    if (mysqli_connect_errno()) {
        
            printf("Er kan geen verbinding worden gemaakt");
            exit();
            
    }
else {
            
echo "<doctype html>  <html>  <head>  <meta charset='UTF-8' />  </head>  <body>";
echo "  <b> IP</b>        <input type='text' name='ip' />           <br />";
echo "  <b> HOSTNAME</b>  <input type='text' name='hostname' />     <br />";
echo "                    <input type='submit' value='submit' />    <br />";                    
echo "</body>  </html>";
}
  

if(S_SERVER['REQUEST_METHOD'] == 'submit')

    {

        if()
        
    }






$iQuery = "INSERT INTO proxies (ip,hostname) VALUES (?,?)";
        
        $stmt = $msqli->prepare($iQuery);
        $stmt->bind_param('??', $_POST['ip'], $_POST['hostname']);
        
        if(!$stmt->execute()) {
            
            echo 'kan query niet uitvoeren' .$stmt->error;
        }

        
        $stmt->close();
?>


Hoe controleer ik of er een ip al in de database staat zoniet dan voert hij de iquery uit ?
Gewijzigd op 07/06/2012 15:07:26 door dave schaafsma
 
Erwin H

Erwin H

07/06/2012 14:54:42
Quote Anchor link
Ben je dan niet bang dat je ook veel normale bezoekers eraf knikkert? Veel mensen die via het werk op internet zitten gaan namelijk ook via een proxy.
 
- Ariën  -
Beheerder

- Ariën -

07/06/2012 14:57:44
Quote Anchor link
Ik zou proxy's gewoon toelaten, en als er misbruik van wordt gemaakt, de nodige proxy's dichtgooien. Jammer dat de goeden er ook onder zullen lijden....
 
Dave schaafsma

dave schaafsma

07/06/2012 15:05:10
Quote Anchor link
Ik bedoel hiermee aleen proxy WEBSITE's , mensen met een thuisnetwerk zullen hier geen last van ondervinden. ( zoals www.proxfree.com , enz enz ) ! Ik blokeer aleen die site's waarmee ze daar kunnen opkomen tot nu toe bij gpt site's zijn proxy's een grootschalig probleem !

Toevoeging op 08/06/2012 10:18:48:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php  

    $mysqli
= new mysqli('localhost', 'gebruikersnaam', 'wachtwoord', 'database');  
      
    if (mysqli_connect_errno()) {  
          
            printf("Er kan geen verbinding worden gemaakt");  
            exit();  
              
    }
else {  
              
echo "<doctype html>  <html>  <head>  <meta charset='UTF-8' />  </head>  <body>";  
echo "  <b> IP</b>        <input type='text' name='ip' />           ";  
echo "  <b> HOSTNAME</b>  <input type='text' name='hostname' />     ";  
echo "                    <input type='submit' value='submit' />    ";                      
echo "</body>  </html>";  
}
    




$ipquery   = mysqli_query("SELECT ip   FROM proxies");
$hostquery = mysqli_query("SELECT host FROM proxies");





$iQuery = "INSERT INTO proxies (ip,hostname) VALUES (?,?)";  
          
        $stmt = $msqli->prepare($iQuery);  
        $stmt->bind_param('??', $_POST['ip'], $_POST['hostname']);  
          
        if(!$stmt->execute()) {  
              
            echo 'kan query niet uitvoeren' .$stmt->error;  
        }
  
          
        $stmt->close();  
?>



Hoe kijk doe je de controle of het de hostnaam of ip al in de database staat ?
Gewijzigd op 07/06/2012 15:06:46 door dave schaafsma
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.