You are on page 1of 6

SQL Injection:

SQL Injection (SQLi) se rfre une attaque d'injection dans laquelle


un attaquant peut excuter des instructions SQL malveillantes
(galement communment appeles une charge utile malveillante) qui
contrlent le serveur de base de donnes d'une application Web
(galement communment appel Systme de gestion de base de
donnes relationnelle - SGBDR). tant donn qu'une vulnrabilit par
injection SQL pourrait affecter n'importe quel site Web ou application
Web qui utilise une base de donnes base sur SQL, la vulnrabilit est
l'une des vulnrabilits des applications Web les plus anciennes, les
plus rpandues et les plus dangereuses.

En exploitant une vulnrabilit SQL Injection, compte tenu des bonnes


circonstances, un attaquant peut l'utiliser pour contourner les
mcanismes d'authentification et d'autorisation d'une application Web
et rcuprer le contenu d'une base de donnes entire. SQL Injection
peut galement tre utilis pour ajouter, modifier et supprimer des
enregistrements dans une base de donnes, ce qui affecte l'intgrit
des donnes.

tel point, SQL Injection peut fournir un attaquant un accs non


autoris aux donnes sensibles, y compris les donnes du client, les
informations personnelles identifiables (PII), les secrets commerciaux,
la proprit intellectuelle et d'autres informations sensibles.
L'ORM lastique de Laravel utilise la liaison des paramtres PDO pour
viter l'injection SQL. La liaison des paramtres garantit que les
utilisateurs malveillants ne peuvent pas transmettre les donnes de
requte qui pourraient modifier l'intention de la requte. Considrons,
par exemple, un champ de formulaire utilis pour fournir une adresse
e-mail qui pourrait tre utilise pour la recherche d'une table
utilisateur. Mais au lieu de fournir une adresse e-mail, l'utilisateur
recherche 'exemple@exemple.com' ou 1 = 1. Gauche non garanti, la
requte rsultante pourrait ressembler ceci:

SELECT * FROM users WHERE email = 'exemple@example.com' or 1=1


Cross-Site Request Forgery

Cross-Site Request Forgery (CSRF) est un type d'attaque qui survient


lorsqu'un site Web malveillant, un courrier lectronique, un blog, un
message instantan ou un programme provoque le navigateur Web
d'un utilisateur pour effectuer une action indsirable sur un site
approuv pour lequel l'utilisateur est actuellement Authentifi.
L'impact d'une attaque CSRF russie est limit aux capacits exposes
par la demande vulnrable. Par exemple, cette attaque pourrait
entraner un transfert de fonds, modifier un mot de passe ou acheter
un lment dans le contexte de l'utilisateur. En effet, les attaques CSRF
sont utilises par un attaquant pour que le systme cible effectue une
fonction via le navigateur de la cible sans connatre l'utilisateur cible,
au moins jusqu' ce que la transaction non autorise ait t commise.
Dans Laravel les jetons CSFF (cross-site request falsifie) sont utiliss
pour s'assurer que les tiers ne peuvent pas lancer une telle demande.
Cela se fait en gnrant un jeton qui doit tre transmis avec le contenu
du formulaire. Ce jeton sera ensuite compar une valeur ajoute en
plus la session utilisateur. Si elle correspond, la demande est juge
valide, sinon elle est juge invalide.

Si on construire des formulaires l'aide de HTML standard vous devrez


fournir le jeton notre formulaire comme suit:

<form ...>
{!! csrf_field() !!}
</form>

Cross-Site Scripting
Les attaques intersectorielles de script (XSS) sont un type d'injection,
dans lequel des scripts malveillants sont injects dans des sites Web
par ailleurs bnins et fiables. Les attaques XSS surviennent lorsqu'un
attaquant utilise une application Web pour envoyer un code
malveillant, gnralement sous la forme d'un script ct navigateur,
un utilisateur final diffrent. Les dfauts qui permettent ces attaques
de russir sont assez rpandus et se produisent partout o une
application Web utilise l'entre d'un utilisateur dans la sortie qu'il
gnre sans la valider ou l'encoder.

Un attaquant peut utiliser XSS pour envoyer un script malveillant un


utilisateur sans mfiance. Le navigateur de l'utilisateur final n'a aucun
moyen de savoir que le script ne doit pas faire confiance et excutera
le script. Parce qu'il pense que le script provient d'une source
approuve, le script malveillant peut accder tous les cookies, jetons
de session ou autres informations sensibles retenues par le navigateur
et utilises avec ce site. Ces scripts peuvent mme rcrire le contenu
de la page HTML. Pour plus de dtails sur les diffrents types de
dfauts XSS, voir: Types de scripts entre sites.

La syntaxe {{}} de Laravel chappera automatiquement toutes les


entits HTML transmises via une variable de vue. C'est une trs grosse
affaire, tant donn qu'un utilisateur malveillant pourrait passer la
chane suivante dans un commentaire ou un profil utilisateur:

My list <script>alert("spam spam spam!")</script>

Si cette chane a t autorise tre enregistre dans la base de


donnes sans filtrage, puis affiche par la suite dans une page Web
sans chapper, elle afficherait en effet une fentre d'alerte gnante.
C'est un exemple d'attaque connue sous le nom de scripts entre sites.
Dans le grand schma des choses, ce n'est qu'un lger inconvnient
par rapport aux attaques plus sophistiques qui pourraient inciter
l'utilisateur fournir des informations sensibles via un modal JavaScript
qui a ensuite t envoy un site Web tiers.

You might also like