HEX
Server: nginx/1.28.3
System: Linux ip-172-31-12-242 6.17.0-1007-aws #7~24.04.1-Ubuntu SMP Thu Jan 22 21:04:49 UTC 2026 x86_64
User: root (0)
PHP: 7.4.33
Disabled: passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv
Upload Files
File: //proc/660475/root/usr/src/linux-headers-6.17.0-1007-aws/scripts/extract-fwblobs
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
#
# -----------------------------------------------------------------------------
# Extracts the vmlinux built-in firmware blobs - requires a non-stripped image
# -----------------------------------------------------------------------------

if [ -z "$1" ]; then
	echo "Must provide a non-stripped vmlinux as argument"
	exit 1
fi

read -r RD_ADDR_HEX RD_OFF_HEX <<< "$( readelf -SW "$1" |\
grep -w rodata | awk '{print "0x"$5" 0x"$6}' )"

FW_SYMS="$(readelf -sW "$1" |\
awk -n '/fw_end/ { end=$2 ; print name " 0x" start " 0x" end; } { start=$2; name=$8; }')"

while IFS= read -r entry; do
	read -r FW_NAME FW_ADDR_ST_HEX FW_ADDR_END_HEX <<< "$entry"

	# Notice kernel prepends _fw_ and appends _bin to the FW name
	# in rodata; hence we hereby filter that out.
	FW_NAME=${FW_NAME:4:-4}

	FW_OFFSET="$(printf "%d" $((FW_ADDR_ST_HEX - RD_ADDR_HEX + RD_OFF_HEX)))"
	FW_SIZE="$(printf "%d" $((FW_ADDR_END_HEX - FW_ADDR_ST_HEX)))"

	dd if="$1" of="./${FW_NAME}" bs="${FW_SIZE}" count=1 iflag=skip_bytes skip="${FW_OFFSET}"
done <<< "${FW_SYMS}"