Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 34384|Απάντηση: 8

[ραγισμένο] Οδηγός γραφικών για να σπάσετε με μη αυτόματο τρόπο τον κωδικό πρόσβασης φόντου του ιστότοπου

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 4/6/2015 6:47:12 μ.μ. | | |
Χθες, έλαβα την asp.net έκδοση του πηγαίου κώδικα της δημόσιας πλατφόρμας WeChat που μου έστειλε ένας φίλος.

Σήμερα θέλω να το ανοίξω και να ρίξω μια ματιά, τι περιέχει, πρώτα να επισυνάψω τη βάση δεδομένων στον SQL Server 2008,


Στη συνέχεια, ανοίξτε το έργο και εκτελέστε crtl+F5 για να εκτελέσετε το έργο web, όπως φαίνεται στην παρακάτω εικόνα:




Έτσι, έλεγξα αμέσως τον πίνακα διαχειριστή dt_manager της βάσης δεδομένων και διαπίστωσα ότι ο λογαριασμός διαχειριστή ήταν διαχειριστής, αλλά δεν ήξερα τι ήταν κρυπτογραφημένος ο κωδικός πρόσβασης, άλλωστε ήμουν αρχάριος


1 1 1 διαχειριστής 77F992940A0EFD8025F5571B133BA6D5 28LH48 Σούπερ διαχειριστής 13800138000       123@qq.com        0 2013-12-04 01:53:36.000 1000000 0 888 12 186 Δεν σας λέει NULL 0


Πρώτα ρίξτε το στον ιστότοπο md5 για να το αποκρυπτογραφήσετε





Mu Το βρήκατε, δοκιμάσατε μερικούς κωδικούς πρόσβασης που χρησιμοποιούνται συνήθως, όπως 123456, admin, 123, admin888 κ.λπ., αλλά και πάλι δεν μπορέσατε να συνδεθείτε


Δυστυχώς, πηγαίνοντας να ελέγξω τον πηγαίο κώδικα asp.net και να διαπιστώσω ότι είναι κρυπτογραφημένος ως εξής:


  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.         }
Αντιγραφή κώδικα


Σε γενικές γραμμές, κρίνεται πρώτα ότι υπάρχει τιμή αλατιού του χρήστη στον πίνακα χρήστη και εάν υπάρχει, χρησιμοποιείται ο κωδικός πρόσβασης που εισάγει ο χρήστης και η τιμή αλατιού που λαμβάνεται από τη βάση δεδομένων


DESEncrypt κρυπτογραφημένο, (ούτε εγώ ξέρω.)Τι είναι το DESEncrypt;Στη συνέχεια, ρίξτε τον κρυπτογραφημένο κωδικό πρόσβασης και τον χρήστη στο dal. Μέθοδος GetMode,


Για να κρίνουμε ξανά, υπάρχει μια δήλωση επιλογής στη μέθοδο και ο κωδικός έχει ως εξής:


  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.         }
Αντιγραφή κώδικα


Δεν ξέρω πώς να αποκρυπτογραφήσω αυτό το πράγμα, οπότε θα αντικαταστήσω τον κρυπτογραφημένο κωδικό πρόσβασης από τη βάση δεδομένων! Κουδουνίστρα


Η C# ορίζει ένα σημείο διακοπής στη θέση του κωδικού πρόσβασης, όπως φαίνεται στην παρακάτω εικόνα:




Gack, το κρυπτογραφημένο κείμενο αφού λάβετε 123456 κρυπτογράφηση είναι EB51565598856A17 και πηγαίνετε αποφασιστικά στη βάση δεδομένων για να το αντικαταστήσετε με τη δήλωση ενημέρωσης




Επιτυχής σύνδεση!




Προηγούμενος:Λύση για το σφάλμα SQL Server 2008 5120 στη βάση δεδομένων συνημμένων
Επόμενος:Απέτυχε η αντιγραφή του "obj\x86\Debug\" στο "bin\Debug\". Μετά από 1000 χιλιοστά του δευτερολέπτου ξεκινά η 1η επανάληψη.
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 4/6/2015 6:55:35 μ.μ. |


Πλήρες στιγμιότυπο οθόνης του φόντου
Δημοσιεύτηκε στις 4/6/2015 7:10:15 μ.μ. |
Ελαφρώς δύσκολο, ακατανόητο, μάθηση και μάθηση
Δημοσιεύτηκε στις 4/6/2015 7:48:25 μ.μ. |
Jining Lao Dao Δημοσιεύτηκε στις 2015-6-4 19:10
Ελαφρώς δύσκολο, ακατανόητο, μάθηση και μάθηση

Αδερφέ Ντάο, αυτή είναι η δημόσια πλατφόρμα μάρκετινγκ WeChat, η οποία μπορεί να δημιουργήσει σταθμούς WeChat σε παρτίδες!!
Δημοσιεύτηκε στις 5/6/2015 12:14:39 π.μ. |
Δημοσιεύτηκε στις 29/7/2018 4:42:44 μ.μ. |
Προτροπή:Οι συντάκτες αποκλείονται ή καταργούνται, το περιεχόμενο αποκλείεται αυτόματα
Δημοσιεύτηκε στις 16/9/2018 12:05:10 μ.μ. |
Προτροπή:Οι συντάκτες αποκλείονται ή καταργούνται, το περιεχόμενο αποκλείεται αυτόματα
Δημοσιεύτηκε στις 27/7/2019 3:22:15 μ.μ. |
Τώρα δεν ξέρω πια, τα έχω ξεχάσει όλα και δεν μπορώ να τα καταλάβω
Δημοσιεύτηκε στις 9/6/2022 6:40:15 μ.μ. |
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com