NationalSecurityAgency / ghidra

Ghidra is a software reverse engineering (SRE) framework
https://www.nsa.gov/ghidra
Apache License 2.0
50.55k stars 5.78k forks source link

eBPF fails to load. #6857

Open tur11ng opened 2 weeks ago

tur11ng commented 2 weeks ago

It fails to load on Linux but it loads fine on Windows.

sample.zip

Cannot invoke "ghidra.program.model.symbol.Symbol.getAddress()" because the return value of "ghidra.program.model.symbol.SymbolIterator.next()" is null
java.lang.NullPointerException: Cannot invoke "ghidra.program.model.symbol.Symbol.getAddress()" because the return value of "ghidra.program.model.symbol.SymbolIterator.next()" is null
    at ghidra.app.util.bin.format.elf.relocation.eBPF_ElfRelocationHandler.relocate(eBPF_ElfRelocationHandler.java:59)
    at ghidra.app.util.bin.format.elf.relocation.ElfRelocationContext.processRelocation(ElfRelocationContext.java:112)
    at ghidra.app.util.opinion.ElfProgramBuilder.processRelocationTableEntries(ElfProgramBuilder.java:1054)
    at ghidra.app.util.opinion.ElfProgramBuilder.processRelocationTable(ElfProgramBuilder.java:953)
    at ghidra.app.util.opinion.ElfProgramBuilder.processRelocations(ElfProgramBuilder.java:888)
    at ghidra.app.util.opinion.ElfProgramBuilder.load(ElfProgramBuilder.java:173)
    at ghidra.app.util.opinion.ElfProgramBuilder.loadElf(ElfProgramBuilder.java:110)
    at ghidra.app.util.opinion.ElfLoader.load(ElfLoader.java:148)
    at ghidra.app.util.opinion.AbstractLibrarySupportLoader.doLoad(AbstractLibrarySupportLoader.java:887)
    at ghidra.app.util.opinion.AbstractLibrarySupportLoader.loadProgram(AbstractLibrarySupportLoader.java:98)
    at ghidra.app.util.opinion.AbstractProgramLoader.load(AbstractProgramLoader.java:131)
    at ghidra.plugin.importer.ImporterUtilities.importSingleFile(ImporterUtilities.java:395)
    at ghidra.plugin.importer.ImporterDialog.lambda$okCallback$7(ImporterDialog.java:336)
    at ghidra.util.task.TaskBuilder$TaskBuilderTask.run(TaskBuilder.java:306)
    at ghidra.util.task.Task.monitoredRun(Task.java:134)
    at ghidra.util.task.TaskRunner.lambda$startTaskThread$0(TaskRunner.java:106)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
    at java.base/java.lang.Thread.run(Thread.java:840)
ryanmkurtz commented 2 weeks ago

Looks fairly identical to #6621. Have you tried Ghidra 11.1?