################################################# BookNux 0.2 <= Multiple Vulnerabilities ################################################# Discovered by: Jean Pascal Pereira Vendor information: "This is an online bookmark manager. It's allow several user, share bookmark (private or public). It's use php and mysql." Vendor URI: http://developer.berlios.de/projects/booknux/ ################################################# Issues: SQL Injection, Cross Site Scripting Risk-level: High ------------------------------------- 1. SQL Injection: cat.php, line 70: $lnsql="SELECT NCategorie, LibCategorie, PriveCategorie, NCategorieMereCategorieX FROM categorie WHERE IdUtilisateurCategorieX='$idutilisateur' AND NCategorie=".$_GET['CatMere']; cat.php, line 75: $lnsql="SELECT NCategorie,LibCategorie,NCategorieMereCategorieX, PriveCategorie FROM categorie WHERE IdUtilisateurCategorieX='$idutilisateur' AND NCategorieMereCategorieX=".$_GET['CatMere']." ORDER BY LibCategorie"; cat.php, line 92: $lnsql="SELECT LibCategorie, NCategorieMereCategorieX, PriveCategorie FROM categorie WHERE IdUtilisateurCategorieX='$idutilisateur' AND NCategorie=".$_GET['NCat']; cat.php, line 117: $lnsql="SELECT NCategorie, LibCategorie FROM categorie WHERE IdUtilisateurCategorieX='$idutilisateur' AND NCategorie<>".$_GET['NCat']; compte.php, line 152: $lnsql="SELECT PseudoUtilisateur, MotDePasseUtilisateur, IdUtilisateur FROM utilisateur WHERE IdUtilisateur='".$_GET['Compte']."'"; liens.php, line 108: $lnsql="SELECT NLiens,LibLiens, UrlLiens, IdCategorieLiensX, CommentaireLiens, PriveLiens, LibCategorie, LangueLiens FROM liens, categorie WHERE IdCategorieLiensX=NCategorie AND NLiens=".$_GET['NLiens']; liens.php, line 110: $lnsql="SELECT NLiens,LibLiens, UrlLiens, IdCategorieLiensX, CommentaireLiens, PriveLiens, LibCategorie, LangueLiens FROM liens, categorie WHERE IdCategorieLiensX=NCategorie AND NLiens=".$_GET['NLiens']." AND IdUtilisateurLiensX='$utilisateurcourant'"; ouvrir.php, line 23: $lnsql="SELECT NLiens, UrlLiens FROM liens WHERE NLiens=".$_GET['NLiens']." AND IdUtilisateurLiensX='$utilisateurcourant'"; ouvrir.php, line 25: $lnsql="SELECT NLiens, UrlLiens FROM liens WHERE NLiens=".$_GET['NLiens']." AND PriveLiens='N'"; ------------------------------------- 2. Cross Site Scripting: cat.php, line 96: echo(""); cat.php, line 102: echo(""); cat.php, line 205: echo(""); liens.php, line 80: echo(""); liens.php, line 86: echo("".$texte['LibLiens'].""); liens.php, line 91: echo("".$texte['UrlLiens'].""); liens.php, line 119: echo(""); parcourir.php, line 28: proposerliens.php, line 39: echo(""); ------------------------------------- Solution: Do some input validation. ------------------------------------- #################################################