user@linuxtrack:~ $ python -c 'print("Soyez les bienvenus !")'

Vous n'êtes pas identifié(e).

#1 12-03-2013 11:01:50

itichy
#! The itichy and Scratachy Show

Tools for reversing on Linux

Je vais essaie déjà de vous annoncée les outils utilisé pour reverse sous Linux vous pouvait complété :

1-gdb ou edb
2- objdump
3- strings
4-hexdump
5-nm
6-strace, ltrace
7-ldd
8-ida (vs linux)
9-file
10-grep
11-lsof
12-cat /proc/
13-tcpdump,wireshark,tshark,netstat,nmap (réseaux)
14-Python (pdb)
15-readelf
16-elfsh


à compléter smile

Dernière modification par itichy (13-03-2013 14:06:00)


ядра паники

Hors ligne

#2 12-03-2013 19:45:19

IceF0x
#! Gourou Linux

Re : Tools for reversing on Linux


Utiliser des logiciels propriétaires, c'est comme les plats préparés, on est incapable de dire les conservateurs qu'ils contiennent, on dira toujours que c'est bon, mais ça ne remplacera jamais le repas fait maison par sa maman.
]:D #! Crunchbang & Archlinux GNU/Linux User ]:D

Hors ligne

#3 30-04-2013 11:27:39

Balam
Archey - KDEiste

Re : Tools for reversing on Linux


config 1: AMD FX 4100 Black Edition / 8 Go DDR3 / 2.5 To / Nvidia GeForce GT220 1Go
laptop : DELL Inspiron 15" serie 7000 / i7-4510U / 16Go DDR3 / 1To hybrid (8Go) / intel HD 4000 + NVidia GT 750M / dualboot : W8.1 + archlinux
config 2: AMD FX 8350 Black Edition / 32 Go DDR3 / 500 Go Velociraptor + 2 To / Nvidia GeForce GTX660 2Go
Distro: Arch Linux / Desktop: KDE

Hors ligne

#4 30-04-2013 12:35:24

mélodie
Villageoise

Re : Tools for reversing on Linux

itichy a écrit :

Je vais essaie déjà de vous annoncée les outils utilisé pour reverse sous Linux vous pouvait complété :

Je m'en viens pour reverser ton orthographe.

if="itichy_reverse" of="Je vais essayer déjà de vous annoncer les outils utilisés pour faire du reverse sous Linux. Vous pouvez compléter:"

angel

Hors ligne

#5 18-07-2013 15:52:07

itichy
#! The itichy and Scratachy Show

Re : Tools for reversing on Linux

Merci Mélodie  smile


ядра паники

Hors ligne

#6 16-03-2014 18:48:20

3ACK3OX
Membre

Re : Tools for reversing on Linux

big_smile merci itchy wink


Celui qui ne dispose pas des 2/3 de ca journée, est un ésclave  ]:D

OS: Crunchbang avec dépots Kali smile

Hors ligne

#7 16-03-2014 19:31:23

WarLocG
#! modo de compet

Re : Tools for reversing on Linux

Désassembler du bytecode java (un .class):

il existe un tool qui s'appelle jd-gui, téléchargeable sur http://jd.benow.ca/ qui fait cela très bien, testé sur quelques uns de mes projets et je retrouve effectivement mes sources.

1394991956.png

Je n'ai pas testé mais d'après la description sur le site, il supporte aussi les fichiers .jar

Désassembler un executable CIL dotnet:

grace a la commande monodis recupérable depuis le package mono-utils, plus d'info ici => http://mono-project.com/Dis/Assembling_CIL_Code

monodis FILE.exe

PS: Utilisez d'abord la commande file pour verifier que le fichier soit compilé sous dotnet, je n'ai pas de fichier compilé en dotnet sous la main actuellement donc j'editerai/adapterai éventuellement cette partie par la suite.

Edit: J'ai écrit rapidement un petit programme en C# sous monodevelop pour tester le programme dont voici le test.

Enter command here -> file TestCLIConsole.exe
PE32 executable (console) Intel 80386 Mono/.Net assembly, for MS Windows

Enter command here -> ./TestCLIConsole.exe
Commande lancée sans arguments.

Enter command here -> ./TestCLIConsole.exe 1 2 3
Arguments lancés: 1 2 3

Enter command here -> monodis TestCLIConsole.exe > test.txt

Contenu du fichier test.txt

