Respected Sir,
The readelf produces buggy output for the attached elf file ("Input").
The output it gives is.......
========================================================================
ELF Header:
Magic: 7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class: ELF32
Data: 2's complement, little endian
Version: 1 (current)
OS/ABI: UNIX - System V
ABI
Version: 0
Type: EXEC (Executable file)
Machine: Intel 80386
Version: 0x1
Entry point address: 0x4011b0
Start of program headers: 52 (bytes into file)
Start of section
headers: 0 (bytes into file)
Flags: 0x0
Size of this header: 52 (bytes)
Size of program headers: 32 (bytes)
Number of program headers: 5
Size of section headers: 0 (bytes)
Number of section headers: 0
Section header string table index: 0
There are no sections in this file.
Program Headers:
Type Offset VirtAddr PhysAddr FileSiz MemSiz Flg Align
PHDR 0x000034 0x003ff82c 0x003ff82c 0x000a0 0x000a0 R E 0x4
INTERP 0x0000d4 0x003ff8cc 0x003ff8cc 0x00013 0x00013 R 0x1
[Requesting program interpreter: /lib/ld-linux.so.2]
LOAD 0x000000 0x003ff7f8 0x003ff7f8 0x24808 0x24808 R E 0x1000
LOAD 0x024808 0x00424000 0x00424000 0x03200 0x03200 RW 0x1000
DYNAMIC 0x026808 0x004240c8 0x004240c8 0x000c8 0x000c8 RW 0x4
Dynamic segment at offset 0x26808 contains 14 entries:
Tag Type Name/Value
0x00000001 (NEEDED) Shared library: []
0x00000004 (HASH) 0x3ff8e0
0x00000005 (STRTAB) 0x400840
0x00000006 (SYMTAB) 0x400520
0x0000000a
(STRSZ) 748 (bytes)
0x0000000b (SYMENT) 22 (bytes)
0x00000003 (PLTGOT) 0x4260c8
0x00000002 (PLTRELSZ) 392 (bytes)
0x00000014 (PLTREL) REL
0x00000017 (JMPREL) 0x400b58
0x6ffffffe
(VERNEED) 0x400b38
0x6fffffff (VERNEEDNUM) 1
0x6ffffff0 (VERSYM) 0x400b2c
0x00000000 (NULL) 0x0
There are no relocations in this file.
There are no unwind sections in this file.
Histogram for bucket list length (total of 0 buckets):
Length Number % of total Coverage
No version information found in this file.
==================================================================
Problems are....
[1] Does not give Shared Library name which is "kernel32.dll.so" at index 1 in .dynstr which starts offset 0x01048 (0x400840-0x003ff7f8)
[2] Do not display histogram information in reality file contains 10 buckets as mentioned in the hash table which starts at offset 0x0e8
[3] Program represented by the "Input" elf file produces segmentation fault when executed.
./input
Segmentation Fault (SEGSV Signal)
====================================================================
Kindly, findout the reasons for the stated problems and report the solutions to overcome those. Also, can you provide the source of readelf so that we can try to findout the solution to the problems. If there are problems in the "Input" about the Format lets know and if possible provide with the repaired file.
Thank you