buffer-overflow

Dlaczego funkcja gets jest tak niebezpieczna, że nie powinna być używana?

Kiedy próbuję skompilować kod C, który używa funkcji gets() z GCC, I get this Ostrzeżenie: (.tekst+0x34): Ostrzeżeni ... dlaczego jest takie ostrzeżenie o używaniu gets()? Jeśli gets() jest tak niebezpieczny, więc dlaczego nie możemy go usunąć?

Dlaczego to for loop kończy się na niektórych platformach, a nie na innych?

Ostatnio zacząłem uczyć się C i chodzę na zajęcia z C jako przedmiotem. Obecnie bawię się pętlami i natrafiam na dziwne zacho ... Robię to celowo. Po prostu nie mogę zrozumieć, jak zachowanie może być różne w różnych systemach operacyjnych i komputerach.

Dlaczego ten kod jest podatny na ataki przepełnienia bufora?

int func(char* str) { char buffer[100]; unsigned short len = strlen(str); if(len >= 100) { return (-1 ... zieć się dlaczego. Myślę, że to ma związek z len byciem ogłoszonym short zamiast int, ale nie jestem pewien. Jakieś pomysły?

Jak wyłączyć optymalizację kompilatora gcc, aby włączyć przepełnienie bufora

Pracuję nad problemem z zadaniami domowymi , który wymaga wyłączenia ochrony optymalizacji kompilatora, aby działał. Używam ... są właściwe. Zdaję sobie sprawę, że to zależy od architektury - moja maszyna pracuje z 32-bitowym procesorem Intela. Dzięki.

Przepełnienie bufora działa w gdb, ale nie bez niego

Jestem na CentOS 6.4 32 bit i próbuję spowodować przepełnienie bufora w programie. W GDB działa. Oto wyjście: [root@localho ... ll glibc-2.12-1.107.el6_4.2.i686 sh-4.1# Jednak gdy uruchamiam stos programu tylko na własną rękę to seg usterki. Dlaczego?

Dlaczego powinieneś używać strncpy zamiast strcpy?

Edit: dodałem źródło przykładu. Natknąłem się Ten przykład : char source[MAX] = "123456789"; char source1[MAX] = "12345678 ... zasadzie skopiować czyjeś nazwisko (np. Tom Brokaw) z Tomem Bro763. Jakie są zalety korzystania z strncpy() over strcpy()?

Pisanie idiomów Secure C i Secure C

"Przeciętny człowiek nie chce być wolny. On po prostu chce być bezpieczny."- H. L. Menken Próbuję napisać bardzo bezpie ... - Narzędzie do analizy statycznej [108]}używanie dowodów Thm do udowodnienia bezpieczeństwa przez Yannick Moy libsafe

Jaka jest różnica między przepełnieniem stosu a przepełnieniem bufora?

Czym różni się przepełnienie stosu od przepełnienia bufora w programowaniu ?

Jak działa sanki NOP?

Nie mogę znaleźć dobrego źródła, które odpowie na to pytanie. Wiem, że sanie nop to technika używana do obejścia randomizacji ... , jak to działa. Jaki jest prosty przykład, który ilustruje tę metodę? Co oznaczają terminy takie jak 128-bajtowy NOP sled?

Jak mogę wywołać przepełnienie bufora?

Dostałem zadanie domowe z prośbą o wywołanie funkcji bez jawnego wywoływania jej, używając przepełnienia bufora. Kod jest w z ... rzejść bezpośrednio do adresu g (), ale nie jestem pewien, jak uzyskać do niego dostęp. W każdym razie, napiwki będą świetne.

Co to jest przepełnienie bufora i jak je wywołać?

Słyszałem o przepełnieniu bufora i chciałbym wiedzieć, jak go wywołać. Może mi ktoś pokazać mały przykład przepełnienia bufora? Nowe (i do czego służą?)

Czy Java ma przepełnienia bufora?

Czy Java ma przepełnienia bufora? Jeśli tak, możesz podać mi scenariusze?

Shellcode dla prostego przepełnienia stosu: Exploited program with shell kończy się bezpośrednio po execve ("/bin / sh")

Grałem z przepełnieniami bufora na Linuksie (amd64) i próbowałem wykorzystać prosty program, ale się nie udało. Wyłączyłem fu ... tackpointer 0x7fffffffe308 Jump to 0x7fffffffe308 process 4185 is executing new program: /bin/dash Program exited normally.

W jaki sposób przepełnienia buforów są wykorzystywane do wykorzystania komputerów?

Jak przepełnienia bufora wykorzystywane są do wykorzystania komputerów? Jak można wykonać dowolny kod po prostu powodując ... konania własnego kodu. Ponadto, czy złośliwy kod strony trzeciej musi być napisany w języku montażu procesorów docelowych?

"xor eax, ebp" używany w kompilatorze C++

Próbowałem skompilować kilka fragmentów C++ na VS2010 i przeanalizowałem pliki wykonywalne na IDA Pro. Zauważyłem, że większo ... xor eax, ebp I coś w rodzaju xor ecx, ebp Na dole. Dlaczego tak się dzieje? Optymalizacja kompilatora została wyłączona.

Dlaczego adres pamięci %FS:0x28 (fs[0x28]) ma wartość losową?

Napisałem fragment kodu C i zdemontowałem go, a także przeczytałem rejestry, aby zrozumieć, jak program działa w assembly. i ... 000400600 <+76>: leaveq 0x0000000000400601 <+77>: retq Chciałbym wiedzieć, co naprawdę robi?

Jeśli twój stos i sterta nie są wykonywalne, jak może działać Twój kod?

Przeczytałem książkę o przepełnieniu bufora i sugeruję, że następny do załatwienia: Uczynienie stosu (i sterty) niewykon ... ych programy. Ale nie rozumiem, jak możemy to zrobić-gdzie miałoby miejsce wykonanie, jeśli nie na stercie czy na stosie?

przykład przepełnienia bufora z książki Sztuka eksploatacji

Czytałem tę książkę Sztuka eksploatacji, która jest całkiem dobra książka i natknąłem się na ten przykład z exploit_notesearc ... w funkcji main w exploit_notesearch.c będzie bezużyteczne, ale jakoś ten exploit działa, co jest dla mnie całkowicie mylące.