The first portion of any ELF file is the ELF header. This generally provides offsets to other headers (program headers and section headers) within an ELF.
typedef struct {
unsigned char e_ident[EI_NIDENT];
uint16_t e_type;
mov eax, 0x0068732f | |
push eax | |
mov eax, 0x6e69622f | |
push eax | |
mov eax, 0x0b | |
mov ebx, esp | |
xor ecx, ecx | |
xor edx, edx | |
int 0x80 |
You will need something from your Stock ROM first. Get them all and Try to modify it using the procedure.
Note: This guide will be helpful for you if you have older mediatek devices (android-5.1 or android-6.0), but up-to-date devices can also work.
Update: This guide had a few typos and derps (Oops..), but I've tried to make it free of those now (Dated November 18, 2020)
Bonus: You can also use this tool by @SebaUbuntu, @yshalsager and @mauronofrio to auto generate the twrp tree. The tool is best if your device runs on android-9.0. The tools is still not 100% compatible to all devices, but I'll still recommend it and give it 8.5/10 in the scale of varsatility.
Credit: Mark Kraus
Website: https://get-powershellblog.blogspot.com
#!/bin/bash | |
# update apt-get | |
export DEBIAN_FRONTEND="noninteractive" | |
sudo apt-get update | |
# remove previously installed Docker | |
sudo apt-get remove docker docker-engine docker.io* lxc-docker* | |
# install dependencies 4 cert |
// https://twitter.com/msuiche | |
int threadMain() | |
{ | |
unsigned int i; // edi@1 | |
_DWORD *v1; // eax@2 | |
void *v2; // esi@7 | |
char v4; // [sp+13h] [bp-2Dh]@0 | |
char v5; // [sp+14h] [bp-2Ch]@1 | |
void *Memory; // [sp+18h] [bp-28h]@1 |
echo "deb http://repo.vivaldi.com/stable/deb/ stable main" | sudo tee /etc/apt/sources.list.d/vivaldi.list > /dev/null | |
wget -O - http://repo.vivaldi.com/stable/linux_signing_key.pub | sudo apt-key add - | |
sudo apt update && sudo apt install vivaldi-stable |
#!/bin/bash | |
# Give the usual warning. | |
clear; | |
echo "[INFO] Automated Android root script started.\n\n[WARN] Exploit requires sdk module \"NDK\".\nFor more information, visit the installation guide @ https://goo.gl/E2nmLF\n[INFO] Press Ctrl+C to stop the script if you need to install the NDK module. Waiting 10 seconds..."; | |
sleep 10; | |
clear; | |
# Download and extract exploit files. | |
echo "[INFO] Downloading exploit files from GitHub..."; |
Vivaldi Technologies currently only provide .deb and .rpm packages but it is possible to install it on different distros. This install script automates the process.
You can use the script to fetch and install the latest public snapshot like so:
chmod +x install-vivaldi.sh # Only needed the first time