Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Duplicate HighIL statement when lifting `fsbase + 0x28`

Aperta
#8,439 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cpp

Direzione di ricerca

Reproduce the case at 0x402f3c using the assembly and HighIL shown in the issue, then trace the lifting path for the fsbase + 0x28 operand. Done means the standalone duplicate expression is absent and the conditional retains the expected HighIL form.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Version and Platform (required):

  • Binary Ninja Version: 5.4.10466-dev Personal (42e25af5)
  • Edition: Non-Commercial
  • OS: Fedora Linux
  • OS Version: 44
  • CPU Architecture: M2

Bug Description:

The following assembly:

00402f38  488b55f8            mov     rdx, qword [rbp-0x8 {var_10}]
00402f3c  64482b142528000000  sub     rdx, qword [fs:0x28]
00402f45  7405                je      0x402f4c

is lifted to HighIL:

00402f3c        *(fsbase + 0x28)
00402f3c        
00402f45        if (rax != *(fsbase + 0x28))

instead of being correctly lifted to HighIL

00402f45        if (rax != *(fsbase + 0x28))

Steps To Reproduce:
Please provide all steps required to reproduce the behavior:

  1. Open the binary
  2. Go to 0x402f3c
  3. Notice the incorrect lifting

Expected Behavior:

I expect the following assembly:

00402f38  488b55f8            mov     rdx, qword [rbp-0x8 {var_10}]
00402f3c  64482b142528000000  sub     rdx, qword [fs:0x28]
00402f45  7405                je      0x402f4c

to be correctly lifted to HighIL:

00402f45        if (rax != *(fsbase + 0x28))

Screenshots/Video Recording:

Image

Binary:

Reference phrase: celestial system cycles delicately

Lingua principale
C++
Stelle
1.3k
Fork
298
Merge medio
4g 13h
PR unite (30g)
20

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Vector35/binaryninja-api

Tutte le issue di Vector35/binaryninja-api

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.