Decryption des pwd aim

Soyez le premier à donner votre avis sur cette source.

Snippet vu 13 565 fois - Téléchargée 30 fois

Contenu du snippet

Un petit prog en C# pour aller chercher les pwd AIM et les decrypter. j'ai aussi traduit ce programme en C++ ( pour ceux que ça interesse ) http://www.cppfrance.com/article.aspx?Val=897

Source / Exemple :


using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using Microsoft.Win32;

namespace WindowsApplication15
{
	public class Form1 : System.Windows.Forms.Form
	{
		private System.Windows.Forms.Button button2;
		private System.Windows.Forms.GroupBox groupBox1;
		private System.Windows.Forms.TextBox textBox1;
		private System.Windows.Forms.TextBox textBox2;
		private System.Windows.Forms.Button button1;
		private System.Windows.Forms.Label label1;
		private System.Windows.Forms.ListBox listBox1;
	
		public Form1()
		{
			InitializeComponent();
		}

		private void InitializeComponent()
		{
			this.textBox2 = new System.Windows.Forms.TextBox();
			this.textBox1 = new System.Windows.Forms.TextBox();
			this.button1 = new System.Windows.Forms.Button();
			this.button2 = new System.Windows.Forms.Button();
			this.listBox1 = new System.Windows.Forms.ListBox();
			this.groupBox1 = new System.Windows.Forms.GroupBox();
			this.label1 = new System.Windows.Forms.Label();
			this.groupBox1.SuspendLayout();
			this.SuspendLayout();
			// 
			// textBox2
			// 
			this.textBox2.Location = new System.Drawing.Point(16, 96);
			this.textBox2.Name = "textBox2";
			this.textBox2.Size = new System.Drawing.Size(240, 20);
			this.textBox2.TabIndex = 2;
			this.textBox2.Text = "";
			// 
			// textBox1
			// 
			this.textBox1.Location = new System.Drawing.Point(16, 16);
			this.textBox1.Name = "textBox1";
			this.textBox1.Size = new System.Drawing.Size(240, 20);
			this.textBox1.TabIndex = 0;
			this.textBox1.Text = "";
			// 
			// button1
			// 
			this.button1.Location = new System.Drawing.Point(96, 48);
			this.button1.Name = "button1";
			this.button1.Size = new System.Drawing.Size(72, 40);
			this.button1.TabIndex = 1;
			this.button1.Text = "decrypter";
			// 
			// button2
			// 
			this.button2.Location = new System.Drawing.Point(16, 152);
			this.button2.Name = "button2";
			this.button2.Size = new System.Drawing.Size(272, 24);
			this.button2.TabIndex = 3;
			this.button2.Text = "Recuperer tous les login et pwd AIM du PC";
			this.button2.Click += new System.EventHandler(this.button2_Click);
			// 
			// listBox1
			// 
			this.listBox1.Location = new System.Drawing.Point(16, 176);
			this.listBox1.Name = "listBox1";
			this.listBox1.Size = new System.Drawing.Size(272, 95);
			this.listBox1.TabIndex = 4;
			// 
			// groupBox1
			// 
			this.groupBox1.Controls.AddRange(new System.Windows.Forms.Control[] {
																					this.textBox1,
																					this.textBox2,
																					this.button1});
			this.groupBox1.Location = new System.Drawing.Point(16, 16);
			this.groupBox1.Name = "groupBox1";
			this.groupBox1.Size = new System.Drawing.Size(272, 128);
			this.groupBox1.TabIndex = 5;
			this.groupBox1.TabStop = false;
			this.groupBox1.Text = "decrypter un pass";
			// 
			// label1
			// 
			this.label1.Location = new System.Drawing.Point(16, 280);
			this.label1.Name = "label1";
			this.label1.Size = new System.Drawing.Size(272, 32);
			this.label1.TabIndex = 6;
			this.label1.Text = "Si la mention \"Compte faux\" apparait c que le compte n\'est pas valide";
			// 
			// Form1
			// 
			this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
			this.ClientSize = new System.Drawing.Size(296, 308);
			this.Controls.AddRange(new System.Windows.Forms.Control[] {
																		  this.label1,
																		  this.groupBox1,
																		  this.listBox1,
																		  this.button2});
			this.Name = "Form1";
			this.Text = "AIM Pass Converter";
			this.groupBox1.ResumeLayout(false);
			this.ResumeLayout(false);

		}
	
		[STAThread]
		static void Main() 
		{
			Application.Run(new Form1());
		}

