dza + asm   73
Disassemble hex edit bytes directly in the browser
asm  assembly  disassemble  disassembler  web  hex  reverse-engineering 
june 2016 by dza
Reverse Engineering — Make OTX works in OS X Mavericks with Xcode 5
# wrong: It's like this.
sudo ln -s /Applications/ /Applications/

otx  mavericks  howto  tutorial  guide  xcode  debugging  asm  assembly  reverse-engineering  reverse  engineering 
december 2013 by dza
Software archaeology
asmDIFF | An x86 binary assembler search tool

asmDiff is an binary assembly search, diff and disassembly tool. It supports Windows PE (exe/dll) and Linux ELF binary format compiled for x86 and x68_64 architectures. It is particular useful when searching for asm functions, instructions or memory pointers in a patched, updated or otherwise modified binary. Try out the live demo and read the paper below.

Note: asmDIFF is still closed source as long as we do not know how to proceed with it. Feel free to contact us on questions, suggestions, or licensing request. However a fully useable win32 version is included in mmBBQ 3.0.0 and upwards.

Quick start:

upload two binaries files. (exe/dll/elf)
$> asmdiff search <ADDR> -o <OLDFILE> -n <NEWFILE>
$> asmdiff diff -o /usr/bin/asmdiff -n /usr/bin/asmdiff
assembly  reverse-engineering  reverse  security  diff  instruction  instructions  asm 
march 2013 by dza - BinDiff
Comparing two executables to learn from already cracked programs in a graphed assembly output for education, GREAT!
asm  reverse-engineering  reverse  compare  difference  diff  comparing  crack  cracking  binary 
march 2013 by dza
Reverse Engineering 1 - YouTube
Basic understanding of Reverse-Engineering and ASM instructions. Great examples, great voice, long, thorough.
reverse-engineering  beginner  asm  assembly  reverse  basic 
february 2013 by dza
Valgrind - Wikipedia, den frie encyklopædi
Valgrind er et edb-program til dynamisk fejlfinding i og analyse af andre programmer.

Valgrind kan finde fejl ved den måde programmer bruger hukommelse på såsom brug af ikke-initialiseret hukommelse og brug af hukommelse efter det er frigivet og meget andet. Valgrind fungerer ved at fortolke et programs binære maskinkode på en virtuel CPU hvilket gør at de fleste programmer kan køres af Valgrind uden at man skal gøre nogle særlige forberedelser forinden.

Valgrind er et frit program under GPL-licensen. Det er lavet af Julian Seward og andre. Det kan bruges på Linux-systemer på x86, x86-64, PowerPC og MacOS X. Det findes desuden nogle projekter for portering til andre styresystemer.

Valgrind er modulært opbygget, og analysen af det program som Valgrind udfører, laves af et særskilt værktøj (tool). Valgrind version 3.2.0 distribueres med følgende værktøjer:

Memcheck: Til at finde af fejl ved brug af hukommelse (adressering af ikke-allokeret hukommelse, brug af ikke-initialiseret hukommelse, hukommelseshuller og andre hukommelsesrelaterede fejltyper).
Cachegrind: Til profilering (analyse) af brugen af hukommelsecache (I1-, D1- og L2-cache).
Massif: Til profilering af det samlede hukommelsesforbrug.
Callgrind: Til analyse af hvordan programmets funktioner kalder hinanden.
Lackey: Et demonstrationsværktøj til brug for værktøjsudviklerne.

Andre værktøjer omfatter:

Helgrind: Til analyse af mulig usikker brug af resurser i trådede programmer.

Programmet af opkaldt efter Valgrind, porten til Valhal i nordisk mytologi.
valgrind  c  dev  binary  binær  asm  assembly 
september 2012 by dza
How main() is executed on Linux LG #84

The question is simple: how does linux execute my main()?
Through this document, I'll use the following simple C program to illustrate how it works. It's called "simple.c"



gcc -o simple simple.c

What's in the executable?

To see what's in the executable, let's use a tool "objdump"

objdump -f simple

simple: file format elf32-i386
architecture: i386, flags 0x00000112:
start address 0x080482d0

The output gives us some critical information about the executable.
First of all, the file is "ELF32" format. Second of all, the start address is "0x080482d0"
asm  assembly  reverse-engineering  reverse  linux  objdump  gcc  howto  tutorial  guide  dev 
september 2012 by dza
The IDA Pro Book
A thorough IDA pro debugger manual/book
debug  debugging  ida  pro  howto  tutorial  guide  asm  assembly  crack  cracking  analysis  malware 
may 2012 by dza
Tavis Ormandy - Executable Patching with GDB
Some really professional advice, from an Opera dev- I stumbled upon this guy searching for some Opera advice at another time :)

