Query log

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Yea Rupie

Yea Rupie

31/05/2010 21:27:02
Quote Anchor link
Beste forumers,

Ik heb een Query log op mijn site gezet, om snel de oorzaak te vinden als er sprake is van een lek/SQL-injection. Het probleem is dat hij alleen maar de SELECT query's opslaat en niet de UPDATE en INSERT query's.

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
<?php
class database
{
    /* */
    $this->log_connection;
    
    public function __construct()
    {

        /* */
    }
    
    public function queryLog($query)
    {

        if($qry = mysql_query("SELECT * FROM log WHERE query = '".mysql_real_escape_string($query)."'",$this->log_connection)):
            if(mysql_num_rows($qry) == 0):

                mysql_query("INSERT INTO log VALUES ('".mysql_real_escape_string($query)."','".$_SERVER['REMOTE_ADDR']."','".($_SERVER['PHP_SELF'].((isset($_GET['p'])) ? htmlentities($_GET['p']) : 'noP'))."',NOW())",$this->log_connection);
            endif;
        endif;
    }

    
    public function query($query)
    {

        $this->queryLog($query);
        /* */
    }
}

?>


Alle query's worden zo uitgevoerd:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$db
= new database;
$query = $db->query($sql);
?>
 
PHP hulp

PHP hulp

09/11/2024 03:28:54
 
Noppes Homeland

Noppes Homeland

31/05/2010 22:03:17
Quote Anchor link
Welk nut heeft de SELECT alvorens het te inserten:
Antwoord: geen

htmlentities hoort niet thuis in een sql-statement, dat is een presentatie functie

Hetgeen je gepost hebt is te simplistisch om er eigenlijk dieper op in te gaan.

Het principe zal moeten zijn:
Als een query faalt dan zal deze gelogd moeten worden en dat is niet te herleiden uit hetgeen je nu aan code gepost hebt.
 
Yea Rupie

Yea Rupie

31/05/2010 22:19:36
Quote Anchor link
Heel stom van me, geen foutafhandeling .. normaal staat het er al bij en wordt het automatisch gelogt..
 



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.