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

Άποψη: 10849|Απάντηση: 0

[Πηγή] 2011 MSSQL System Security SA Οδηγός κινδύνου ασφάλειας ασθενούς κωδικού πρόσβασης

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 26/11/2014 3:48:23 μ.μ. | | |
Οι αποθηκευμένες διαδικασίες είναι μια συλλογή από προ-γραμμένες δηλώσεις SQL που είναι αποθηκευμένες στον SQLServer, μεταξύ των οποίων είναι οι πιο επικίνδυνες εκτεταμένες αποθηκευμένες διαδικασίες xp_cmdshell, οι οποίες μπορούν να εκτελέσουν οποιεσδήποτε οδηγίες του λειτουργικού συστήματος και η SA είναι ο λογαριασμός διαχειριστή του Microsoft SQLServer, με τα υψηλότερα προνόμια, μπορεί να εκτελέσει εκτεταμένες αποθηκευμένες διαδικασίες και να λάβει τιμές επιστροφής, όπως εκτέλεση:
εκτελεστικός πλοίαρχος.. xp_cmdshell «Δοκιμή καθαρού χρήστη 1234 /add» και Exec Master: xp_cmdshell 'net localgroup administrators test /add'
Με αυτόν τον τρόπο, ένας χρήστης με το όνομα test, ο κωδικός πρόσβασης 1234 και τα δικαιώματα διαχειριστή προστίθενται στο σύστημα του άλλου μέρους, όπως φαίνεται στο Σχήμα 1.

