Encore moi pour plein de questions :(

Moderator: Mod

Encore moi pour plein de questions :(

Postby NEMROZ » Fri Nov 02, 2012 3:49 pm

Alors bonjour, en faisant des essais en binaire je me suis demandé quelque chose, la traduction du binaire à l'ascii ça marche comment ? Quelqu'un pourrait m'expliquer simplement, moi je pense que les 8 bits utilisés par caractère donne le nombre en code ascii, et ensuite on traduit ascii -> chaine de caracs, mais je suis pas sûr du tout, quelqu'un peut confirmer ? :(

Ensuite je me demandais si c'était possible et déjà fait les virus performants en Python, je sais qu'il faut installer l'interpréteur avec et ça devient lourd mais c'est possible d'inclure du C ou de l'ASM dans du python pour faire ça ? C'est avec des libs ? :shock:

Et si vous aviez des trucs pour augmenter la créativité, j'arrive jamais à trouver les algorithmes et tout pour faire ce que je veux :(

Pour finir, si quelqu'un a un cours bien expliqué des paquets en réseau assez détaillé je suis preneur aussi et un genre de regroupement de tous les outils utiles pour le réseau :roll:
NEMROZ
Projets
 
Posts: 8
Joined: Mon Oct 29, 2012 2:09 am

Postby Shiney » Fri Nov 02, 2012 5:15 pm

Bonjour NEMROZ,

Pour transformer du binaire en ascii, c'est très simple, tu fais des groupes de 8 bits puis pour chaque groupe tu le transformes par son code correspondant en ascii : hxxp://www.table-ascii.com/

exemple:
011100110110100001101001011011100110010101111001

tu fais des packets de 8 bits
01110011 01101000 01101001 01101110 01100101 01111001

tu transformes chaque packets par son code correspondant:
01110011 --> s
01101000 --> h
01101001 --> i
01101110 --> n
01100101 --> e
01111001 --> y


Concernant ton idée de virus en python, ce n'est pas une bonne idée. Comme tu l'as déjà dit, il faut l'interpréteur installé sur la machine cible. Au mieux tu peux faire le master en python mais en aucun cas les slaves même si ca se fait dans certaines situations.

Apres pour l'analyse de réseau, ya pas photo, installe wireshark. C'est très intuitif et tu trouveras une multitude de tuto sur le net.

Shiney
User avatar
Shiney
Projets
 
Posts: 39
Joined: Thu Sep 18, 2008 5:45 pm

Postby NEMROZ » Fri Nov 02, 2012 5:23 pm

Mais quand tu dis que l'on associe chaque groupe à une lettre, comme par exemple :
01010010 : R

On fait bien d'abord 01010010 -> 82 décimal -> R ascii ?

Et pour wireshark je l'ai sur ubuntu je vais le mettre sur windows, mais j'ai entendu parler de trucs comme aircrack et c'est les logiciels du genre que j'aimerais connaitre :?:

Je pense que c'est sur Backtrack mais je vais bientôt l'installer en VM :wink:

Sinon par master et slaves tu veux dire quoi ? Programme principal et parties serveurs des infectés ? :o :o

Et pour inclure du C / ASM etc dans les langages comme Delphi Java Python etc ça se passe comment ?
NEMROZ
Projets
 
Posts: 8
Joined: Mon Oct 29, 2012 2:09 am

Postby TorTukiTu » Fri Nov 02, 2012 7:30 pm

Oulalala, bon, mon cher ami NEMROZ, reprennons tout depuis le début.



[u:d51269c70a]Petit rapel de mathématiques:[/u:d51269c70a]

binaire, héxadécimal et décimal ne sont que des notations.

Autrement dit, un 10 héxa (notation en base 16) représente la même valeur qu'un 16 décimal (notation en base 10) ou qu'un 10000 en binaire (notation en base 2).

Donc, tu comprendras que, techniquement, on s'en fous de la base utilisée, c'est juste parfois plus pratique:

Un ordinateur moderne manipule des [b:d51269c70a]bits[/b:d51269c70a]. Autrement dit, des espaces physiques qui valent soit 1 ou 0.

Il s'avère que compter en base 2 apporte un certains nombres de facilités par rapport à la base 10. Par exmeple : 11 devient 10001, tu voit donc rapidement que tu as deux espaces qui valent 1, et le reste 0.

Dans la vraie vie de développeur, tu rencontres le plus souvent une notation héxadécimale. Un ordinateur [b:d51269c70a]range ses bits par séries de 8 (= 1 octet)[/b:d51269c70a]. La notation hexadécimale permet de représenter intuitivement plus facilement la valeur d'un octet.

Bien, à présent, tu sais que l'ordinateur ne manipule QUE des nombres.



Mais je vois d'ici tes petits yeux suppliants... Mais qu'est-ce que l'ASCII alors ?

Mais des nombres très cher. L'ascii est une convention, une norme, qui dit par exemple que la valeur du nombre 65 (en décimal) correspond à la lettre A.

Du coup, on peut écrire un texte avec une série de nombres en suivant cette convention.
(cf. table ASCII).



[quote:d51269c70a]demandais si c'était possible et déjà fait les virus performants en Python[/quote:d51269c70a]

Arrgghhh...

En plus, tu donnes toi même la réponse :

[quote:d51269c70a]je sais qu'il faut installer l'interpréteur avec et ça devient lourd[/quote:d51269c70a]

Je dirais même tellement lourd que c'est insoutenable. Qui plus est:
- tu vas embarquer toutes les fonctionnalitées de l'interpréteur, dont tu n'as absolument pas besoin.
- Tu es grillé par n'importe quel crétin avec ton interpréteur embarqué
- Python ne convient pas pour le bas niveau, et pour la plupart des fonctionnalitées de ton malware, il y a de bonnes chances que tu doives t'y mettre, au bas niveau.

Donc, non, python est un choix bien calamiteux...

[quote:d51269c70a]mais c'est possible d'inclure du C ou de l'ASM dans du python pour faire ça ? C'est avec des libs ?[/quote:d51269c70a]

Mais dans ce cas, pourquoi t'embéter avec Python si tu es partit pour tout faire en C et en ASM ? C'est un non sens.

[quote:d51269c70a]Et si vous aviez des trucs pour augmenter la créativité [/quote:d51269c70a]

Tu as les champignons halucinogènes et autres psychotropes si tu veux. Sinon, la cocaine marche bien aussi.

[quote:d51269c70a] j'arrive jamais à trouver les algorithmes et tout pour faire ce que je veux [/quote:d51269c70a]

L'algorithmique, c'est la base de la programmation. Pourquoi n'inventes tu pas ce qui te manque ?

[quote:d51269c70a]Pour finir, si quelqu'un a un cours bien expliqué des paquets en réseau assez détaillé je suis preneur aussi et un genre de regroupement de tous les outils utiles pour le réseau[/quote:d51269c70a]

J'ai moi même un tout petit peu d'expérience en réseau. Et crois moi, c'est une discipline difficile. Je te conseille d'abord de bien approfondir tes conaissances sur le fonctionnement d'un ordinateur avant de t'amuser à faire du réseau.

Pour terminer avec ce que t'as dit Shiney.

En gros, généralement, un virus t'envoie des informations (au moins d'une manière unidirectionelle). Sinon, ça n'a pas grande utilité.
Le programme qui reçoit les informations (le serveur) peut tout à fait être écris en python. Par contre, c'est un mauvais choix pour le programme client (qui tournera sur les machines infectées).

Pense au C et à l'ASM pour ton client. Ensuite, le choix exacte du langage doit être dicté par les fonctionnalitées que tu voudras y implémenter.

A bientôt//

Tortue 974.
User avatar
TorTukiTu
Site Admin
 
Posts: 1960
Joined: Thu Feb 07, 2008 10:24 pm
Location: Devant son pc durant la redaction de ce message

Postby NEMROZ » Fri Nov 02, 2012 11:53 pm

Merci pour cette magnifique réponse, pour le petit cours de maths improvisé j'entends bien, sans vouloir me vanter je savais déjà ça, mais c'est ce que j'ai dit non ?

Du coup si on préfère passer par le décimal pour convertir en ascii ça ferait (exemple, la flemme de chercher les valeurs) :

01010101 = 99 = M

C'est bien ça ? :?:

Donc par réduction : 01010101 = M

Et d'accord pour le réseau, mais j'aimerais coder quelques outils en python pour le réseau justement c'est pour ça, j'aurais bien aimé avoir des cours comme ça au cas où j'aurais eu à les utiliser en python :P

Sinon pour le C / ASM dans le python c'était une hypothèse, ça m'intéressait c'est tout :oops:

Tu penses que je devrais continuer dans le Java ou le C après ? D'un côté je veux savoir coder des beaux trucs en Java mais de l'autre des fucking malwares en C + ASM, triste dilemme :(

EDIT : Et les virus purement destructeurs ça peut être sympa même si ça fait lamerz :D

EDIT 2 : " L'algorithmique, c'est la base de la programmation. Pourquoi n'inventes tu pas ce qui te manque ? "

Non mais les idées, la créativité je veux dire, même quand on me donne pas mal les consignes pour faire un programme j'ai l'impression que je manque d'idées, je trouve pas ou difficilement l'algorithme qui mène à la solution.
NEMROZ
Projets
 
Posts: 8
Joined: Mon Oct 29, 2012 2:09 am


Return to Divers

Who is online

Users browsing this forum: No registered users and 2 guests

cron