He looks very talented and writes a good article.
gdb  reverse  reverse-engineering  patch  patching  debug  debugging  assembly  asm  nasm_assemble  gdbinit  assemble 
may 2012 by dza
Binary File Descriptor library - Wikipedia, the free encyclopedia
The Binary File Descriptor library (BFD) is the GNU Project's main mechanism for the portable manipulation of object files in a variety of formats. As of 2003, it supports approximately 50 file formats for some 25 processor architectures.
bfd  binary  file  descriptor  library  gdb  reverse  reverse-engineering  assembly  asm 
may 2012 by dza
Beej's Quick Guide to GDB
Compiling to use a debugger
More Information
Starting gdb and getting to main()
Stepping Around
Examining Variables
Misc Stuff
Stack Manipulation
Additional Stepping Methods
Jumping to an Arbitrary Section of Code
Changing Variables and Values at Runtime
Hardware Watchpoints
Attach to a Running Process
Using Coredumps for Postmortem Analysis
Window Functions
Display Registers and Assembly
Writing a Front-End
Quick Reference Cheat Sheet
gdb  break  breakpoint  breakpoints  step  stepping  debug  debugging  asm  assembly  reverse  reverse-engineering  coredump  coredumps  stack  stacks  variable  variables  values  watch  watchpoints  attach  window  function  functions  register  registers  cheatsheet  cheatsheets 
may 2012 by dza
From Shellcode to Assembly « xorl %eax, %eax
sh-3.2$ perl -e 'print "x31xc0x40x89xc3xcdx80"' > shellcode
sh-3.2$ ndisasm -b 32 shellcode
00000000 31C0 xor eax,eax
00000002 40 inc eax
00000003 89C3 mov ebx,eax
00000005 CD80 int 0x80
shellcode  asm  assembly  rootkit  virus  malware  analysis  security 
april 2012 by dza
Assembly - SkullSecurity
Fundamentals -- Information about C
Simple Instructions
Example 1 -- SC CDKey Initial Verification
Example 2 -- SC CDKey Shuffle
Example 2b -- SC CDKey Final Decode
The Stack
Stack Example
Example 3 -- Storm.dll SStrChr
Assembly Summary

Machine Code
Example 4 -- Smashing the Stack
Cracking a Game
Example 5 -- Cracking a game
Example 6 -- Writing a keygen
.dll Injection and Patching
Memory Searching
Example 7 -- Writing a cheat for Starcraft (1.05)
Example 7 Step 1 -- Displaying Messages
Example 7 Step 1b -- Above, w/ func ptrs
Example 7 Final
Example 8 -- Getting IX86.dll files
16-bit Assembly
Example 9 -- Keygen for a 16-bit game
Example 10 -- Writing a loader
skullsecurity  asm  assembly  assembler  starcraft  cdkey  cd-key  stack  crack  cracking  keygen  keygenning  reverse  reverse-engineering  cheat  16-bit  loader 
april 2012 by dza
Super NES Programming
Super Nintendo programming in assembly with the 65816 assembler.

SPC700 sound programming.

Graphics, tiles, sprites, animations.
wikipedia  spc  snes  super  asm  assembly  65816  emulator  emulators  nintendo  wikibooks  spc700 
april 2012 by dza
Academic Underground: The Examiner
Makes it easier to read OBJDUMP by adding comments.
objdump  examiner  debug  debugging  linux  asm  assembly  reverse  reverse-engineering 
april 2012 by dza
===== CHEATSHEET =====
execution: gdb --write --nx --quiet
--write (enable overwriting the current running executable with modifications)
--quiet (less verbose)

