Translated ['src/pentesting-web/account-takeover.md'] to el

This commit is contained in:
Translator 2025-04-20 14:57:46 +00:00
parent be06f4eeb4
commit 057d6e8b05
2 changed files with 69 additions and 19 deletions

View File

@ -4,7 +4,7 @@
## **Πρόβλημα Εξουσιοδότησης** ## **Πρόβλημα Εξουσιοδότησης**
Το email ενός λογαριασμού θα πρέπει να προσπαθήσει να αλλάξει, και η διαδικασία επιβεβαίωσης **πρέπει να εξεταστεί**. Εάν βρεθεί **ασθενής**, το email θα πρέπει να αλλάξει σε αυτό του προοριζόμενου θύματος και στη συνέχεια να επιβεβαιωθεί. Το email ενός λογαριασμού θα πρέπει να προσπαθήσει να αλλάξει, και η διαδικασία επιβεβαίωσης **πρέπει να εξεταστεί**. Αν βρεθεί **ασθενής**, το email θα πρέπει να αλλάξει σε αυτό του προοριζόμενου θύματος και στη συνέχεια να επιβεβαιωθεί.
## **Πρόβλημα Κανονικοποίησης Unicode** ## **Πρόβλημα Κανονικοποίησης Unicode**
@ -16,7 +16,7 @@
- Δημιουργήστε έναν λογαριασμό στον τρίτο πάροχο ταυτότητας με παρόμοιο email με το θύμα χρησιμοποιώντας κάποιο χαρακτήρα unicode (`vićtim@company.com`). - Δημιουργήστε έναν λογαριασμό στον τρίτο πάροχο ταυτότητας με παρόμοιο email με το θύμα χρησιμοποιώντας κάποιο χαρακτήρα unicode (`vićtim@company.com`).
- Ο τρίτος πάροχος δεν θα πρέπει να επαληθεύσει το email - Ο τρίτος πάροχος δεν θα πρέπει να επαληθεύσει το email
- Εάν ο πάροχος ταυτότητας επαληθεύσει το email, ίσως μπορείτε να επιτεθείτε στο μέρος του τομέα όπως: `victim@ćompany.com` και να καταχωρήσετε αυτόν τον τομέα και να ελπίζετε ότι ο πάροχος ταυτότητας θα δημιουργήσει την ascii έκδοση του τομέα ενώ η πλατφόρμα του θύματος κανονικοποιεί το όνομα τομέα. - Αν ο πάροχος ταυτότητας επαληθεύσει το email, ίσως μπορείτε να επιτεθείτε στο μέρος του τομέα όπως: `victim@ćompany.com` και να καταχωρήσετε αυτόν τον τομέα και να ελπίζετε ότι ο πάροχος ταυτότητας θα δημιουργήσει την ascii έκδοση του τομέα ενώ η πλατφόρμα του θύματος κανονικοποιεί το όνομα τομέα.
- Συνδεθείτε μέσω αυτού του παρόχου ταυτότητας στην πλατφόρμα του θύματος που θα πρέπει να κανονικοποιήσει τον χαρακτήρα unicode και να σας επιτρέψει να αποκτήσετε πρόσβαση στον λογαριασμό του θύματος. - Συνδεθείτε μέσω αυτού του παρόχου ταυτότητας στην πλατφόρμα του θύματος που θα πρέπει να κανονικοποιήσει τον χαρακτήρα unicode και να σας επιτρέψει να αποκτήσετε πρόσβαση στον λογαριασμό του θύματος.
Για περισσότερες λεπτομέρειες, ανατρέξτε στο έγγραφο σχετικά με την Κανονικοποίηση Unicode: Για περισσότερες λεπτομέρειες, ανατρέξτε στο έγγραφο σχετικά με την Κανονικοποίηση Unicode:
@ -27,7 +27,7 @@ unicode-injection/unicode-normalization.md
## **Επαναχρησιμοποίηση Συνδέσμου Επαναφοράς** ## **Επαναχρησιμοποίηση Συνδέσμου Επαναφοράς**
Εάν το σύστημα στόχος επιτρέπει τον **σύνδεσμο επαναφοράς να επαναχρησιμοποιηθεί**, θα πρέπει να καταβληθούν προσπάθειες για **να βρείτε περισσότερους συνδέσμους επαναφοράς** χρησιμοποιώντας εργαλεία όπως `gau`, `wayback`, ή `scan.io`. Αν το στοχοθετημένο σύστημα επιτρέπει τον **σύνδεσμο επαναφοράς να επαναχρησιμοποιηθεί**, θα πρέπει να καταβληθούν προσπάθειες για **να βρείτε περισσότερους συνδέσμους επαναφοράς** χρησιμοποιώντας εργαλεία όπως `gau`, `wayback`, ή `scan.io`.
## **Προ Ανάληψη Λογαριασμού** ## **Προ Ανάληψη Λογαριασμού**
@ -35,9 +35,9 @@ unicode-injection/unicode-normalization.md
2. Θα πρέπει να περιμένετε μέχρι το θύμα να εγγραφεί χρησιμοποιώντας OAuth και να επιβεβαιώσει τον λογαριασμό. 2. Θα πρέπει να περιμένετε μέχρι το θύμα να εγγραφεί χρησιμοποιώντας OAuth και να επιβεβαιώσει τον λογαριασμό.
3. Ελπίζεται ότι η κανονική εγγραφή θα επιβεβαιωθεί, επιτρέποντας την πρόσβαση στον λογαριασμό του θύματος. 3. Ελπίζεται ότι η κανονική εγγραφή θα επιβεβαιωθεί, επιτρέποντας την πρόσβαση στον λογαριασμό του θύματος.
## **Κακή Διαμόρφωση CORS για Ανάληψη Λογαριασμού** ## **Λάθος Ρύθμιση CORS για Ανάληψη Λογαριασμού**
Εάν η σελίδα περιέχει **κακές διαμορφώσεις CORS** μπορεί να είστε σε θέση να **κλέψετε ευαίσθητες πληροφορίες** από τον χρήστη για να **αναλάβετε τον λογαριασμό του** ή να τον κάνετε να αλλάξει τις πληροφορίες αυθεντικοποίησης για τον ίδιο σκοπό: Αν η σελίδα περιέχει **λάθη ρύθμισης CORS** μπορεί να είστε σε θέση να **κλέψετε ευαίσθητες πληροφορίες** από τον χρήστη για να **αναλάβετε τον λογαριασμό του** ή να τον κάνετε να αλλάξει τις πληροφορίες αυθεντικοποίησης για τον ίδιο σκοπό:
{{#ref}} {{#ref}}
cors-bypass.md cors-bypass.md
@ -45,7 +45,7 @@ cors-bypass.md
## **CSRF για Ανάληψη Λογαριασμού** ## **CSRF για Ανάληψη Λογαριασμού**
Εάν η σελίδα είναι ευάλωτη σε CSRF μπορεί να είστε σε θέση να κάνετε τον **χρήστη να τροποποιήσει τον κωδικό πρόσβασής του**, το email ή την αυθεντικοποίηση ώστε να μπορείτε στη συνέχεια να αποκτήσετε πρόσβαση σε αυτό: Αν η σελίδα είναι ευάλωτη σε CSRF μπορεί να είστε σε θέση να κάνετε τον **χρήστη να τροποποιήσει τον κωδικό πρόσβασής του**, το email ή την αυθεντικοποίηση ώστε να μπορείτε στη συνέχεια να αποκτήσετε πρόσβαση σε αυτό:
{{#ref}} {{#ref}}
csrf-cross-site-request-forgery.md csrf-cross-site-request-forgery.md
@ -53,7 +53,7 @@ csrf-cross-site-request-forgery.md
## **XSS για Ανάληψη Λογαριασμού** ## **XSS για Ανάληψη Λογαριασμού**
Εάν βρείτε ένα XSS στην εφαρμογή μπορεί να είστε σε θέση να κλέψετε cookies, τοπική αποθήκευση, ή πληροφορίες από τη σελίδα που θα μπορούσαν να σας επιτρέψουν να αναλάβετε τον λογαριασμό: Αν βρείτε ένα XSS στην εφαρμογή μπορεί να είστε σε θέση να κλέψετε cookies, τοπική αποθήκευση, ή πληροφορίες από τη σελίδα που θα μπορούσαν να σας επιτρέψουν να αναλάβετε τον λογαριασμό:
{{#ref}} {{#ref}}
xss-cross-site-scripting/ xss-cross-site-scripting/
@ -61,7 +61,7 @@ xss-cross-site-scripting/
## **Ίδια Προέλευση + Cookies** ## **Ίδια Προέλευση + Cookies**
Εάν βρείτε έναν περιορισμένο XSS ή μια ανάληψη υποτομέα, θα μπορούσατε να παίξετε με τα cookies (σταθεροποιώντας τα για παράδειγμα) για να προσπαθήσετε να συμβιβάσετε τον λογαριασμό του θύματος: Αν βρείτε ένα περιορισμένο XSS ή μια ανάληψη υποτομέα, θα μπορούσατε να παίξετε με τα cookies (σταθεροποιώντας τα για παράδειγμα) για να προσπαθήσετε να συμβιβάσετε τον λογαριασμό του θύματος:
{{#ref}} {{#ref}}
hacking-with-cookies/ hacking-with-cookies/
@ -75,7 +75,7 @@ reset-password.md
## **Μανιπουlation Απόκρισης** ## **Μανιπουlation Απόκρισης**
Εάν η απόκριση αυθεντικοποίησης μπορούσε να **μειωθεί σε μια απλή boolean απλά προσπαθήστε να αλλάξετε το false σε true** και δείτε αν αποκτάτε πρόσβαση. Αν η απόκριση αυθεντικοποίησης μπορούσε να **μειωθεί σε μια απλή boolean απλά προσπαθήστε να αλλάξετε το false σε true** και δείτε αν αποκτάτε πρόσβαση.
## OAuth για Ανάληψη Λογαριασμού ## OAuth για Ανάληψη Λογαριασμού

View File

@ -471,16 +471,66 @@ window.search = window.search || {};
showResults(true); showResults(true);
} }
var branch = lang === "en" ? "master" : lang (async function loadSearchIndex(lang = window.lang || 'en') {
fetch(`https://raw.githubusercontent.com/HackTricks-wiki/hacktricks/refs/heads/${branch}/searchindex.json`) /* ───────── paths ───────── */
.then(response => response.json()) const branch = lang === 'en' ? 'master' : lang;
.then(json => init(json)) const baseRemote = `https://raw.githubusercontent.com/HackTricks-wiki/hacktricks/${branch}`;
.catch(error => { // Try to load searchindex.js if fetch failed const remoteJson = `${baseRemote}/searchindex.json`;
var script = document.createElement('script'); const remoteJs = `${baseRemote}/searchindex.js`;
script.src = `https://raw.githubusercontent.com/HackTricks-wiki/hacktricks/refs/heads/${branch}/searchindex.js`; const localJson = './searchindex.json';
script.onload = () => init(window.search); const localJs = './searchindex.js';
document.head.appendChild(script); const TIMEOUT_MS = 5_000;
});
/* ───────── helpers ───────── */
const fetchWithTimeout = (url, opt = {}) =>
Promise.race([
fetch(url, opt),
new Promise((_, r) => setTimeout(() => r(new Error('timeout')), TIMEOUT_MS))
]);
const loadScript = src =>
new Promise((resolve, reject) => {
const s = document.createElement('script');
s.src = src;
s.onload = resolve;
s.onerror = reject;
document.head.appendChild(s);
});
/* ───────── 1. remote JSON ───────── */
try {
const r = await fetchWithTimeout(remoteJson);
if (!r.ok) throw new Error(r.status);
return init(await r.json());
} catch (e) {
console.warn('Remote JSON failed →', e);
}
/* ───────── 2. remote JS ───────── */
try {
await loadScript(remoteJs);
return init(window.search);
} catch (e) {
console.warn('Remote JS failed →', e);
}
/* ───────── 3. local JSON ───────── */
try {
const r = await fetch(localJson);
if (!r.ok) throw new Error(r.status);
return init(await r.json());
} catch (e) {
console.warn('Local JSON failed →', e);
}
/* ───────── 4. local JS ───────── */
try {
await loadScript(localJs);
return init(window.search);
} catch (e) {
console.error('Local JS failed →', e);
}
})();
// Exported functions // Exported functions
search.hasFocus = hasFocus; search.hasFocus = hasFocus;