Cyber Protection & Hardening Course
, Process / Application
Hardening
Parts of a binary
Protections
Kernel Protections
Assessing system binaries
Cyber Protection and Hardening Course
,Binary Sections
• Linux binaries are made up of multiple sections that each
serves a specific role during execution
• The key sections covered in more detail include
– .text
– .data
– .rodata
– .plt
– .got
• Viewing information about the sections is done with
readelf
root@chiron:~# readelf -S /bin/ls
Cyber Protection and Hardening Course
, .text Section
• This section of the binary is where the executable code is
located.
• The entry point of the application should be somewhere
in this section
• Section should be marked as AX (Allocatable and
eXecutable)
– This is under flags in readelf -S
root@chiron:~# readelf -S /bin/ls
[14] .text PROGBITS 0000000000003bb0 00003bb0 0000000000012099
0000000000000000 AX 0 0 16
Cyber Protection and Hardening Course
, Process / Application
Hardening
Parts of a binary
Protections
Kernel Protections
Assessing system binaries
Cyber Protection and Hardening Course
,Binary Sections
• Linux binaries are made up of multiple sections that each
serves a specific role during execution
• The key sections covered in more detail include
– .text
– .data
– .rodata
– .plt
– .got
• Viewing information about the sections is done with
readelf
root@chiron:~# readelf -S /bin/ls
Cyber Protection and Hardening Course
, .text Section
• This section of the binary is where the executable code is
located.
• The entry point of the application should be somewhere
in this section
• Section should be marked as AX (Allocatable and
eXecutable)
– This is under flags in readelf -S
root@chiron:~# readelf -S /bin/ls
[14] .text PROGBITS 0000000000003bb0 00003bb0 0000000000012099
0000000000000000 AX 0 0 16
Cyber Protection and Hardening Course