set write (from inside GDB, enable writing into executable and core files- CAUTION: watch out so you don't make segfaults in core libraries !!)

Execute one machine instruction, then stop and return to the debugger. It enters shared libraries functions also, so don't use it normally unless this is what you intend.

Execute one machine instruction, then stop and return to the debugger. It doesn't enter shared libraries functions.

Execute one machine instruction, then stop and return to the debugger. It doesn't enter shared libraries functions.

You can go forward as many instructions you want with "ni 2" (in this case 2)

layout asm (enable assembly line-by-line splitview, like ollydbg or other disassemblers)

break *0x00000000 (break at exact address)
break gtk_message_dialog_new (break at exact function)

x/x 0x00000000 (show value @ location)
set {int} 0x00000000 = 0x00000000 (set bytes @ location)
info registers

display/$pc - display current line ($pc == current line asm)
display/$eax - display register $eax
.. and so on !


register read # read registers
register r -f bin eflags # read eflags (along with ZF, in binary)
memory write 0x02ae4 74 # write opcodes to memory
di -f # disassemble --frame - disassemble current frame

# invert zeroflag from 0 to 1
expr -f bin -- $eflags|0x40
# invert zeroflag from 1 to 0
expr -f bin -- $eflags&~0x40
# ^ because 0x40 in hex (calculator) is equal to the 6th (64 in decimal) place.
# we could do
# invert zeroflag from 0 to 1
expr -f bin -- $eflags|64
# invert zeroflag from 1 to 0
expr -f bin -- $eflags&~64
# instead to signify that we invert the "64" bits (6th place).
gdb  reference  cheatsheet  debug  debugging  reverse  reverse-engineering  asm  assembly  debugger  !gdb  zf  zero  flag  zeroflag  from notes
april 2012 by dza
cr0 blog
Bypassing Linux ALSR (english) ..

It's a french blog.
howto  tutorial  guide  linux  security  hack  hacking  assembly  asm  aslr 
march 2012 by dza
falken's blog
Some linux, some french. Some exploitation.
howto  tutorial  guide  asm  assembly  exploit  exploits  kernel  linux  security  hack  hacking 
march 2012 by dza
Recurity Labs
Basic to advanced ASM (haven't read it)
howto  tutorial  guide  security  asm  assembly  reverse  reverse-engineering 
march 2012 by dza
ScrontSoft - Includes
DirectX 8 assembly tutorials / examples ..
win32  windows  directx  d3d  d3d8  dx8  directx8  asm  assembly  reverse-engineering  reverse 
march 2012 by dza
Assembly Language - ASM Community
( I think this one is good, but haven't read it all )
asm  assembly  howto  tutorial  guide  toread 
march 2012 by dza
In this example, I showed you three things:

Use DEBUG.EXE to retrieve the MBR of the first HDD. (YELLOW)
Use DEBUG.EXE to store information from the memory to a file. (RED)
Use DEBUG.EXE to load information from a file to the memory. (LIGHT BLUE)
debug.exe  debug  asm  assembly 
june 2011 by dza
Canterwood Ultimate Website
Personal cracking tutorial and links collection by some french dude.

CLOSED, but browseable with archive
cracking  assembly  hacking  archived  dead  reverse-engineering  reverse  asm  download.this 
march 2007 by dza

related tags

!gdb  16-bit  analysis  antivirus  archived  aslr  asm  asm.js  assemble  assembler  assembly  attach  basic  beginner  bfd  biew  binary  binær  book  books  bootloader  break  breakpoint  breakpoints  c  c++  call  calls  cd-key  cdkey  cheat  cheatsheet  cheatsheets  compare  comparing  compiler  compilers  compressor  compressors  coredump  coredumps  cpp  crack  cracking  crackme  crackmes  d3d  d3d8  dead  debian  debug  debug.exe  debugger  debuggers  debugging  decompiler  descriptor  dev  diff  difference  directx  directx8  disassemble  disassembler  disassemblers  disassembling  disassembly  download.this  dx8  ebook  editor  editors  education  elf  emulator  emulators  engineering  escalation  examiner  exploit  exploits  file  file-analyzer  file-analyzers  fishme  flag  foff  french  function  functions  gcc  gdb  gdbinit  gendump  guide  hack  hacking  header  headers  hex  howto  humor  ia-32  ia32  ida  ide  instruction  instructions  intel  javascript  js  kernel  keygen  keygenme  keygenning  krobar  ldasm  learn  learning  library  link  links  linux  loader  macosx  malware  mavericks  mbr  memory  mode  nasm_assemble  native  network  networking  nintendo  objdump  opcode  opcodes  operating  operating-system  os  osx  other  others  otx  patch  patcher  patchers  patching  pi  privilege  pro  programming  protected  protector  protectors  python  radare  raspberry  re  readelf  real  RED  reddit  reference  register  registers  reverse  reverse-engineering  rootkit  security  segment  segments  shellcode  skullsecurity  SnD  snes  snowman  software  spc  spc700  stack  stacks  starcraft  step  stepping  strace  sudo  super  syscall  syscalls  system  table  time  toread  tutorial  tutorials  unpacker  unpackers  unreal  user  valgrind  values  variable  variables  virus  w32dasm  watch  watchpoints  web  wikibooks  wikipedia  win32  window  windows  wishlist  x  x86  xbox  xcode  zero  zeroflag  zf 

Copy this bookmark: