About: Heap overflow     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : yago:State100024720, within Data Space : dbpedia.demo.openlinksw.com associated with source document(s)
QRcode icon
http://dbpedia.demo.openlinksw.com/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FHeap_overflow

A heap overflow, heap overrun, or heap smashing is a type of buffer overflow that occurs in the heap data area. Heap overflows are exploitable in a different manner to that of stack-based overflows. Memory on the heap is dynamically allocated at runtime and typically contains program data. Exploitation is performed by corrupting this data in specific ways to cause the application to overwrite internal structures such as linked list pointers. The canonical heap overflow technique overwrites dynamic memory allocation linkage (such as malloc metadata) and uses the resulting pointer exchange to overwrite a program function pointer.

AttributesValues
rdf:type
rdfs:label
  • Přetečení na haldě (cs)
  • Desbordamiento de montículo (es)
  • Heap overflow (en)
  • Dépassement de tas (fr)
  • Heap overflow (it)
  • 힙 오버플로 (ko)
  • Przepełnienie sterty (pl)
  • Heap overflow (pt)
rdfs:comment
  • En informática, un desbordamiento de montículo (heap overflow/overrun) es un problema aritmético que hace referencia al exceso de sobre un montículo, esto permite un acceso no autorizado a la memoria por parte de un comando o de un programa o script denominado shellcode. (es)
  • Um heap overflow é um tipo de buffer overflow que ocorre na heap. Overflows na heap são explorados de maneira diferente de overflows na pilha (stack overflow). Os dados na heap são alocados dinamicamente pela aplicação, em tempo de execução, e, tipicamente, contém dados do programa. A exploração é feita corrompendo estes dados de uma maneira específica para causar sobrescrita em estruturas internas da aplicação, como listas de ponteiros. Em regra, a técnica de heap overflow sobrescreve links da memória de alocação dinâmica, e substitui por um ponteiro de função de chamada de um programa. (pt)
  • Przepełnienie sterty (ang. heap overflow) – rodzaj błędu przepełnienia bufora, mającego miejsce na stercie. Sterta jest obszarem pamięci procesu na którym dynamicznie alokowane są bufory na dane. Jeśli błędnie napisana aplikacja dokona próby zapisania większej porcji danych, niż wcześniej przeznaczono na ten cel pamięci, nadpisane mogą zostać struktury kontrolne aplikacji, i możliwe jest naruszenie integralności danego programu. (pl)
  • Přetečení na haldě (anglicky heap overflow) je typ přetečení bufferu, který nastává v datové oblasti haldy. Přetečení na haldě jsou napadnutelná jiným způsobem než přetečení na zásobníku. Paměť v haldě je dynamicky alokovaná aplikací za běhu a typicky obsahuje programová data. Napadnutí je prováděno poškozením těchto dat specifickým způsobem za účelem způsobení přepsání interních struktur aplikace jako např. ukazatele spojového seznamu. Kanonická technika přetečení haldy přepisuje vazby dynamické alokace paměti (např. metadata pro ) a používá výslednou výměnu ukazatelů k přepsání ukazatele na funkci. (cs)
  • A heap overflow, heap overrun, or heap smashing is a type of buffer overflow that occurs in the heap data area. Heap overflows are exploitable in a different manner to that of stack-based overflows. Memory on the heap is dynamically allocated at runtime and typically contains program data. Exploitation is performed by corrupting this data in specific ways to cause the application to overwrite internal structures such as linked list pointers. The canonical heap overflow technique overwrites dynamic memory allocation linkage (such as malloc metadata) and uses the resulting pointer exchange to overwrite a program function pointer. (en)
  • En informatique, un dépassement ou débordement de tas (en anglais, heap-based buffer overflow ou plus simplement heap overflow) est un bug de la classe des dépassements de tampon, dans lequel le débordement concerne un tampon alloué dans le tas (la mémoire allouée dynamiquement lors de l'exécution d'un programme). Le Heap Overflow requiert des connaissances précises du système d'exploitation ciblé pour pouvoir être exploité, et notamment l'implémentation du sous-système d'allocation dynamique de la mémoire. (fr)
  • 힙 오버플로(heap overflow)는 힙 데이터 영역에서 발생하는 버퍼 오버플로의 한 종류이다. 힙 오버플로는 스택 기반 오버플로와는 다른 방식으로 익스플로잇 가능하다. 힙에서의 메모리는 런타임 시에 애플리케이션에 의해 동적으로 할당되며 일반적으로 프로그램 데이터를 포함한다. 익스플로잇은 애플리케이션이 링크드 리스트 포인터 같은 내부 구조체를 겹쳐쓰는 것 같이 이 데이터를 특정한 방식으로 오염시킴으로써 수행된다. 고전적인 힙 오버플로 기법은 동적 메모리 할당 연결(malloc 메타 데이터 같은)을 겹쳐쓰고 프로그램 함수 포인터를 겹쳐쓰기 위해 결과로 나온 포인터를 교환하는 기법이다. (ko)
  • Heap overflow, o heap overrun, è il nome usato per indicare un buffer overflow che avviene nell'area dati della heap. A differenza che nello stack, dove la memoria viene allocata staticamente, nella heap essa viene allocata in modo dinamico dalle applicazioni a run-time e tipicamente contiene dati dei programmi utente. La metodologia di attacco solitamente varia a seconda delle diverse implementazioni delle funzioni di allocazione dinamica della memoria. (it)
