Che cos'è un formato stringa a causa di una vulnerabilità?

Per capire ciò che una stringa di formato è vulnerabilità, è necessario prima di sapere che cosa è un formato stringa. Una stringa di formato è un modo di raccontare il compilatore C come dovrebbe formato numeri quando li stampe.

Formato Strings in C

Nel linguaggio di programmazione C ci sono una serie di funzioni che accetta una stringa di formato come un argomento. Queste funzioni includono fprintf, printf, sprintf, snprintf, vfprintf, vprintf, vsprintf, vsnprintf, setproctitle, syslog, e altri.

Il più comune di questi è printf. L'uso di printf è:

printf formato [argomenti ...]

printf uscite il valore di [argomenti ...] nel formato specificato dal formato.

Un esempio di chiamata a printf è:

printf ( "Il codice è:% d \ n", 303);

Specificatori di formato supportato variano da un compilatore C per il prossimo. Il formato supportato sotto FreeBSD specificatori sono:

% d Convertire intero a stringa decimale firmato.
% u Convertire intero a stringa unsigned decimale.
% i Convertire intero a stringa decimale firmato; il numero intero può essere in decimali, in ottale (con uno 0) o in formato esadecimale (con un leader 0x).
% O Convertire intero a stringa unsigned ottale.
x% o% X Convertire intero a unsigned stringa esadecimale, utilizzando cifre 0123456789abcdef `` x''per''e `` 0123456789ABCDEF per X).
% c Convertire intero a caratteri Unicode che rappresenta.
% s N. conversione; basta inserire stringa.
% f Convertire in virgola mobile al numero decimale firmato stringa della forma xx.yyy, dove il numero di Y's è determinata dalla precisione (default: 6). Se la precisione è 0, allora nessun punto decimale viene emesso.
o% e% E Convertire in virgola mobile il numero di notazione scientifica in forma x.yyye +-zz, dove il numero di Y's è determinata dalla precisione (default: 6). Se la precisione è 0, allora nessun punto decimale viene emesso. E se la forma è usato E poi è stampato invece di e.
% g% o G Se l'esponente è inferiore a -4 o maggiore o uguale alla precisione, poi convertito in virgola mobile per numero di% e% o E. Altrimenti, come per convertire% f. Trailing zeri e un punto decimale in ritardo sono state omesse.
%% N. conversione: basta inserire%.

Per maggiori informazioni su specificatori di formato, consultate la pagina man per il "formato" sul vostro sistema Unix più vicino.

Format String Vulnerability Attacchi

Vulnerabilità format string attacchi si dividono in tre categorie: la negazione del servizio, la lettura e la scrittura.

Ulteriori fonti di informazione su Format String Vulnerabilità

Per ulteriori informazioni sul formato stringa di sfruttare le vulnerabilità, fare riferimento alla Sfruttare Formato Stringa Vulnerabilità da SCUT, e Format String Attacchi da Tim Newsham.

Scrivere Codice di sicurezza Costruire Secure Software Sicuro di codificazione delle merci Secure Programming Cookbook
Ulteriori informazioni su come prevenire le vulnerabilità nel formato stringa di codice sorgente con questi ottimi libri sulla programmazione sicura da Amazon.com


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 cos'è un formato stringa a causa di una vulnerabilità?

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.