Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 34384|Odpowiedź: 8

[trzask] Graficzny samouczek do ręcznego złamania hasła do tła strony internetowej

[Skopiuj link]
Opublikowano 04.06.2015 18:47:12 | | |
Wczoraj otrzymałem asp.net wersję kodu źródłowego platformy WeChat przesłaną mi przez przyjaciela.

Dziś chcę ją otworzyć i zobaczyć, co się w niej znajduje, najpierw dołączyć bazę danych do SQL Server 2008,


Następnie otwórz projekt i uruchom crtl+F5, aby uruchomić projekt webowy, jak pokazano na poniższym rysunku:




Od razu sprawdziłem tabelę administratorów dt_manager bazie danych i okazało się, że konto administratora jest administratorem, ale nie wiedziałem, jakie jest hasło zaszyfrowane, w końcu byłem początkujący


1 1 1 admin 77F992940A0EFD8025F5571B133BA6D5 28LH48 Super admin 13800138000       123@qq.com        0 2013-12-04 01:53:36.000 1000000 0 888 12 186 Nie mówi ci NULL 0


Najpierw wrzuć go na stronę md5, żeby go odszyfrować





Mu Znalazłeś go, próbowałeś kilku powszechnie używanych haseł, takich jak 123456, admin, 123, admin888 itd., ale nadal nie mogłeś się zalogować


Niestety, sprawdziłem kod źródłowy asp.net i okazało się, że jest zaszyfrowany w następujący sposób:


  1. public Model.manager GetModel(string user_name, string password, bool is_encrypt)
  2.         {
  3.             //检查一下是否需要加密
  4.             if (is_encrypt)
  5.             {
  6.                 //先取得该用户的随机密钥
  7.                 string salt = dal.GetSalt(user_name);
  8.                 if (string.IsNullOrEmpty(salt))
  9.                 {
  10.                     return null;
  11.                 }
  12.                 //把明文进行加密重新赋值
  13.                 password = DESEncrypt.Encrypt(password, salt);
  14.             }
  15.             return dal.GetModel(user_name, password);
  16.         }
Skopiuj kod


Ogólnie rzecz biorąc, najpierw ocenia się, że w tabeli użytkownika istnieje wartość soli użytkownika, a jeśli tak, używa się hasła wpisanego przez użytkownika oraz wartości soli uzyskanej z bazy danych


DESEncrypt zaszyfrowany (ja też nie wiem).Czym jest DESEncrypt?Następnie wrzuć zaszyfrowane hasło i użytkownika do dal. Metoda GetMode,


Aby ponownie ocenić, w metodzie znajduje się instrukcja select, a kod wygląda następująco:


  1. /// <summary>
  2.         /// 根据用户名密码返回一个实体
  3.         /// </summary>
  4.         public Model.manager GetModel(string user_name, string password)
  5.         {
  6.             StringBuilder strSql = new StringBuilder();

  7.             strSql.Append("select id from " + databaseprefix + "manager");
  8.             strSql.Append(" where user_name=@user_name and password=@password and is_lock=0");
  9.             SqlParameter[] parameters = {
  10.                     new SqlParameter("@user_name", SqlDbType.NVarChar,100),
  11.                     new SqlParameter("@password", SqlDbType.NVarChar,100)};
  12.             parameters[0].Value = user_name;
  13.             parameters[1].Value = password;

  14.             object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  15.             if (obj != null)
  16.             {
  17.                 return GetModel(Convert.ToInt32(obj));
  18.             }
  19.             return null;
  20.         }
Skopiuj kod


Nie wiem, jak to odszyfrować, więc zastąpię zaszyfrowane hasło z bazy danych! Grzechot


C# wyznacza punkt przerwy w miejscu hasła, jak pokazano na poniższym rysunku:




Ojej, po uzyskaniu szyfrowania 123456 szyfr jest EB51565598856A17 i zdecydowanie idź do bazy danych, by zastąpić go poleceniem aktualizacji




Logowanie zakończone!




Poprzedni:Rozwiązanie dla błędu SQL Server 2008 5120 w bazie danych załącznika
Następny:Nie udało się skopiować "obj\x86\Debug\" do "bin\Debug\". Po 1000 milisekundach rozpoczyna się pierwsza próba.
 Ziemianin| Opublikowano 04.06.2015 18:55:35 |


Pełny zrzut ekranu tła
Opublikowano 04.06.2015 19:10:15 |
Trochę trudne, niezrozumiałe, uczenie się i uczenie
Opublikowano 04.06.2015 19:48:25 |
Jining Lao Dao Opublikowano w 2015-6-4 19:10
Trochę trudne, niezrozumiałe, uczenie się i uczenie

Bracie Dao, to jest platforma marketingowa WeChat, która pozwala budować stacje WeChat w partiach!!
Opublikowano 05.06.2015 00:14:39 |
Opublikowano 29.07.2018 16:42:44 |
Monit:Autorzy są banowani lub usuwane treści są automatycznie blokowane
Opublikowano 16.09.2018 12:05:10 |
Monit:Autorzy są banowani lub usuwane treści są automatycznie blokowane
Opublikowano 27.07.2019 15:22:15 |
Teraz już nie wiem, zapomniałem o wszystkim i nie potrafię tego zrozumieć
Opublikowano 09.06.2022 18:40:15 |
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com