Che cosa è una race condition?

Una corsa condizione si verifica quando più processi di accedere e manipolare gli stessi dati contemporaneamente, e il risultato della esecuzione dipende dal modo particolare in cui l'accesso avviene.

Una corsa condizione è di interesse per un hacker, quando la corsa condizione può essere utilizzata per ottenere privilegi di accesso al sistema.

Si consideri il seguente frammento di codice che illustra una race condition:

  if (accesso ( "/ tmp / datafile", R_OK) == 0) ( 
	  fd = open ( "/ tmp / datafile 
          processo (fd); 
          close (fd); 

Questo codice crea il file temporaneo / tmp / datafile e poi apre.

Il potenziale condizione si verifica tra la richiesta di accesso () e la chiamata alla open ().

Se un utente malintenzionato può sostituire il contenuto di / tmp / datafile tra l'accesso () e open () funzioni, egli può manipolare le azioni del programma che usi che datafile. Questa è la gara.

Può essere difficile per sfruttare una race condition, perché potrebbe essere necessario "correre la gara" molte volte prima di "vincere". Potrebbe essere necessario eseguire il programma vulnerabile e la vulnerabilità di test strumento migliaia di volte prima di ottenere il codice da eseguire expolit dopo la vulnerabilità prima che si apre e si chiude la vulnerabilità. A volte è possibile dare un ulteriore attacco al bordo utilizzando `bella` di ridurre la priorità del programma suid legittimo.

Un uso improprio delle chiamate di funzione di accesso (), chown (), chgrp (), chmod (), mktemp (), tempnam (), tmpfile (), e tmpnam () sono le normali cause di una race condition.

Scrivere Codice di sicurezza Costruire Secure Software Sicuro di codificazione delle merci Secure Programming Cookbook
Acquisto questi eccellenti libri su Amazon.com a garantire la programmazione


Top 5 Free Networking Tools

Vulnerability Management for Dummies

I nostri amici a Qualys offrono copie gratuite della versione elettronica di Vulnerability Management for Dummies di Tech-FAQ lettori.

Vulnerability Management for Dummies:

  • Spiega il critico necessario per la gestione delle vulnerabilità
  • Dettagli essenziali migliori pratiche passi di un successo del programma di gestione delle vulnerabilità
  • Illustra le varie soluzioni di gestione delle vulnerabilità - compresi i vantaggi e gli svantaggi di ogni
  • Sottolinea la premiata soluzione di gestione delle vulnerabilità QualysGuard
  • Fornisce un punto dieci lista di controllo per rimuovere le vulnerabilità da la chiave di risorse
Favoriti Che cosa è una race condition?

Ultimi post sul blog


Inglese Inglese Tedesco Tedesco Spagnolo Spagnolo Francese Francese Italiano Italiano Portoghese Portoghese Russo Russo Olandese Olandese
Greco Greco Hindi Hindi Giapponese Giapponese Coreano Coreano Cinese Cinese Cinese (semplificato) Cinese (semplificato) Arabo Arabo

Copyright 2009 Tech-FAQ. Tutti i diritti riservati. Privacy Policy.