Debugging Client Side JS
Last updated
Last updated
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Η αποσφαλμάτωση του client side JS μπορεί να είναι δύσκολη, διότι κάθε φορά που αλλάζετε τη διεύθυνση URL (συμπεριλαμβανομένων των αλλαγών στις παραμέτρους ή τις τιμές παραμέτρων) πρέπει να επαναφέρετε το breakpoint και να ανανεώσετε τη σελίδα.
debugger;
Αν τοποθετήσετε τη γραμμή debugger;
μέσα σε ένα αρχείο JS, όταν ο περιηγητής εκτελεί το JS θα σταματήσει τον αποσφαλματωτή σε εκείνο το σημείο. Επομένως, ένας τρόπος για να ορίσετε σταθερά breakpoints θα ήταν να κατεβάσετε όλα τα αρχεία τοπικά και να αλλάξετε τα breakpoints στον κώδικα JS.
Οι παρακάμψεις του περιηγητή επιτρέπουν να έχετε μια τοπική αντίγραφο του κώδικα που πρόκειται να εκτελεστεί και να εκτελέσετε αυτό αντί για αυτό από τον απομακρυσμένο διακομιστή. Μπορείτε να πρόσβαση στις παρακάμψεις στο "Dev Tools" --> "Sources" --> "Overrides".
Πρέπει να δημιουργήσετε έναν τοπικό κενό φάκελο για να χρησιμοποιηθεί για την αποθήκευση των παρακάμψεων, οπότε απλά δημιουργήστε έναν νέο τοπικό φάκελο και ορίστε τον ως παράκαμψη σε αυτή τη σελίδα.
Στη συνέχεια, στο "Dev Tools" --> "Sources" επιλέξτε το αρχείο που θέλετε να παρακάμψετε και με δεξί κλικ επιλέξτε "Save for overrides".
Αυτό θα αντιγράψει το αρχείο JS τοπικά και θα μπορείτε να τροποποιήσετε αυτή την αντίγραφο στον περιηγητή. Έτσι, απλά προσθέστε την εντολή debugger;
όπου θέλετε, αποθηκεύστε την αλλαγή και ανανεώστε τη σελίδα, και κάθε φορά που αποκτάτε πρόσβαση σε αυτή τη διαδικτυακή σελίδα η τοπική σας αντίγραφο JS θα φορτωθεί και η εντολή αποσφαλμάτωσης θα διατηρηθεί στη θέση της:
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)