mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 14 h 40 m 08 s |
|
|
Je voudrais coder un petit client ftp, pas d'interface graphique mais juste en ligne de commande, pour récuperer un fichier sur un serveur sans avoir à rentrer le mot de passe en mode interactif. le pb, c'est que j'ai trouvé un librairie qui va bien (jvftp) mais que lors de la compilation, je rerouve le mot de passe en clair dans le fichier .class qui, malheureusement, reste du pseudo-compilé et laisse donc apparaitre ce genre d'informations.
A part le C (ou la j'ai pas trouvé de petits bouts de code simple, mais systématiquement une interface graphique et tout le tin touin), vous connaissez pas un moyen de renforcer le mode de compilation, ou si vous avez un bout de C qui fait la meme chose ca me va aussi?
thx
mdk
|
|
| |
Message édité 1 fois, la dernière par mandrake74 le 11 mars 2005 - 17 h 19. |
| |
NOP NOP NOP LOOP CALL
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 14 h 42 m 05 s |
|
|
Avec un obfuscateur de code ?
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 14 h 44 m 26 s |
|
|
Mais je repense, y a un truc que je comprend pas...
Ton pass est "en dur" dans le code ?
Pourquoi ne pas le passer en ligne de commandes ?
Sinon, y a d'autres moyens : en le hashant par exemple...
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 14 h 53 m 19 s |
|
|
merci gege de venir à mon secours.
oui il est en dur, pour des raisons d'automatisation et oui je sais il faudra recompiler si le mdp change
peux tu etre plus bavard sur tes 2 solutions?
- obfuscateur: je sais pas ce que c'est
- le hashage, j'ai essayé mais il ya toujours le mdp qui te permet de retrouver le mdp final qui est en clair dans le fichier .class -> donc on peut toujours retrouver le mdp final avec un bout de code qui fait l'operation inverse
|
|
| |
NOP NOP NOP LOOP CALL
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 08 m 47 s |
|
|
Le 11 mars 2005 - 14 h 53, mandrake74 a écrit :
merci gege de venir à mon secours.
oui il est en dur, pour des raisons d'automatisation et oui je sais il faudra recompiler si le mdp change
peux tu etre plus bavard sur tes 2 solutions?
- obfuscateur: je sais pas ce que c'est
|
Comment rendre un code (et surtout ses class) illisibles : en rajoutant des branch de tous les cotés, des conditions vraies, en renommant les variables etc...
- le hashage, j'ai essayé mais il ya toujours le mdp qui te permet de retrouver le mdp final qui est en clair dans le fichier .class -> donc on peut toujours retrouver le mdp final avec un bout de code qui fait l'operation inverse
|
Mmm... L'opération de hashage est une fonction à sens unique (comme MD5) : il est impossible de retrouve le mot de départ à partir du mot hashé...
Sinon, tu dis vouloir automatiser ton soft, d'accord... Mais pourquoi ne pas crypter le mot de passe via un algo DES par exemple dans un fichier binaire ou texte (peu importe) et ensuite, appeler le contenu de ce fichier et décrypter à l'intérieur ?
Tu as surement des API de cryptage/décryptage toutes faites. Pas besoin d'un code asymétrique, un AES ou un DES suffirait non ?
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 26 m 33 s |
|
|
oui le MD5 est à sens unique mais tu doit quand meme indiquer quelle cahine tu souhaites hacher: donc tu la "vois" dans le fichier .class (puisque je code le pwd en dur)
la solution ce serait effectivement l'obfuscateur, si tu en connais un simple, fonctionnel et gratuit ca m'interesse (si tu connais une blonde à forte poitrine ca m'interesse aussi  )
enfin pour ta 3 eme solution, meme pb, a partir du moment ou la cahine clé pour décrypter ton pwd DES (ou autre) est visible puisque codée en dur et que java est pas capable de compiler suffisament, on peut donc choper cette clé et faire son decryptage soi meme avec un ti bout de code java
|
|
| |
NOP NOP NOP LOOP CALL
|
FiFouille
Messages : 259 Inscrit le 29/10/04
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 32 m 04 s |
|
|
désolé de m'incruster malgré mes connaissances limitées
mais si on met le mot de passe dans un fichier accessible que par les processus serveurs ça pourrait petre une partie de solution ?
c'est bien le serveur qui effectue le téléchargement et forwarde vers l'user ou alors j'ai encore rien compris ?
|
|
| |
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 36 m 05 s |
|
|
Le 11 mars 2005 - 15 h 26, mandrake74 a écrit :
oui le MD5 est à sens unique mais tu doit quand meme indiquer quelle cahine tu souhaites hacher: donc tu la "vois" dans le fichier .class (puisque je code le pwd en dur)
la solution ce serait effectivement l'obfuscateur, si tu en connais un simple, fonctionnel et gratuit ca m'interesse (si tu connais une blonde à forte poitrine ca m'interesse aussi )
|
RetroGuard ?
http://www.retrologic.com/retroguard-main.html
Je l'ai jamais utilisé mais j'en ai entendu parler (en bien)
enfin pour ta 3 eme solution, meme pb, a partir du moment ou la cahine clé pour décrypter ton pwd DES (ou autre) est visible puisque codée en dur et que java est pas capable de compiler suffisament, on peut donc choper cette clé et faire son decryptage soi meme avec un ti bout de code java
|
Erf... Mais j'ai toujours pas compris la killer app derriere...
Parce que si c'est pour browser en auto ses FTP, de toute facon, y aura toujours ton pass en plus ou moins clair...
Sinon, tu as essayé ant ? Il te permet d'automatiser tes taches avec des outils pratiques comme SCP (à condition d'avoir une passphrase ou une passphrase vide)
Moi, une fois j'avais concu un soft qui faisait des trucs et updatait les releases sur un acces distant type telnet. Mais bon, là j'avais mis un .ssl (si tu connais) avec une passphrase vide.
C'est pas du tout sécurisé mais c'était que pour moi... Alors bon...
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 39 m 15 s |
|
|
Le 11 mars 2005 - 15 h 32, FiFouille a écrit :
désolé de m'incruster malgré mes connaissances limitées
mais si on met le mot de passe dans un fichier accessible que par les processus serveurs ça pourrait petre une partie de solution ?
c'est bien le serveur qui effectue le téléchargement et forwarde vers l'user ou alors j'ai encore rien compris ?
|
Y a toujours moyen de raffiner (et même de produire des usines à gaz, je suis assez doué pour ça  ) mais là en l'occurrence, il veut stocker son pass pour son client FTP.
Alors bon, en mélangeant système et apps, on va y arriver, mais bon, c'est moche tout ça...
C'est sûr que tant qu'on y est, on peut aussi steganiser le mot de passe dans une image à la con, avec une API Java pour le recuperer...
Bref, t'as plein de soluces, mais aucune ne sera parfaite. Et pour cause : on ne doit jamais stocker le mdp !
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 15 h 50 m 16 s |
|
|
lol
bonne conclusion gege, mais meme si c'est stupide (entre autres effectivement parce que le mdp passe en clair sur le reseau), le client est roi..
je precise que si j'avais pu utiliser un layer ssl ou autre ssheries, je l'aurais fais
[ANNULE]je vous laisse méditer sur ceci, et je viens reposter quand j'aurais fini mon ti bout de code en c
gegenial, ton Retroquard c'est exactement ce su'il me fallait, sous licence GNU en plus, j'essaye et je vous fais un retex rapide
|
|
| |
Message édité 1 fois, la dernière par mandrake74 le 11 mars 2005 - 16 h 01. |
| |
NOP NOP NOP LOOP CALL
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 16 h 02 m 32 s |
|
|
clair, j'ai édité mon post
|
|
| |
NOP NOP NOP LOOP CALL
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 16 h 30 m 56 s |
|
|
bon ben ca change pas gd chos cet obscurfaiseur.. 
je repars sur le c, j'avais pratiquement fini (j'avoue en utilisant une librairie toute faite qui coute 100$)
|
|
| |
NOP NOP NOP LOOP CALL
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 11 mars 2005 - 17 h 18 m 43 s |
|
|
pour ceux que ca interesse et meme si c'est pas du java et qu'en plus c'est payant (100$):
http://www.marshallsoft.com/_fce4c.htm
et le code pour faire ce que je voulais:
1. #include <windows.h>
2. #include <stdio.h>
3. #include "fce.h"
4.
5. void main(int argc, char *argv)
6. {int Code;
7. /* attach FCE */
8. Code = fceAttach(1, 0); // KEY_CODE = 0
9. if(Code<0) ErrorExit(Code);
10. /* connect to server */
11. Code = fceConnect(0,(LPSTR)"ftp.marshallsoft.com",
12. (LPSTR)"anonymous", (LPSTR)"msc@traveller.com");
13. if(Code<0) ErrorExit(Code);
14. /* change to proper directory */
15. Code = fceSetServerDir(0, (LPSTR)"marshallsoft/other");
16. if(Code<0) ErrorExit(Code);
17. /* set to ASCII xfer mode */
18. fceSetMode(0,'A');
19. /* download the file */
20. Code = fceGetFile(0,(LPSTR)"products.txt");
21. if(Code<0) ErrorExit(Code);
22. /* QUIT */
23. fceClose(0);
24. fceRelease();
25. }
et oui, ca peut etre tout bete le c, pour peu qu'on aie les bonnes librairies
|
|
| |
NOP NOP NOP LOOP CALL
|
FiFouille
Messages : 259 Inscrit le 29/10/04
Non connecté
|
|
Posté le 11 mars 2005 - 17 h 43 m 59 s |
|
|
oué mais bon, un petit coup de libpcap et c'est fini
alors entre payer 100 dollars pour se faire avoir par 98% des bidouilleurs et rien payer et se faire avoir par 99% des bidouilleurs, mon choix serait vite fait
c'est clair qu'un client ftp que n'importe qui peut télécharger ne sera jamais secure
|
|
| |
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 11 mars 2005 - 21 h 24 m 48 s |
|
|
Mais j'ai toujours pas compris le but du client FTP
Concrétement, tu as fait une appli pour un unique client alors ?
Avec son mdp codé en dur ?
Pour être franc avec toi, c'est la premiere fois que je vois un codeur oser faire ça
Je sais pas qui est le commercial qui a vendu le projet, mais faudrait le remplacer vite fait chez vous, sinon attendez vous à des commandes de dingue
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|
mandrake74
Buffer overflow
Messages : 1 285 Inscrit le 09/12/02
Ville : Paname
Non connecté
|
|
Posté le 15 mars 2005 - 16 h 19 m 37 s |
|
|
lol, à ca si tu savais la dimension du projet en plus. mais je te rassure, d'une c'est une solution temporaire en attendant l'implémentationde ssh sous hpux, et de deux c'est au sein d'une DMZ donc pas de risque d'install de libpcap ou autre sniffing barbare sous peine d'etre detecté.
mais oui, je suis un codeur barbare et j'en suis fier (systeme powa) 
et puis 100$ c'est toujours 5 fois moins cher que de lfaire faire par un developpeur, et encore quand on en a un sous la main et qu'il parle avec un accent compréhensible =)
|
|
| |
NOP NOP NOP LOOP CALL
|
beavis
I hate the teletubbies...
Messages : 1 002 Inscrit le 18/09/03
Ville : Lyon 6e part-dieu
Non connecté
|
|
Posté le 16 mars 2005 - 13 h 53 m 10 s |
|
|
openssh peut se compiler sous hpux non ?
|
|
| |
www.bearstech.com
|
beavis
I hate the teletubbies...
Messages : 1 002 Inscrit le 18/09/03
Ville : Lyon 6e part-dieu
Non connecté
|
|
|
| |
Message édité 1 fois, la dernière par beavis le 16 mars 2005 - 17 h 56. |
| |
www.bearstech.com
|
gege38
Modérateur
Chief of the (¯`·.__[T3aM.BouL3T©]__.·´¯) Potatoe Reloaded
Messages : 14 097 Inscrit le 05/02/03
Ville : Domène
Non connecté
|
|
Posté le 16 mars 2005 - 19 h 11 m 43 s |
|
|
Y a meme des targets ANT qui font ça très bien
Mais je l'ai déjà proposé, il est contre les passphrases
|
|
| |
" Nous plaisons plus souvent dans le commerce de la vie par nos défauts que par nos qualités. "
--La Rochefoucauld
|