Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
libunwind_CVE-2015-3239_After — Libreria per lo srotolamento degli stack di chiamate del processore, con supporto per multiple architetture e sistemi operativi, incluse istruzioni per la compilazione e i test di regressione. | Kitploit
Strumenti/GitHubGitHub/renukaselvar/libunwind_cve-2015-3239_after
Memory ForensicsAnalisi delle VulnerabilitàExploitReverse EngineeringDebuggerAnalisi di Binari
GitHubrenukaselvar/libunwind_cve-2015-3239_after

libunwind_CVE-2015-3239_After

Libreria per lo srotolamento degli stack di chiamate del processore, con supporto per multiple architetture e sistemi operativi, incluse istruzioni per la compilazione e i test di regressione.

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository
41 anno faNon ancora revisionato

-- mode: Outline --

Questa è la versione 1.0 della libreria unwind. Questa libreria supporta diverse combinazioni architettura/sistema operativo:

Linux/x86-64: Funziona bene. Linux/x86: Funziona bene. Linux/ARM: Funziona bene. Linux/IA-64: Completamente testato e supportato. Linux/PARISC: Funziona bene, ma alla libreria C manca unwind-info. HP-UX/IA-64: Funziona per lo più ma noto per avere alcune limitazioni serie. Linux/AArch64: Aggiunto di recente. Linux/PPC64: Aggiunto di recente. Linux/SuperH: Aggiunto di recente. FreeBSD/i386: Aggiunto di recente. FreeBSD/x86-64: Aggiunto di recente (l'architettura FreeBSD è conosciuta come amd64).

  • Istruzioni Generali per la Build

In generale, questa libreria può essere compilata e installata con i seguenti comandi:

root@kitploit:~
$ autoreconf -i # Necessario solo per la build da git. Dipende da libtool.
$ ./configure
$ make
$ make install prefix=PREFIX

dove PREFIX è il prefisso di installazione. Di default, viene usato un prefisso di /usr/local, in modo che libunwind.a venga installato in /usr/local/lib e unwind.h venga installato in /usr/local/include. Per i test, potresti voler usare un prefisso di /usr/local invece.

  • Compilazione con il compilatore Intel

** Versione 8 e successive

A partire dalla versione 8, il nome preferito per il compilatore Intel IA-64 è "icc" (lo stesso nome che su x86). Pertanto, la riga di configure dovrebbe essere simile a questa:

root@kitploit:~
$ ./configure CC=icc CFLAGS="-g -O3 -ip" CXX=icc CCAS=gcc CCASFLAGS=-g \
	LDFLAGS="-L$PWD/src/.libs"
  • Compilazione su HP-UX

Per il momento, libunwind deve essere compilato con GCC su HP-UX.

libunwind dovrebbe essere configurato e installato su HP-UX in questo modo:

root@kitploit:~
$ ./configure CFLAGS="-g -O2 -mlp64" CXXFLAGS="-g -O2 -mlp64"

Avvertenza: Lo svolgimento (unwinding) di binari a 32 bit (ILP32) non è supportato al momento.

** Soluzione per versioni precedenti di GCC

GCC v3.0 e GCC v3.2 includono una versione errata di sys/types.h. La soluzione è eseguire i seguenti comandi prima di lanciare "configure":

root@kitploit:~
$ mkdir $top_dir/include/sys
$ cp /usr/include/sys/types.h $top_dir/include/sys

GCC v3.3.2 o successivi sono stati corretti e non richiedono questa soluzione.

  • Compilazione per PowerPC64 / Linux

Per compilare per power64 dovresti usare:

$ ./configure CFLAGS="-g -O2 -m64" CXXFLAGS="-g -O2 -m64"

Se il tuo power supporta i registri altivec:

$ ./configure CFLAGS="-g -O2 -m64 -maltivec" CXXFLAGS="-g -O2 -m64 -maltivec"

Per verificare se il tuo processore supporta i registri vettoriali (altivec): cat /proc/cpuinfo | grep altivec e dovresti avere qualcosa del genere: cpu : PPC970, altivec supported

Se libunwind sembra non funzionare (backtracing fallisce), prova a compilarlo con -O0, senza ottimizzazioni. Ci sono alcuni problemi del compilatore a seconda della versione del tuo gcc.

  • Compilazione su FreeBSD

Le istruzioni generali di compilazione si applicano. Per compilare ed eseguire diversi test, hai bisogno della libreria libexecinfo disponibile nei port come devel/libexecinfo.

Lo sviluppo del port è stato fatto su FreeBSD 8.0-STABLE. La libreria è stata compilata con il compilatore di sistema che è una versione modificata di gcc 4.2.1, così come gcc 4.4.3.

  • Test di Regressione

Dopo aver compilato la libreria, puoi eseguire una serie di test di regressione con:

root@kitploit:~
$ make check

** Risultati attesi su IA-64 Linux

A meno che tu non abbia una libreria C e un compilatore molto recenti, è attualmente previsto che i seguenti test falliscano su IA-64 Linux:

root@kitploit:~
Gtest-init		(dovrebbe passare a partire da glibc-2.3.x/gcc-3.4)
Ltest-init		(dovrebbe passare a partire da glibc-2.3.x/gcc-3.4)
test-ptrace		(dovrebbe passare a partire da glibc-2.3.x/gcc-3.4)
run-ia64-test-dyn1	(dovrebbe passare a partire da glibc-2.3.x)

Ciò non significa che libunwind non possa essere usato con compilatori o librerie C più vecchi, significa solo che per alcuni casi particolari, l'unwinding fallirà. Poiché sono casi particolari, è improbabile che le applicazioni li incontrino.

Nota: Se ottieni molti errori in Gia64-test-nat e Lia64-test-nat, è quasi certamente un segno di un assemblatore vecchio. L'assemblatore GNU codificava in modo errato gli offset relativi al precedente puntatore di stack. Questo bug è stato corretto il 21-Sep-2004, quindi qualsiasi assemblatore successivo andrà bene.

** Risultati attesi su x86 Linux

È previsto che i seguenti test falliscano su x86 Linux:

root@kitploit:~
Gtest-resume-sig	(non riesce a ottenere SIGUSR2)
Ltest-resume-sig	(allo stesso modo)
Gtest-dyn1		(nessun supporto per informazioni di unwind dinamiche ancora)
Ltest-dyn1		(nessun supporto per informazioni di unwind dinamiche ancora)
test-setjmp		(longjmp() non implementato ancora)
run-check-namespace	(nessun _Ux86_getcontext ancora)
test-ptrace

** Risultati attesi su x86-64 Linux

È previsto che i seguenti test falliscano su x86-64 Linux:

root@kitploit:~
Gtest-dyn1		(nessun supporto per informazioni di unwind dinamiche ancora)
Ltest-dyn1		(nessun supporto per informazioni di unwind dinamiche ancora)
Gtest-init (vedi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18743)
Ltest-init		(allo stesso modo)
test-async-sig		(crash a causa di unwind-info errato?)
test-setjmp		(longjmp() non implementato ancora)
run-check-namespace	(nessun _Ux86_64_getcontext ancora)
run-ptrace-mapper	(??? investigare)
run-ptrace-misc	(vedi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18748
		 e http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18749)

** Risultati attesi su PARISC Linux

Avvertenza: GCC v3.4 o successivo è necessario su PA-RISC Linux. Le versioni precedenti del compilatore non riuscivano a generare l'intestazione del programma di gestione delle eccezioni (GNU_EH_FRAME) necessaria per l'unwinding.

È previsto che i seguenti test falliscano su x86-64 Linux:

root@kitploit:~
Gtest-bt   (backtrace troncato a kill() per mancanza di unwind-info)
Ltest-bt   (allo stesso modo)
Gtest-resume-sig  (Gresume.c:my_rt_sigreturn() è in qualche modo errato)
Ltest-resume-sig  (allo stesso modo)
Gtest-init (allo stesso modo)
Ltest-init (allo stesso modo)
Gtest-dyn1 (nessun supporto per informazioni di unwind dinamiche ancora)
Ltest-dyn1 (nessun supporto per informazioni di unwind dinamiche ancora)
test-setjmp		(longjmp() non implementato ancora)
run-check-namespace	(la toolchain non supporta ancora HIDDEN)

** Risultati attesi su HP-UX

"make check" non è attualmente supportato per HP-UX. Puoi provare a eseguirlo, ma la maggior parte dei test fallirà (e alcuni potrebbero non terminare). Gli unici programmi di test che si sa funzionino al momento sono:

root@kitploit:~
 tests/bt
 tests/Gperf-simple
 tests/test-proc-info
 tests/test-static-link
 tests/Gtest-init
 tests/Ltest-init
 tests/Gtest-resume-sig
 tests/Ltest-resume-sig

** Risultati attesi su PPC64 Linux

"make check" dovrebbe essere eseguito con non più di 10 test falliti su 24.

  • Test delle Prestazioni

Questa distribuzione include alcuni semplici test delle prestazioni che danno un'idea del costo base di varie operazioni di libunwind. Dopo aver compilato la libreria, puoi eseguire questi test con i seguenti comandi:

$ cd tests $ make perf

  • Contattare gli Sviluppatori

Si prega di indirizzare tutte le domande riguardanti questa libreria a:

root@kitploit:~
[email protected]

Puoi farlo inviando una mail a [email protected] con un corpo di:

root@kitploit:~
subscribe libunwind-devel

oppure puoi iscriverti e gestire la tua iscrizione tramite l'interfaccia web a:

root@kitploit:~
https://savannah.nongnu.org/mail/?group=libunwind
Scarica lo strumento