Visualizzazione dei risultati da 1 a 4 su 4

Discussione: questione di sicurezza

  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111

    questione di sicurezza

    ciao a tutti, questo thread molto probabilmente non dovrebbe stare qui, ma non so dove metterlo.

    i miei utenti possono inserire commenti, thread e pagine personali. possono usare tutti i tag html e javascript.
    il codice lo inseriscono nel database tramite una form e verrebbe richiamato in una pagina dinamica.

    corro qualche rischio? è possibile far danni inserendo codice JS?
    che succede se inseriscono codice php o di altri linguaggi di programmazione?
    o peggio che succede se inseriscono codice mysql???
    per inserire questi testi uso una query di questo tipo:
    Codice PHP:
    $insertSQL sprintf("INSERT INTO blogentry (blog_num, UTENTE, BODY, TITOLO, ANTEPRIMA, ARGOMENTO, KWORD) VALUES (%s, %s, %s, %s, %s, %s, %s)",
    GetSQLValueString($inc"int"),
    GetSQLValueString($row_rsut['NICK'], "text"),
    GetSQLValueString($_POST['TESTO'], "text"),
    GetSQLValueString($_POST['TITOLO'], "text"),
    GetSQLValueString($_POST['ANTEPRIMA'], "text"),                           
    GetSQLValueString($_POST['ARGOMENTO'], "text"),
    GetSQLValueString($_POST['KWORD'], "text"));
        
    mysql_select_db($database_cnblogdb$cnblogdb);
    $Result1 mysql_query($insertSQL$cnblogdb) or die(mysql_error()); 
    sarebbe possibile per un malintenzionato inserire codice mysql che possa crear danni?

  2. #2
    > corro qualche rischio? è possibile far danni inserendo codice JS?

    Attacchi XSS

    > che succede se inseriscono codice php o di altri linguaggi di programmazione?

    Dipende da come viene visualizzato il codice. Se non utilizzi eval o codice equivalente non dovresti avere problemi. Se permetti l'upload di file, vieta il caricamento di file con estensioni interpretate dal web server.

    > o peggio che succede se inseriscono codice mysql???

    Se segui le basi della sicurezza del database (vedi il manuale ufficiale del PHP) non dovresti rischiare attacchi di SQL Injection o simili.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2008
    Messaggi
    111
    grazie mille

    cominciando dal fondo:
    ho cercato informazioni riguardo la prevenzione dagli attacchi mysql injection e a quanto pare la funzione GetSQLValueString nel mio codice è sicura (è una funzione preparata da dreamweaver che prevede l'uso di mysql_real_escape_string() o simili)

    non uso la funzione eval. se provo a inserire codice php tramite form questo viene salvato nel DB, ma essendo visualizzato tramite un echo dopo essere stato richiamato dal DB, non viene eseguito ne mostrato. mi chiedevo se fosse possibile far eseguire del codice a seguire di echo "
    ho provato a scrivere "; echo "ti ho crackato"; ma per fortuna non ha funzionato e la stringa è stata salvata come testo.

    quanto agli XSS attacks il problema sembra serio. forse dovrei filtrare tutti gli input e togliere i caratteri pericolosi? sarebbe la via più semplice ma i miei utenti non potrebbero più formattare il testo con i tag html.
    devo ancora provare gli editor di testo "prefabbricati", immagino che quelli sarebbero sicuri, ma avrei preferito evitarli.
    c'è qualcos'altro che potrei fare?

  4. #4
    Per evitare gli attacchi XSS puoi iniziare filtrando i tag script e tutti gli attributi relativi agli eventi javascript (es. onclick etc.) degli altri tag. Inoltre dovresti filtrare anche i tag IFRAME e FRAME

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.