Τώρα θα πρέπει να καταλάβετε γιατί λαμβάνετε τον κωδικό πρόσβασης SA και λαμβάνετε τα υψηλότερα προνόμια του συστήματος. Συχνά πολλοί διαχειριστές δικτύων δεν γνωρίζουν αυτή την κατάσταση, και έχουν κάποιους απλούς κωδικούς πρόσβασης όπως το 1234 και το 4321 για τους χρήστες SA τους, ή ακόμα και δεν ορίζουν καθόλου κωδικούς πρόσβασης, έτσι ώστε οι εισβολείς του δικτύου να μπορούν εύκολα να σαρώσουν τον κωδικό πρόσβασης SA με κάποια εργαλεία hacking και στη συνέχεια να ελέγξουν τον υπολογιστή.
Εκτός από xp_cmdshell, υπάρχουν και αποθηκευμένες διαδικασίες που μπορούν να εκμεταλλευτούν οι εισβολείς:
1. xp_regread (αυτή η εκτεταμένη αποθηκευμένη διαδικασία μπορεί να διαβάσει την τιμή που καθορίζεται στο κλειδί που καθορίζεται στο μητρώο), πώς να τη χρησιμοποιήσετε (λάβετε το όνομα του μηχανήματος):
ΔΗΛΩΝΩ@testvarchar(50) EXEC master.. xp_regread @rootkey='HKEY_LOCAL_MACHINE', @key='system\controlset001\control\computername\όνομα_υπολογιστή', @value_name='όνομα_υπολογιστή', @value=@test ΈΞΟΔΟΣ ΕΠΙΛΈΞΤΕ @test
2. xp_regwrite (αυτή η εκτεταμένη αποθηκευμένη διαδικασία μπορεί να γράψει την τιμή που καθορίζεται στο κλειδί που καθορίζεται στο μητρώο) και πώς να τη χρησιμοποιήσετε (γράψτε bbb στο κλειδί HKEY_LOCAL_MACHINE\SOFTWARE\aaa\aaaValue):
EXEC master.. xp_regwrite @rootkey='HKEY_LOCAL_MACHINE', @key='ΛΟΓΙΣΜΙΚΌ\aaa', @value_name='aaaValue', @type='REG_SZ', @value='bbb'
Εάν ο χρήστης διαχειριστής του υπολογιστή που έχει παραβιαστεί μπορεί να περιηγηθεί στις πληροφορίες HKEY_LOCAL_MACHINE\SAM\SAM\ στο μητρώο, τότε οι δύο αποθηκευμένες διαδικασίες xp_regread και xp_regwrite μπορούν να χρησιμοποιηθούν για την κλωνοποίηση του χρήστη διαχειριστή και την απόκτηση δικαιωμάτων διαχειριστή. xp_regdeletekey. xp_regdeletevalue θα φέρει επίσης κινδύνους για την ασφάλεια του συστήματος.   3. Μια σειρά διαδικασιών αποθήκευσης που σχετίζονται με την OLE, αυτή η σειρά διαδικασιών αποθήκευσης έχει sp_OACreate, sp_OADestroy, sp_OAGetErrorInfo, sp_OAGetProperty, sp_OAMethod, sp_OASetProperty, sp_OAStop, χρήση:
ΔΗΛΏΣΤΕ @shell INT EXEC SP_OACREATE 'wscript.shell',@shell ΈΞΟΔΟΣ EXEC SP_OAMETHOD @shell,'run',null, 'c:\WINNT\system32\cmd.exe /c δοκιμή καθαρού χρήστη 1234 /add'--
Με αυτόν τον τρόπο, το άλλο σύστημα προσθέτει έναν χρήστη με το όνομα test και έναν χρήστη με κωδικό πρόσβασης 1234 και στη συνέχεια εκτελεί:
ΔΗΛΏΣΤΕ @shell INT EXEC SP_OACREATE 'wscript.shell',@shell ΈΞΟΔΟΣ EXEC SP_OAMETHOD @shell,'run',null, 'c:\WINNT\system32\cmd.exe /c net localgroup administrators test /add '--
Δοκιμή χρήστη, προστέθηκε στην ομάδα Administrators.   Λύση: Δώστε στην SA έναν κωδικό πρόσβασης που είναι αρκετά περίπλοκος ώστε να δυσκολεύει τους εισβολείς στον κυβερνοχώρο να σπάσουν. Για ασφάλεια, πρέπει επίσης να χρησιμοποιήσουμε αποθηκευμένες διαδικασίες στο SQLS sp_addextendedproc sp_dropextendedproc erver's query analyzer sp_dropextendedproc διαγράψουμε αποθηκευμένες διαδικασίες όπως το xp_cmdshell και, στη συνέχεια, να χρησιμοποιήσουμε sp_addextendedproc ανάκτηση όταν χρειάζεται. Θα πρέπει να σημειωθεί ότι η διαγραφή αποθηκευμένων διαδικασιών που σχετίζονται με το OLE μπορεί να προκαλέσει την αδυναμία χρήσης ορισμένων λειτουργιών στο Enterprise Manager και ο συντάκτης δεν συνιστά τη διαγραφή τους εδώ.
Τώρα που ξέρουμε πώς να χρησιμοποιούμε SP_OACREATE, μπορούμε να μεταβούμε στο \WINNT \system32 για να βρούμε τα cmd.exe, net.exe και net1.exe τρία αρχεία και να διαγράψουμε όλους τους χρήστες που μπορούν να έχουν πρόσβαση σε αυτά στις "Ιδιότητες" - "Ασφάλεια", έτσι ώστε να μην μπορούμε να χρησιμοποιήσουμε SP_OACREATE για να αυξήσουμε τον αριθμό των χρηστών του συστήματος και μπορούμε να προσθέσουμε χρήστες πρόσβασης όταν πρέπει να έχουμε πρόσβαση σε αυτά τα αρχεία.




Προηγούμενος:Οδηγός ευπάθειας ασφαλείας επικύρωσης κωδικού πρόσβασης δήλωσης MSSQL 2011
Επόμενος:Ο ασφαλέστερος τρόπος για να αλλάξετε και να διαγράψετε λογαριασμούς SA από προεπιλογή στο 2011 MSSQL2000
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com