Yshopnoosa.com

Typer av Format sträng buggar

Typer av Format sträng buggar

Programvara sårbarheter hemsöka ständigt programmerare och utvecklare. Formatet strängen bugg är en sådan sårbarhet och det kan krascha program eller köra skadlig kod. Frågan med formatsträng kretsar kring oskyddad användarindata. Kommandot Skriv ut i C kan vara ett exempel på denna bugg. En "printf()" är en oskyddad användarindata som möjliggör utskrift från fjärrplatser. Ensamt, kommandot ger hackare möjligheter att stjäla koden för sina syften.

Beskrivning

Utvecklare använda familjen printf kod format strängar eller kontrollera data output. Familjen printf koden innehåller kommandon som fprintf, vprintf och sprintf, vilka alla format data men till olika platser. Format sträng fel uppstå när utvecklare försummar att införa nödvändiga restriktioner för familjen printf kod. Hackare kan sedan in sin kod genom dessa begränsning-gratis koder eller kryphål, och kapa koden. Resultatet, är enligt författarna av "The Shellcoders handbok," att kaparen kan sedan kunna visa privat information och exekvera godtycklig kod.

Format-token

Rätta format sträng fel kan vara smärtfri och programutvecklare behöver endast lägga till ett format token som "%s" eller "%x". Utvecklaren kan exempelvis ange "printf ("%s", ingång)" på kommandoraden.

Formatet token begränsar format poster och hindrar hackers från att köra skadlig kod via kryphål i den ursprungliga koden. Formatet strängen buggar uppkommer vanligen när programmerare utvecklar koden för stora program. Under koden utveckling, kan programmerare fokusera på den stora bilden, och därmed förbise formatsträngen. Oskyddad formatsträngen fungerar sedan som ett gyllene tillfälle som angriparen kan använda för att manipulera koden.

Buffertspill

Formatsträngar kan också skapa buffer overflow problem. När ett program överskridna buffert gränsen när du skriver data, Buffertspill inträffar och programmet kan skriva över intilliggande minne. Detta är ett betydande hot i form av ett programs minne säkerhet. Buffer overflow problem förknippas ofta med C och C++ språk. Programutvecklare bör se till att kolla buffert gränser till counter buffer overflow anomalier. När det finns ingen format som anges för en C kör tidsfunktion, kan någon godtycklig kod köras genom det angivna kryphålet. Eftersom koden inte kanske vet gränserna för bufferten, kan det orsaka en buffer overflow och skriva över minne.

Minimera Risk

Du kan undvika format sträng buggar genom att följa vissa grundläggande regler för programmering. För att minimera förekomster av formant sträng buggar, installera endast de verktyg som du behöver, och endast tillåta tillgång till dessa verktyg till dem i din mest betrodda grupp, enligt författarna av "Hacka Bevisande nätverket." Kom ihåg att alltid ange en formatsträng till ett "printf" uttalande. Om det finns anpassade formatsträngar i koden, var särskilt försiktig när själv skriva privilegier av dessa definierade formatsträngar.