		public string Convertion(string PW)
		{
			int a; int b; int c; int d;
			string password = "";
			int decrypt = ( PW.Length / 2 );
			
			for( a = 1 ; PW.Length > a ; a = a + 2) 
			{
				c = ( a / 2) % ( 16 + 1) + 1;
				b = Convert.ToInt16( Convert.ToChar( PW.Substring( a - 1, 1) )  ) - 65  ;

				if ( (c==4) || (c==9) || (c==11) || (c==14) )
				{
					if ( (b % 2) < 1 )
					{
						b = b + 1;
					}
					else
					{
						b = b - 1;
					}
				}
				
				if ( (c==5) || (c==10) || (c==15) || (c==16) )
				{
					if ( (b % 4) < 2 )
					{
						b = b + 2;
					}
					else
					{
						b = b - 2;
					}
				}

				if ( (c==1) || (c==6) || (c==11) || (c==12) )
				{
					if ( (b % 8) < 4 )
					{
						b = b + 4;
					}
					else
					{
						b = b - 4;
					}
				}

				if ( (c==2) || (c==7) || (c==13) || (c==16) )
				{
					if ( b < 8 )
					{
						b = b + 8;
					}
					else
					{
						b = b - 8;
					}
				}

				if ( (c==12) || (c==13) || (c==14) || (c==15) )
				{
		
					b = 15 - b;
				}

				///////////////////////////////////
				d = b * 16;
				
				b = Convert.ToInt16( Convert.ToChar( PW.Substring( a, 1) )  ) - 65  ;
				
				if ( (c==5) || (c==7) || (c==9) || (c==10) || (c==16) )
				{
					if ( (b % 2) < 1 )
					{
						b = b + 1;
					}
					else
					{
						b = b - 1;
					}
				}

				if ( (c==1) || (c==6) || (c==9) || (c==11) || (c==12) )
				{
					if ( (b % 4) < 2 )
					{
						b = b + 2;
					}
					else
					{
						b = b - 2;
					}
				}

				if ( (c==2) || (c==7) || (c==8) || (c==9) || (c==13) )
				{
					if ( (b % 8) < 4 )
					{
						b = b + 4;
					}
					else
					{
						b = b - 4;
					}
				}
		 
				if ( (c==3) || (c==12) || (c==14) )
				{
					if ( b < 8 )
					{
						b = b + 8;
					}
					else
					{
						b = b - 8;
					}
				}

				if ( (c==8) || (c==10) || (c==11) )
				{
					b = 15 - b;
				}

				password = password + Convert.ToChar(d + b).ToString();

			}
			return password;
		}

		private void button1_Click(object sender, System.EventArgs e)
		{
			textBox2.Text = Convertion(textBox1.Text.Substring(2,textBox1.Text.Length - 2));
		}

		private void button2_Click(object sender, System.EventArgs e)
		{
			RegistryKey key = Registry.CurrentUser.CreateSubKey(@"Software\America Online\AOL Instant Messenger (TM)\CurrentVersion\Users");
			
			string[] compte = key.GetValueNames();
			
			for(int i = 0 ;i <  compte.Length ; i++)
			{
				RegistryKey key2 = Registry.CurrentUser.CreateSubKey(@"Software\America Online\AOL Instant Messenger (TM)\CurrentVersion\Users\" + compte[i] + "\\Login");
				string pass = (string)key2.GetValue("Password");

				if( pass != null )
				{
					pass = Convertion(pass.Substring(2,pass.Length - 2));
				}
				else  
				{
					pass = "Compte faux";
				}

					listBox1.Items.Add(" pseudo : " + compte[i] + " Pass : " + pass);
			
			}
			
		
		}

	}
}

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
Je vous informe avec grande peine les enfants que le mot de passe placé dans le registre n'est pas décryptable. Tout simplement car ce n'est pas un mot de passe.
C'est un hash. Le md5 je crois bien ;)
Donc chercher longtemp :)
Avec tout mon courage ;)
Messages postés
15
Date d'inscription
vendredi 23 mai 2003
Statut
Membre
Dernière intervention
13 décembre 2010

et apres on fait comment avec pour le compiler et le mettre en .exe?Ca va vous paraitre con mais j y connais rien et ca me parait etre un prog assez simple pour commencer...Merci et bravo a l équipe pour ce site
Messages postés
9
Date d'inscription
vendredi 28 février 2003
Statut
Membre
Dernière intervention
1 avril 2003

Hum... c'est quoi AIM ?

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.