All Projects → MaskRay → Elfhacks

MaskRay / Elfhacks

Dive into ELF files using simple self-contained examples

Labels

Projects that are alternatives of or similar to Elfhacks

Kubernetes Common Services
These services help make it easier to manage your applications environment in Kubernetes
Stars: ✭ 109 (-5.22%)
Mutual labels:  makefile
Docker Ce Packaging
Packaging scripts for Docker CE
Stars: ✭ 111 (-3.48%)
Mutual labels:  makefile
Istio Handbook
Istio Service Mesh Advanced Practical - Istio服务网格进阶实战 https://www.servicemesher.com/istio-handbook/
Stars: ✭ 1,646 (+1331.3%)
Mutual labels:  makefile
Seed
Go application GitHub repository template.
Stars: ✭ 109 (-5.22%)
Mutual labels:  makefile
Netbsd
for NetBSD project.
Stars: ✭ 110 (-4.35%)
Mutual labels:  makefile
Ghost On Docker
Ghost Blog on Docker - Dockerfile for ARM etc
Stars: ✭ 111 (-3.48%)
Mutual labels:  makefile
Python Jenkins Template
Template for Jenkins jobs for python projects.
Stars: ✭ 108 (-6.09%)
Mutual labels:  makefile
Br Atlas
Create TopoJSON files from IBGE's collection of Brazil maps
Stars: ✭ 114 (-0.87%)
Mutual labels:  makefile
Multi Stage Build Example
Example repository to accompany my talk at Velocity 2018
Stars: ✭ 111 (-3.48%)
Mutual labels:  makefile
Pkg2 Patches
FS and ACID patches for both Hekate and Fusée.
Stars: ✭ 112 (-2.61%)
Mutual labels:  makefile
Saturn
Stars: ✭ 110 (-4.35%)
Mutual labels:  makefile
Libbrotli
meta project to build libraries from the brotli source code
Stars: ✭ 110 (-4.35%)
Mutual labels:  makefile
Flex injected
Injecting FLEX with MobileSubstrate. Inject FLEX library into 3rd party apps.
Stars: ✭ 111 (-3.48%)
Mutual labels:  makefile
Project
General issue tracker for the Frictionless Data project.
Stars: ✭ 108 (-6.09%)
Mutual labels:  makefile
Makefile.venv
Seamlessly manage Python virtual environment with a Makefile
Stars: ✭ 114 (-0.87%)
Mutual labels:  makefile
Workflow Paper
The .md source for "The Plain Person's Guide to Plain Text Social Science". To exactly reproduce the PDF you will need current versions of R, TexLive, biber, and the support files at http://www.kieranhealy.org/resources.html.
Stars: ✭ 108 (-6.09%)
Mutual labels:  makefile
Ppl Intro
probabilistic programming for PL folks
Stars: ✭ 112 (-2.61%)
Mutual labels:  makefile
Businesscard Linux
A Buildroot distribution small enough to run on my business card
Stars: ✭ 1,573 (+1267.83%)
Mutual labels:  makefile
Switchmode
an open form contract for open source contractors
Stars: ✭ 114 (-0.87%)
Mutual labels:  makefile
Dapr Demos
Collection of personal Dapr demos (bindings, state, pub/sub, service-to-service invocation)
Stars: ✭ 109 (-5.22%)
Mutual labels:  makefile

ElfHacks

Dive into ELF files using simple self-contained examples.

Examples

# Program Description
backtrace gcc backtrace(3)
bss-section-in-c-and-c++ gcc/g++ .bss
hot-swapping g++ hot swapping of C++ programs
gcc-attribute-alias gcc alias attribute emits an alias for another symbol
gcc-builtin_return_address gcc __builtin_return_address
gcc-finstrument-functions gcc generate instrumentation calls for entry and exit to functions
gcc-nostdlib gcc do not use standard system startup files or libraries
gcc-pie gcc produce a position independent executable (IMHO, like PIC+Bsymbolic)
gcc-static gcc statically linked executable
get-got-address readelf,objdump get GOT address of functions or variables
get-plt-address readelf,objdump get PLT address of functions
g++-inline-means-weak-symbol g++ inline functions translated to weak symbols
implicit-inline-member-function g++ member functions defined in classes are implicitly inline
ld-Bsymbolic ld -Bsymbolic binds references to local symbols
ld-dy-dn ld -dn makes ld link against static libraries
ld-execstack ld -z execstack and NX bit
ld-export-dynamic ld --export-dynamic makes executables export dynamic symbols
ld-now ld -z now tells ld.so to resolve symbols immediately
ld-relro ld RELocation Read-Only
ld-rpath ld -rpath sets DT_RUNPATH which adds a directory to runtime library search path
ld-whole-archive ld --whole-archive includes every object files (not only those which are required)
ld-wrap ld --wrap makes undefined references to SYMBOL be resolved to __wrap_SYMBOL
LD_BIND_NOW ld.so resolve all symbols at startup instead of deferring resolution to the first call
LD_PROFILE ld.so profile a shared library
LD_TRACE_LOADED_OBJECTS ld.so list dynamic library dependencies rather than running
as-syscall as make syscalls in x86-64 assembly
as-syscall-i386 as make syscalls in i386 assembly
shellcode-in-c gcc,objcopy write shellcode in c using gcc & objcopy
objcopy-link-blob objcopy link blob into executable
libSegFault glibc
version-script-hiding-c++-dynsym ld hide C++ dynamic symbols using a version script

Dynamic linker

The man page ld.so(8) specifies directories are searched in which order when resolving library dependencies:

  • DT_RPATH attribute in dynamic section is DT_RUNPATH does not exist
  • environment variable LD_LIBRARY_PATH
  • DT_RUNPATH attribute in dynamic section
  • /etc/ld.so.cache
  • /lib, /usr/lib
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].