.assembly extern mscorlib
{
  .ver 4:0:0:0
  .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
.assembly 'TestCLIConsole'
{
  .custom instance void class [mscorlib]System.Reflection.AssemblyTitleAttribute::'.ctor'(string) =  (
		01 00 0E 54 65 73 74 43 4C 49 43 6F 6E 73 6F 6C   // ...TestCLIConsol
		65 00 00                                        ) // e..

  .custom instance void class [mscorlib]System.Reflection.AssemblyDescriptionAttribute::'.ctor'(string) =  (01 00 00 00 00 ) // .....

  .custom instance void class [mscorlib]System.Reflection.AssemblyConfigurationAttribute::'.ctor'(string) =  (01 00 00 00 00 ) // .....

  .custom instance void class [mscorlib]System.Reflection.AssemblyCompanyAttribute::'.ctor'(string) =  (01 00 00 00 00 ) // .....

  .custom instance void class [mscorlib]System.Reflection.AssemblyProductAttribute::'.ctor'(string) =  (01 00 00 00 00 ) // .....

  .custom instance void class [mscorlib]System.Reflection.AssemblyCopyrightAttribute::'.ctor'(string) =  (01 00 07 77 61 72 6C 6F 63 67 00 00 ) // ...warlocg..

  .custom instance void class [mscorlib]System.Reflection.AssemblyTrademarkAttribute::'.ctor'(string) =  (01 00 00 00 00 ) // .....

  .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() =  (
		01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78   // ....T..WrapNonEx
		63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01       ) // ceptionThrows.

  .hash algorithm 0x00008004
  .ver  1:0:5188:40670
}
.module TestCLIConsole.exe // GUID = {8ABFEB04-ECE5-4FE2-8897-13420CFEBDD9}


.namespace TestCLIConsole
{
  .class private auto ansi beforefieldinit MainClass
  	extends [mscorlib]System.Object
  {

    // method line 1
    .method public hidebysig specialname rtspecialname 
           instance default void '.ctor' ()  cil managed 
    {
        // Method begins at RVA 0x20ec
	// Code size 7 (0x7)
	.maxstack 8
	IL_0000:  ldarg.0 
	IL_0001:  call instance void object::'.ctor'()
	IL_0006:  ret 
    } // end of method MainClass::.ctor

    // method line 2
    .method public static hidebysig 
           default void Main (string[] args)  cil managed 
    {
        // Method begins at RVA 0x20f4
	.entrypoint
	// Code size 80 (0x50)
	.maxstack 6
	.locals init (
		string	V_0,
		int32	V_1)
	IL_0000:  ldarg.0 
	IL_0001:  ldlen 
	IL_0002:  conv.i4 
	IL_0003:  ldc.i4.1 
	IL_0004:  bge IL_0018

	IL_0009:  ldstr bytearray (
	43 00 6f 00 6d 00 6d 00 61 00 6e 00 64 00 65 00  // C.o.m.m.a.n.d.e.
	20 00 6c 00 61 00 6e 00 63 00 e9 00 65 00 20 00  //  .l.a.n.c...e. .
	73 00 61 00 6e 00 73 00 20 00 61 00 72 00 67 00  // s.a.n.s. .a.r.g.
	75 00 6d 00 65 00 6e 00 74 00 73 00 2e 00 00 )   // u.m.e.n.t.s....
	
	IL_000e:  call void class [mscorlib]System.Console::WriteLine(string)
	IL_0013:  br IL_004f

	IL_0018:  ldarg.0 
	IL_0019:  ldc.i4.0 
	IL_001a:  ldelem.ref 
	IL_001b:  stloc.0 
	IL_001c:  ldc.i4.1 
	IL_001d:  stloc.1 
	IL_001e:  br IL_0036

	IL_0023:  ldloc.0 
	IL_0024:  ldstr " "
	IL_0029:  ldarg.0 
	IL_002a:  ldloc.1 
	IL_002b:  ldelem.ref 
	IL_002c:  call string string::Concat(string, string, string)
	IL_0031:  stloc.0 
	IL_0032:  ldloc.1 
	IL_0033:  ldc.i4.1 
	IL_0034:  add 
	IL_0035:  stloc.1 
	IL_0036:  ldloc.1 
	IL_0037:  ldarg.0 
	IL_0038:  ldlen 
	IL_0039:  conv.i4 
	IL_003a:  blt IL_0023

	IL_003f:  ldstr bytearray (
	41 00 72 00 67 00 75 00 6d 00 65 00 6e 00 74 00  // A.r.g.u.m.e.n.t.
	73 00 20 00 6c 00 61 00 6e 00 63 00 e9 00 73 00  // s. .l.a.n.c...s.
	3a 00 20 00 00 )                                 // :. ..
	
	IL_0044:  ldloc.0 
	IL_0045:  call string string::Concat(string, string)
	IL_004a:  call void class [mscorlib]System.Console::WriteLine(string)
	IL_004f:  ret 
    } // end of method MainClass::Main

  } // end of class TestCLIConsole.MainClass
}

Désassembler un fichier flash (.swf):
La commande flasm permet de le faire, et deja présente sous kali.

flasm --help

Flasm 1.62 build Feb 12 2011

(c) 2001 Opaque Industries, (c) 2002-2007 Igor Kogan, (c) 2005 Wang Zhen
All rights reserved. See LICENSE.TXT for terms of use.

Usage: flasm [command] filename

Commands:
   -d     Disassemble SWF file to the console
   -a     Assemble Flasm project (FLM)
   -u     Update SWF file, replace Flasm macros
   -b     Assemble actions to __bytecode__ instruction or byte sequence
   -z     Compress SWF with zLib
   -x     Decompress SWF

Backups with $wf extension are created for altered SWF files.

To save disassembly or __bytecode__ to file, redirect it:
flasm -d foo.swf > foo.flm
flasm -b foo.txt > foo.as

Read flasm.html for more information.

Utilisé sans options il désassemblera automatiquement vers un fichier flm du même nom.

Lien: http://www.nowrap.de/flasm.html

Divers:
Sinon boomerang fait aussi un assez bon boulot pour convertir un binaire en fichier .c, lien ici: http://boomerang.sourceforge.net/

Dernière modification par WarLocG (16-03-2014 22:53:51)


Avant de poser vos questions, jeter un oeil ici
Mon CodeVault et Wiki : ici
Les messages privés envers le staff sont uniquement pour les cas d'urgence ou affaires privées (personnelles). Les demandes se feront exclusivement sur le forum. Merci de respecter cette clause sous peine de sanctions.

Hors ligne

Pied de page des forums