Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 34384|Atsakyti: 8

[įtrūkęs] Grafinė pamoka, kaip rankiniu būdu nulaužti svetainės fono slaptažodį

[Kopijuoti nuorodą]
Paskelbta 2015-06-04 18:47:12 | | |
Vakar gavau asp.net "WeChat" viešosios platformos šaltinio kodo versiją, kurią man atsiuntė draugas.

Šiandien noriu jį atidaryti ir pažvelgti, kas jame yra, pirmiausia pridėkite duomenų bazę prie SQL Server 2008,


Tada atidarykite projektą ir paleiskite crtl + F5, kad paleistumėte žiniatinklio projektą, kaip parodyta šiame paveikslėlyje:




Taigi, aš iš karto patikrinau administratoriaus lentelę duomenų bazės dt_manager ir radau, kad administratoriaus paskyra yra admin, bet nežinojau, koks slaptažodis yra užšifruotas, juk buvau pradedantysis


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 Nepasako jums NULL 0


Pirmiausia įmeskite jį į md5 svetainę, kad iššifruotumėte





Mu Jūs jį radote, išbandėte kelis dažniausiai naudojamus slaptažodžius, pvz., 123456, admin, 123, admin888 ir kt., bet vis tiek negalėjote prisijungti


Deja, patikrinsite asp.net šaltinio kodą ir nustatysite, kad jis užšifruotas taip:


  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.         }
Kopijuoti kodą


Paprastai tariant, pirmiausia sprendžiama, kad vartotojo lentelėje yra vartotojo druskos reikšmė, o jei yra, naudojamas vartotojo įvestas slaptažodis ir druskos vertė, gauta iš duomenų bazės


DESEncrypt užšifruotas, (aš irgi nežinau.)Kas yra DESEncrypt?Tada įmeskite užšifruotą slaptažodį ir vartotoją į dal. GetMode metodas,


Dar kartą sprendžiant galima spręsti, metode yra pasirinktas teiginys, o kodas yra toks:


  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.         }
Kopijuoti kodą


Nežinau, kaip iššifruoti šį dalyką, todėl pakeisiu užšifruotą slaptažodį iš duomenų bazės! Barškutis


C# slaptažodžio vietoje nustato lūžio tašką, kaip parodyta šiame paveikslėlyje:




Gack, šifruotas tekstas gavus 123456 šifravimą yra EB51565598856A17, ir ryžtingai eikite į duomenų bazę, kad pakeistumėte jį atnaujinimo teiginiu




Prisijungimas sėkmingas!




Ankstesnis:SQL Server 2008 5120 klaidos sprendimas priedų duomenų bazėje
Kitą:Nepavyko nukopijuoti "obj\x86\Debug\" į "bin\Debug\". Po 1000 milisekundžių prasideda 1-asis pakartotinis bandymas.
 Savininkas| Paskelbta 2015-06-04 18:55:35 |


Visa fono ekrano kopija
Paskelbta 2015-06-04 19:10:15 |
Šiek tiek sudėtinga, nesuprantama, mokytis ir mokytis
Paskelbta 2015-06-04 19:48:25 |
Jining Lao Dao Parašyta 2015-6-4 19:10
Šiek tiek sudėtinga, nesuprantama, mokytis ir mokytis

Broli Dao, tai yra "WeChat" viešosios rinkodaros platforma, kuri gali kurti "WeChat" stotis partijomis!!
Paskelbta 2015-06-05 00:14:39 |
Paskelbta 2018-07-29 16:42:44 |
Raginimas:Autoriai uždrausti arba pašalintas turinys automatiškai blokuojamas
Paskelbta 2018-09-16 12:05:10 |
Raginimas:Autoriai uždrausti arba pašalintas turinys automatiškai blokuojamas
Paskelbta 2019-07-27 15:22:15 |
Dabar nebežinau, viską pamiršau ir negaliu to suprasti
Paskelbta 2022-06-09 18:40:15 |
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com