dcterms:subject
Wikipage page ID
Wikipage revision ID
Link from a Wikipage to another Wikipage
Link from a Wikipage to an external page
sameAs
dbp:wikiPageUsesTemplate
Link from a Wikipa... related subject.
has abstract
  • Přetečení na haldě (anglicky heap overflow) je typ přetečení bufferu, který nastává v datové oblasti haldy. Přetečení na haldě jsou napadnutelná jiným způsobem než přetečení na zásobníku. Paměť v haldě je dynamicky alokovaná aplikací za běhu a typicky obsahuje programová data. Napadnutí je prováděno poškozením těchto dat specifickým způsobem za účelem způsobení přepsání interních struktur aplikace jako např. ukazatele spojového seznamu. Kanonická technika přetečení haldy přepisuje vazby dynamické alokace paměti (např. metadata pro ) a používá výslednou výměnu ukazatelů k přepsání ukazatele na funkci. Typický příklad na Linuxu jsou dva buffery alokované vedle sebe v haldě. Zápis za hranice prvního bufferu dovoluje přepsání meta dat v druhém bufferu. Nastavením in-use bitu druhého bufferu na nulu a nastavením délky na malou zápornou hodnotu, což dovoluje kopírování null bytů, se ve chvíli, kdy program zavolá free na prvním bufferu, pokusí spojit tyto dva buffery do jednoho. Když se toto stane, buffer, který měl být uvolněn, bude obsahovat dva ukazatele FD a BK v prvních 8 bytech dříve alokovaného bufferu. BK je zapsán do FD a může být použit k přepsání ukazatele. Avšak toto z více důvodů není nadále možné. (cs)
  • En informática, un desbordamiento de montículo (heap overflow/overrun) es un problema aritmético que hace referencia al exceso de sobre un montículo, esto permite un acceso no autorizado a la memoria por parte de un comando o de un programa o script denominado shellcode. (es)
  • A heap overflow, heap overrun, or heap smashing is a type of buffer overflow that occurs in the heap data area. Heap overflows are exploitable in a different manner to that of stack-based overflows. Memory on the heap is dynamically allocated at runtime and typically contains program data. Exploitation is performed by corrupting this data in specific ways to cause the application to overwrite internal structures such as linked list pointers. The canonical heap overflow technique overwrites dynamic memory allocation linkage (such as malloc metadata) and uses the resulting pointer exchange to overwrite a program function pointer. For example, on older versions of Linux, two buffers allocated next to each other on the heap could result in the first buffer overwriting the second buffer's metadata. By setting the in-use bit to zero of the second buffer and setting the length to a small negative value which allows null bytes to be copied, when the program calls free on the first buffer it will attempt to merge these two buffers into a single buffer. When this happens, the buffer that is assumed to be freed will be expected to hold two pointers FD and BK in the first 8 bytes of the formerly allocated buffer. BK gets written into FD and can be used to overwrite a pointer. (en)
  • En informatique, un dépassement ou débordement de tas (en anglais, heap-based buffer overflow ou plus simplement heap overflow) est un bug de la classe des dépassements de tampon, dans lequel le débordement concerne un tampon alloué dans le tas (la mémoire allouée dynamiquement lors de l'exécution d'un programme). Cette technique est un moyen pour une personne malveillante d'utiliser une erreur d'écriture d'un programme, en particulier en injectant des données des variables différentes de celles d'origine, et ainsi de prendre possession du système cible à hauteur de celui qui a lancé ce programme (c'est-à-dire avec les mêmes privilèges et droits que celui-ci). Le Heap Overflow requiert des connaissances précises du système d'exploitation ciblé pour pouvoir être exploité, et notamment l'implémentation du sous-système d'allocation dynamique de la mémoire. (fr)
  • Heap overflow, o heap overrun, è il nome usato per indicare un buffer overflow che avviene nell'area dati della heap. A differenza che nello stack, dove la memoria viene allocata staticamente, nella heap essa viene allocata in modo dinamico dalle applicazioni a run-time e tipicamente contiene dati dei programmi utente. Gli heap overflow vengono solitamente usati dai cracker per abusare di programmi contenenti alcune vulnerabilità dovute ad insufficiente validazione degli input, calcolo sbagliato della memoria da allocare o superamento del limite massimo di memoria allocabile. L'attacco avviene come segue: se un'applicazione copia dei dati senza preventivamente controllare se trovano posto nella variabile di destinazione, il cracker può fornire al programma un insieme di dati troppo grande per essere gestito correttamente, andando così a sovrascrivere i metadati (cioè le informazioni di gestione) della heap, prossimi alla destinazione dell'insieme di dati. In questo modo, l'attaccante può sovrascrivere una locazione arbitraria di memoria, con una piccola quantità di dati. Nella maggior parte degli ambienti, questo può fornire all'attaccante il controllo dell'esecuzione del programma. La vulnerabilità Microsoft JPEG GDI+ MS04-028 è un esempio del pericolo che uno heap overflow può rappresentare per un utente informatico. In sintesi, questa vulnerabilità permetteva, durante la visualizzazione di una immagine JPEG ed attraverso un buffer overrun, l'esecuzione di codice malevolo in remoto che, se eseguito nello spazio di un utente con privilegi di amministratore, permetteva all'attaccante di prendere il controllo dell'intero sistema. La metodologia di attacco solitamente varia a seconda delle diverse implementazioni delle funzioni di allocazione dinamica della memoria. (it)
  • 힙 오버플로(heap overflow)는 힙 데이터 영역에서 발생하는 버퍼 오버플로의 한 종류이다. 힙 오버플로는 스택 기반 오버플로와는 다른 방식으로 익스플로잇 가능하다. 힙에서의 메모리는 런타임 시에 애플리케이션에 의해 동적으로 할당되며 일반적으로 프로그램 데이터를 포함한다. 익스플로잇은 애플리케이션이 링크드 리스트 포인터 같은 내부 구조체를 겹쳐쓰는 것 같이 이 데이터를 특정한 방식으로 오염시킴으로써 수행된다. 고전적인 힙 오버플로 기법은 동적 메모리 할당 연결(malloc 메타 데이터 같은)을 겹쳐쓰고 프로그램 함수 포인터를 겹쳐쓰기 위해 결과로 나온 포인터를 교환하는 기법이다. 옛날 버전의 리눅스에서의 전형적인 예시는 힙에서 두 버퍼가 각각 나란히 할당되고, 첫 번째 버퍼의 경계 외부에 쓰는 것이 두 번째 버퍼의 메타 데이터를 겹쳐쓰게되는 것이다. 두 번째 버퍼의 사용 비트를 0으로 설정하고 널 바이트들이 복사되게 하기 위해 작은 음수 값을 길이로 설정한 후에, 첫 번째 버퍼에서 프로그램이 free 함수를 호출할 때 프로그램은 이 두 버퍼를 단일 버퍼로 통합하려는 시도를 할 것이다. 이 상황이 벌어지면 free될 버퍼는 이전에 할당된 버퍼의 첫 8 바이트에 포워드와 백이라는 두 포인터를 갖게 된다. (ko)
  • Um heap overflow é um tipo de buffer overflow que ocorre na heap. Overflows na heap são explorados de maneira diferente de overflows na pilha (stack overflow). Os dados na heap são alocados dinamicamente pela aplicação, em tempo de execução, e, tipicamente, contém dados do programa. A exploração é feita corrompendo estes dados de uma maneira específica para causar sobrescrita em estruturas internas da aplicação, como listas de ponteiros. Em regra, a técnica de heap overflow sobrescreve links da memória de alocação dinâmica, e substitui por um ponteiro de função de chamada de um programa. (pt)
  • Przepełnienie sterty (ang. heap overflow) – rodzaj błędu przepełnienia bufora, mającego miejsce na stercie. Sterta jest obszarem pamięci procesu na którym dynamicznie alokowane są bufory na dane. Jeśli błędnie napisana aplikacja dokona próby zapisania większej porcji danych, niż wcześniej przeznaczono na ten cel pamięci, nadpisane mogą zostać struktury kontrolne aplikacji, i możliwe jest naruszenie integralności danego programu. (pl)
gold:hypernym
prov:wasDerivedFrom
page length (characters) of wiki page
foaf:isPrimaryTopicOf
is Link from a Wikipage to another Wikipage of
Faceted Search & Find service v1.17_git139 as of Feb 29 2024


Alternative Linked Data Documents: ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3330 as of Mar 19 2024, on Linux (x86_64-generic-linux-glibc212), Single-Server Edition (378 GB total memory, 59 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software