In che modo gli hacker trovano vulnerabilità nei sistemi operativi closed source?

3

Non ho intenzione di hackerare qualcosa, ma mi chiedo semplicemente come gli hacker trovano vulnerabilità nei sistemi operativi closed source come Windows, dal momento che non sanno esattamente cosa sta facendo il codice? Da alcune ricerche online so che alcuni hacker esperti scrivono e usano "strumenti di scansione", ma come faranno a sapere come scriverli in primo luogo? E come si troveranno le vulnerabilità senza un programma di scansione.

    
posta user180969 21.08.2018 - 04:35
fonte

2 risposte

4

Reverse engineering , è il processo mediante il quale un oggetto creato dall'uomo viene decostruito per rivelarne i disegni, l'architettura o estrarre conoscenza dall'oggetto; simile alla ricerca scientifica, l'unica differenza è che la ricerca scientifica riguarda un fenomeno naturale. Ecco come iniziamo.

Questo non è un exploit che ho codificato e distribuito, ma piuttosto notato sul ripristino all'avvio di Windows 7 a volte dopo aver completato i controlli aprire i risultati in notepad.exe. Ancora più importante, presumo che notepad.exe fosse in esecuzione come amministratore con privilegi elevati, anche notepad.exe ha la capacità di aprire Windows Explorer. Quindi, ora avevo privilegi di amministratore elevati su tutte le partizioni di unità elencate. Ora potrei garantire che cmd.exe possa essere eseguito dalla schermata di blocco, che funziona anche come amministratore con privilegi limitati. È così che sono diventato un admin locale su un computer che ero solo un utente e che la macchina aveva le password del bios, per proteggersi da questo tipo di attacco. Inoltre, questo attacco potrebbe bypassare BitLocker se fosse stato utilizzato.

Questo è un tipo di metodo, che ho dedotto che Windows 7 aveva un vettore di attacco, cosa di cui avevo ragione. Anche se, sospetto che la tua domanda riguardasse gli exploit zero-day. Pertanto, strumenti di reverse engineering sono spesso il modo. Questo diventa il test della scatola nera.

Conilcodicecompilato,presumocheilprogrammatoreabbiacodificatoilprogrammainunmodoparticolarementreosservacomel'inputinfluiscesull'output.

  • Input()=3
  • Code()=...(Nonsappiamo,ècompilato)
  • Output()=10

Possiamodedurreora,inbasealfattochel'inputè3el'outputè10.Unprobabilecalcolopotrebbeessere3*3+1=10.Anchesepotrebbeancheessere3*4-2=10...Chenedicisenefacciamounaltro:

  • Input()=5
  • Codice()=...
  • Output()=16

Quindi,ilpattern5*3+1=16potrebbeessereunoschemacomune,deduciamoaltririsultatietroviamolacorrispondenzatrainostriinputeoutputtestati.

Quindiunaformulaaritmeticacomune,perchéilcodicepotrebbeesseresum=$input*3+1.

OraabbiamoristrettoilconcettodiReverseengineering,concentriamocisullosfruttamentodiunserviziodirete,SafarisuiOS4.0.2checonsentiva '. pdf' Jailbreak di 'Privilege Escalation' locale . Un exploit come questo sarebbe probabilmente stato rilevato notando che il browser si arrestava in modo anomalo (spesso un buffer overflow) durante il caricamento di un PDF in determinate condizioni. Nello specifico CVE-2010-1797

Multiple stack-based buffer overflows in the cff_decoder_parse_charstrings function in the CFF Type2 CharStrings interpreter in cff/cffgload.c in FreeType before 2.4.2, as used in Apple iOS before 4.0.2 on the iPhone and iPod touch and before 3.2.2 on the iPad, allow remote attackers to execute arbitrary code or cause a denial of service (memory corruption) via crafted CFF opcodes in embedded fonts in a PDF document, as demonstrated by JailbreakMe. NOTE: some of these details are obtained from third party information.

Questo exploit permesso mostrato in JailbreakMe, consente di eseguire codice arbitrario all'interno del browser Web e di essere elevato ai privilegi di root senza la tua autorizzazione. Il browser andrebbe in crash, seguito dal riavvio di iOS, spesso su iOS 4.

OllyDbg is a 32-bit assembler level analysing debugger for Microsoft® Windows®. Emphasis on binary code analysis makes it particularly useful in cases where a source is unavailable.

Esercitazione pratica inversa di ingegneria 1 [HD] illustra come funziona OllyDbg e ti dovrebbe presentare l'utilizzo di questo particolare strumento per il reverse engineering.

Questo è lontano da una guida completa sul reverse engineering. Come punti relativi a Sqlmap, dex2jar, jd-gui, edb-debugger e Valgrind, solo per citarne alcuni, non sono stati inclusi. Per non parlare della retroingegnerizzazione di un web server di directory chiuso o di reverse engineering hardware.

    
risposta data 21.08.2018 - 06:15
fonte
2

Oltre a ciò che ha menzionato Safesploit, c'è anche il concetto di fuzzing. Ciò implica fornire dati non validi, imprevisti o casuali come input per un programma per computer. Il programma viene quindi monitorato per eccezioni quali arresti anomali o mancate asserzioni di codice incorporate o per individuare potenziali perdite di memoria.

    
risposta data 21.08.2018 - 07:47
fonte

Leggi altre domande sui tag