Importing symbols from a loaded diff in IDA is significantly slower than a diff performed within IDA
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- cpp
- Área
- reverse-engineering
Línea de trabajo
Reproduzca el problema en IDA usando binarios grandes y compare las importaciones de símbolos de un diff nuevo con las importaciones de resultados de diff guardados. Rastree las rutas de llamada de BinExport2 y google::protobuf::MessageLite::ParsePartialFromIstream descritas en el informe y, a continuación, verifique que los resultados guardados ya no carguen archivos BinExport una vez por símbolo y que el tiempo de importación sea comparable.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Steps to reproduce the problem:
- Load two large binaries and create IDBs
- Bindiff one of them against the other
- Import a couple of symbols and note the time it takes
- Save the diff results
- Restart IDA
- Load saved diff results
- Import the same number of symbols and again note the time it takes.
What is the expected behavior?
It should take about the same amount of time.
What went wrong?
I bindiffed bindiff (haha) against binexport and put breakpoints on calls to BinExport2::BinExport2 and google::protobuf::MessageLite::ParsePartialFromIstream. When working with a fresh diff performed within IDA bindiff does not load the binexport file for every symbol, but when working with loaded diff results binexport will load the binexport files for EACH symbol that's being ported.
What version of the product are you using? On what operating system? Bindiff 7, windows x64, IDA 7.6.210427
Any other comments? No
Ported from b/199001147
- Lenguaje dominante
- Java
- Estrellas
- 3.2k
- Forks
- 240
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de google/bindiff
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
question
Dificultad 3/5 1-2 días Aptitud para principiantes 42/100
-
ida pro 9.1 i64 db diff fails Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
-
[Bug] Error when build Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 55/100
-
[Bug] Protobuf message size limit of 2GB exceeded during final stage of diffing large binaries Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
Todos los issues de google/bindiff
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 85/100
HL7/fhir-ig-publisher#1375 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
-
Flaky: a relaunched catch-up replay can still report catching up right after its marker is written Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
johanhaleby/occurrent#1134 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
objectionary/jeo-maven-plugin#1811 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100