FakePDB icon indicating copy to clipboard operation
FakePDB copied to clipboard

pdb file not generated

Open lufatatako opened this issue 4 years ago • 12 comments

I'm using IDA 7.6, to generate pdb of an executable but it is just creating the json only. I have tried to create using fakepdb.exe also but that also doesn't works

please help with this issue thanks

lufatatako avatar Jun 13 '21 20:06 lufatatako

Same issue here, but with IDA 7.5. Is there some kind of logging I could enable to know what goes wrong ? The only thing in my output is the following

FakePDB/generate pdb:
    * generating JSON: PathToMyDll.dll.json
    * generating PDB: PathToMyDll.pdb
    * symserv EXE id: b''
    * symserv PDB id: b''
    * done

Lectem avatar Jul 03 '21 11:07 Lectem

I managed to make it work by specifying the exe path myself. It seems that the tool expects the exe/dll to still be in the same place as it was when the IDA database was created (see https://github.com/Mixaill/FakePDB/blob/master/src_plugins/ida/fakepdb/command_pdbgenerate.py#L65), which might not be the case if you share the database with someone (you might even not have the executable file at all). Is the executable file mandatory to generate a .pdb ?

Lectem avatar Jul 03 '21 12:07 Lectem

Yes, currently it is mandatory, will be fixed in the upcoming release

Mixaill avatar Jul 03 '21 13:07 Mixaill

+1

ida 7.6 + v0.3 = not generated. ida 7.4 + v0.2 = ok.

GflowerG avatar Jul 30 '21 09:07 GflowerG

I can confirm the same for DLL files. Uploaded the target here: cshell.zip.

Using IDA 7.5 SP3 with 0.3. If I try the plugin/tool on an executable for which I've properly adjusted the Debug Directory, it works fine. The tool extracts automatically the RSDS info (GUID, Age) and properly writes the .pdb file to disk, matching it to the .exe information.

If I do it for the DLL I attached above, also with Debug Directory adjusted so it's readable by FakePDB, it returns the same result as lufatatako's above:

* symserv EXE id: b''
* symserv PDB id: b''

And no .pdb generated on disk. Just the JSON.

The paths are fine, as IDA shows this:

image

Suggestions? Thanks!

sunbeam906 avatar Aug 09 '21 18:08 sunbeam906

Should be possible with the latest master

fakepdb_6356b3.zip

Mixaill avatar Aug 25 '21 00:08 Mixaill

Should be possible with the latest master

fakepdb_6356b3.zip

I still have only json file generated :(

GflowerG avatar Aug 26 '21 03:08 GflowerG

Can you provide your .idb /.i64 file? ( [email protected] or Mixaill#1085 in Discord)

Mixaill avatar Aug 26 '21 08:08 Mixaill

Can you provide your .idb /.i64 file? ( [email protected] or Mixaill#1085 in Discord)

I've also sent you a Discord invite :) Thanks, will produce the file and send over. In my case, it's a DLL and small.

P.S.: Here's my file (x86 DLL) + .idb (IDA 7.5 SP3) -> NOLF.zip

I've manually added the debug information to the DLL (Debug DIrectory, RSDS header, etc.). So it's all there:

Clipboard00

Clipboard01

Clipboard02

sunbeam906 avatar Aug 26 '21 15:08 sunbeam906

hello, for me the pdb is also not generated, and no error is printed I tried to message @Mixaill on discord, but no response so far, so I am writing also here

xNxExOx avatar Jun 03 '22 12:06 xNxExOx

My quick fix based on v0.3 for those who are interested. https://github.com/SoulXHades/FakePDB/releases/tag/v0.3.1

SoulXHades avatar Oct 10 '22 16:10 SoulXHades

My quick fix based on v0.3 for those who are interested. https://github.com/SoulXHades/FakePDB/releases/tag/v0.3.1

Thank you for taking the time to look into this! Much appreciated!

P.S.: Oh, there are several of us still monitoring this ;)

sunbeam906 avatar Oct 10 '22 18:10 sunbeam906