Domanda:
È normale che gli auditor richiedano tutte le password aziendali?
Zachary Iles
2017-10-25 22:20:55 UTC
view on stackexchange narkive permalink

La mia azienda è attualmente impegnata in un audit di sicurezza inquadrato come un pentest. Hanno richiesto tutte le password di amministratore per ciascuno dei nostri servizi e tutto il codice sorgente del nostro software. Vogliono accessi per Google Apps, processori di carte di credito, GitHub, DigitalOcean, credenziali SSH, accesso al database e molto altro. Nota, non abbiamo mai firmato un singolo accordo di non divulgazione (ma è stata fornita una dichiarazione di lavoro) e sono molto riluttante a fornire loro queste informazioni per questo motivo.

È normale per un pentest? Ho pensato che fosse per lo più scatola nera. Come devo procedere?

"AGGIORNAMENTO * Ora abbiamo un accordo di non divulgazione. Il contratto, tuttavia, dice che non possiamo ritenerli responsabili per nulla. Non sono ancora sicuro che questa sia la mossa giusta per continuare Con loro. Nella mia esperienza, le loro richieste non sono normali nemmeno negli audit white box e la loro dichiarazione di lavoro si legge in un modo che non chiarisce se si tratta di un audit white box o black box.

Strettamente correlato: [Il nostro revisore della sicurezza è un idiota.Come gli do le informazioni che desidera?] (Https://serverfault.com/questions/293217/our-security-auditor-is-an-idiot-how-do-i-give-him-the-information-lui vuole)
Correlati: https://security.stackexchange.com/questions/147125/network-administrator-knowing-all-user-passwords
Ehi, voglio controllare la tua azienda: per favore inviami tutte le tue password di amministratore.Modifica la tua domanda per elencarli tutti ...
Aspetta cosa?Non hai mai firmato un accordo di non divulgazione con quella società di sicurezza?Torna subito indietro e fai firmare quell'accordo di non divulgazione prima di andare avanti.Mi sembra che sia una società falsa che si maschera da vera, per vedere se possono ottenere informazioni da te.Se si tratta di una vera azienda legittima, il revisore sta cercando di vedere se sei abbastanza stupido da fornire tali informazioni.Se ne fornisci anche solo una piccola parte, hai fallito l'audit.Tuttavia, questo è incredibilmente poco professionale e non dovrebbe mai accadere.
Questa è la prima prova.
Avvisa il tuo team di gestione e sicurezza.
Sono un pentester da cinque anni.Non tocchiamo nulla fino a quando non abbiamo un ambito concordato, un periodo di tempo, un contratto firmato e un accordo di non divulgazione.Queste formalità proteggono ** entrambe le parti ** e nessuno dovrebbe consegnare alcun dato o toccare alcun sistema fino a quando non vengono completati correttamente.Chiunque richieda questo tipo di informazioni senza accordi legali in essere e assoluta necessità di accesso è (nella migliore delle ipotesi) un'enorme responsabilità tecnica e legale nei confronti di se stesso, della propria organizzazione e della propria.Stai alla larga da questi cowboy.
Il nostro prodotto veniva regolarmente represso (ogni semestre) da un'azienda rispettabile e ogni semestre chiedevano le credenziali per qualcosa o per l'altro.Quindi ogni sei mesi inviamo loro una faccina, un collegamento alla fine di Internet o qualcosa di simile.Abbiamo sempre superato :) Per noi almeno questa era una parte normale del test, l'obiettivo era vedere se il nostro team era in grado di riconoscere l'ingegneria sociale.Il tuo manager potrebbe essere a conoscenza di questo ma non te lo dice per ovvi motivi, come nel caso di noi.
** Nel caso in cui tu abbia già fornito loro le credenziali, trattalo come se fosse una vera violazione della sicurezza **.Se non sono una vera azienda, questo è quello che dovresti fare;se lo sono, questo è quello che sperano tu faccia.
Se dai loro le password, non stanno più testando la penetrazione ... stanno solo usando le password che hai fornito loro.
Abbiamo avuto pentesteri dalla visita della nostra società madre.Ci è stato detto di collaborare pienamente.Volevano l'accesso ai sistemi e l'accesso amministrativo.Bene.Poi hanno preso i file delle password e li hanno ostentati come "trofei".La loro parola, non la nostra.Abbiamo fallito perché non dovevamo dare loro il sostegno che ci era stato detto di dare loro.
No, ma per me va bene fare un crack del dizionario sulle password crittografate.
* Ora abbiamo un NDA.Il contratto, tuttavia, afferma che non possiamo ritenerli responsabili per nulla * Come potrebbe un NDA essere un vero NDA se non può essere ritenuto responsabile per nulla?
@Walfrat sì, è molto preoccupante.OP, questo significa che voi ragazzi state andando avanti con questa azienda?
@Zachary Iles: qual è l'aggiornamento del tuo caso?
Sette risposte:
#1
+432
Conor Mancone
2017-10-25 22:41:51 UTC
view on stackexchange narkive permalink

È normale per un pentest?

Assolutamente no . Scenario migliore: stanno eseguendo test di penetrazione di "ingegneria sociale" e vogliono vedere se puoi essere spinto a compiere un'azione molto pericolosa. Scenario intermedio, non sanno come fare il loro lavoro. Nel peggiore dei casi, stanno solo fingendo di essere una società di revisione e soddisfare la loro richiesta si tradurrà in una costosa violazione.

Nel caso di un controllo del codice, la società avrà ovviamente bisogno di accedere al codice sorgente. Tuttavia, mi aspetto che un'azienda che fornisce tali servizi comprenda già la sensibilità di tale esigenza e abbia molti moduli da firmare e si offra di lavorare in un ambiente strettamente controllato. Una società di sicurezza rispettabile si preoccuperà non solo di proteggerti (perché è il loro lavoro) ma anche di proteggersi da clienti inaffidabili (il nostro codice sorgente è trapelato subito dopo che ti abbiamo assunto: stiamo facendo causa !!!!) . Tutto questo per dire: qualsiasi società di sicurezza rispettabile che non ti fa firmare molti contratti prima di andare a lavorare non è una società di sicurezza rispettabile.

Non riesco a immaginare nessuna circostanza in cui cedere l'accesso a una qualsiasi di queste cose sarebbe una buona idea.

Modifica RE: contratti nascosti

Alcuni hanno suggerito che l'azienda potrebbe semplicemente non averlo detto all'OP su eventuali contratti / accordi / NDA pertinenti. Suppongo sia possibile, ma ci tengo a precisare che la mancanza di un contratto non è l'unica bandiera rossa che vedo.

In qualità di persona che ha creato siti di e-commerce e software aziendale che ha richiesto l'integrazione con molti processori CC, non vedo assolutamente alcun vantaggio nel dare a qualcun altro l'accesso al tuo processore CC. A quel punto non stanno più testando la penetrazione dei tuoi sistemi: stanno testando la penetrazione dei sistemi di qualcun altro che ti capita di usare. In effetti, fornire le credenziali di accesso in questo modo probabilmente viola i termini di servizio che hai firmato quando hai iniziato a utilizzare il tuo Processore CC (per non parlare degli altri sistemi a cui richiedono l'accesso). Quindi, a meno che tu non abbia il permesso del tuo CC Processor di consegnare le tue credenziali a una società di audit della sicurezza (suggerimento: non ti darebbero mai il permesso), dare loro l'accesso è una responsabilità enorme .

Molti altri qui hanno fatto un ottimo lavoro nell'articolare le differenze tra i test white-box e black-box. È certamente vero che più accesso si concede ai revisori della sicurezza, più efficacemente possono svolgere il proprio lavoro. Tuttavia, un maggiore accesso comporta un aumento dei costi: sia perché fanno pagare di più per un controllo più approfondito, sia perché aumentano i costi in termini di maggiore responsabilità e maggiore fiducia che devi estendere a questa azienda e ai suoi dipendenti. Stai parlando di dare loro liberamente il controllo completo su tutti i sistemi della tua azienda. Non riesco a immaginare nessuna circostanza in cui acconsentirei.

Sono completamente d'accordo.Nella migliore delle ipotesi, spero che sia un modo goffo per dimostrare un punto sull'ingegneria sociale.Ma anche allora, non farei affari con un'azienda del genere.qualsiasi azienda rispettabile avrà un contratto, un accordo di non divulgazione e varie assicurazioni per proteggere te e loro prima di iniziare un impegno come questo.
Buona risposta.OP può anche avere l'obbligo nei confronti degli altri suoi fornitori di servizi * non * di condividere la sua password con altre parti.Detto questo, * può * essere accettabile creare un nuovo account utente specifico per i pen tester, con la propria password che gestiranno, con autorizzazioni limitate, caso per caso.
@jesseM Una possibilità rimanente è che i contratti e gli accordi di non divulgazione siano firmati e l'OP non lo sappia.Abbiamo avuto situazioni in cui avremmo eseguito test di penna che sono stati eseguiti senza la conoscenza o con diversi tipi di conoscenza limitata dei partecipanti.(Cioè solo il CEO, il CSO e il CIO ne sarebbero a conoscenza. È molto difficile farlo bene e devono esserci processi di escalation molto buoni nell'organizzazione, altrimenti si rischiano molti problemi quando le persone non reagiscono correttamentee le cose smettono di funzionare.)
@DRF anche nel contesto del PO non conoscendo i contratti, queste richieste sono irragionevoli.Accesso al proprio processore CC?Non vedo motivo per cui un revisore della sicurezza ne avrebbe bisogno.È un'enorme responsabilità per entrambe le parti.Anche se stai cercando di verificare che stiano seguendo le best practice nell'elaborazione CC, non è necessario accedere al loro processore CC per farlo e la richiesta di accesso è una * chiara * violazione delle migliori pratiche.Chiedono troppi articoli altamente sensibili perché questo sia qualcosa di diverso da un male.
@ConorMancone Oh, certamente sono irragionevoli, ma potrebbero far parte di un "normale" social pentest.A me sembra un brutto modo per provarlo.La maggior parte delle persone se lo vorrai farebbe un sacco di soldi.Il modo intelligente è quello di volere solo alcune cose che sono molto più credibili.
@DRF un penetration test di ingegneria sociale è sicuramente la spiegazione più caritatevole, ma è sicuramente un brutto modo per farlo.Come dici tu, lo rende più ovvio.Inoltre, sceglierei servizi meno critici: NDA o meno l'ultima cosa che voglio è che qualcuno mi invii le credenziali al proprio CC Processor.
@ConorMancone, senza sapere effettivamente se esiste un contratto e cosa potrebbe specificare un contratto del genere su ciò che è nell'ambito del test, non possiamo dire se la richiesta è valida o meno.Forse l'entità che ha incaricato la società di sicurezza ha specificato che dovrebbero provare ad accedere a quelle informazioni dai dipendenti.Sono d'accordo con DRF sul fatto che questo suona come un approccio al club, ma non sappiamo nemmeno se l'OP rappresenta le richieste in modo accurato.Forse queste erano richieste separate nel tempo che l'OP ha finalmente individuato e che forse non avrebbe dovuto fornire?Semplicemente non lo sappiamo.
Da aggiungere al secondo dall'ultima frase;è raro che una persona in una grande azienda di fatturato abbia accesso a tutte le chiavi del regno simultaneamente senza la supervisione di altri superiori.In parte a causa dei problemi di sicurezza, ma principalmente perché nessuno ha davvero bisogno di tutto in una volta.
Ho eseguito un audit di sicurezza in cui hanno verificato se una serie di servizi erano impostati in modo sicuro.L'unica cosa che ne è uscita è stata un'applicazione per sviluppatori Google di sviluppo mal configurata che avrebbe potuto teoricamente essere utilizzata contro di noi.Ad ogni modo, ciò è stato fatto da una persona che è venuta a sedersi nel nostro ufficio e un mio collega si è registrato per lui.Posso tuttavia * immaginare * (senza dire che sia una buona cosa) un'azienda remota che lo fa chiedendo password.
@DavidMulder Questo è in realtà un servizio molto prezioso: per fare un confronto, è divertente cercare su Google "un'altra perdita di aws di Amazon" per vedere tutte le istanze di persone che perdono informazioni critiche a causa di configurazioni di hosting mal configurate.Detto questo, non credo che consegnare le password sia il modo per risolverlo.In tal caso, penso che sarebbe meglio lasciarli connettersi da remoto a un computer dell'ufficio e guardare tutto ciò che fanno.Sarebbe comunque un'esperienza di apprendimento più preziosa come quella.
Francamente, se questo è un tentativo di dimostrare il pericolo dell'ingegneria sociale è ancora davvero discutibile, i pentest e gli audit non sono formazione degli utenti.Chiedere le credenziali a una parte informata non è ingegneria sociale.
#2
+112
Arminius
2017-10-25 22:58:41 UTC
view on stackexchange narkive permalink

Come devo procedere?

Non procedere con loro. Il modo in cui agiscono non è professionale. I pentest comportano rischi per entrambe le parti e non sembra che abbiano fatto nulla per affrontarli.

Primo, non dovresti assolutamente consegnare nulla senza un contratto scritto (incluso un NDA). È sorprendente che facciano regolarmente affari in questo modo. Come fanno a conoscere l'ambito esatto? In quali termini vengono pagati? Ad un certo punto si limiteranno a dire che sono "finiti" o c'è un calendario? Hai ricevuto un rapporto adeguato? Chi paga se provocano danni? Sono assicurati nel caso in cui perdano le tue credenziali a favore di terzi? Come saprai se una futura violazione fa parte del test o un attacco effettivo da parte di qualcun altro? Anche se ti fidi di loro, queste domande dovrebbero sicuramente trovare una risposta prima di dare il via a un pentest.

E non sei solo tu, si stanno mettendo a rischio. Se non hai mai chiarito l'ambito, potrebbero attaccare alcuni dei tuoi sistemi senza autorizzazione, con potenziali implicazioni legali.

Ho pensato che fosse per lo più una scatola nera.

Entrambi i test box in bianco e nero sono comuni e ogni approccio ha i suoi vantaggi. Ma se la modalità di test non è mai venuta fuori, sembra che non ci sia mai stata una discussione su cosa si dovrebbe ottenere conducendo un pentest in primo luogo. Un appaltatore professionista ti avrebbe aiutato a capire le condizioni e i metodi giusti.

(Una prima grande domanda per un potenziale appaltatore è chiedere loro un rapporto pentest campione. Ti darà un'idea iniziale di come funzionano e quali risultati potresti aspettarti.)

#3
+38
countrhack
2017-10-26 02:11:21 UTC
view on stackexchange narkive permalink

Prima di qualsiasi penetration test dovrebbe esserci uno o più documenti di scoping e regole di coinvolgimento firmati da entrambe le parti. Questi documenti dovrebbero descrivere in dettaglio cosa sarà testato e quali metodi sono stati concordati dalla vostra azienda e dall'appaltatore. Se non hai seguito questa discussione con il tuo appaltatore, interrompi l'incarico e cerca altri professionisti.

In qualità di penetration tester, ho chiesto alle aziende di fornire account o laptop che avrebbero fornito a un utente normale. Ciò consente di eseguire test dal punto di vista dei dipendenti malintenzionati. Tuttavia, questo è tutto concordato prima del test in Scoping and Rules of Engagement.

Solo i miei 2 centesimi.

#4
+25
rockower
2017-10-26 02:42:29 UTC
view on stackexchange narkive permalink

MAI MAI !!

Stiamo facendo un pentimento completo al mio lavoro. È stato esplicitamente affermato dai pentester che non hanno nemmeno bisogno del login / password per nulla. Abbiamo affermato che è stato fantastico dato che non avremmo mai rilasciato loro nulla prima. Esistono 3 tipi principali di pentest: scatola bianca, scatola grigia, scatola nera.

La scatola bianca è che tu dai loro tutte le informazioni e trovano problemi con il tuo software, rete, ecc.

Grey Box è che dai loro alcuni dettagli di ciò che vuoi che pentano. L'abbiamo utilizzato poiché non avevano idea di quale ISP wireless esterno stessimo utilizzando. Abbiamo detto loro di fare prima un test esterno, quindi abbiamo dato loro alcuni IP e si sono introdotti facilmente.

Black Box è che non fornisci loro nulla e devono trovare tutto da soli. Dopodiché possono fare il loro pentest sugli IP esterni. Per i test interni, è diverso. Saranno all'interno della tua rete che eseguono nmap e altre scansioni intense su ogni target che incontrano. Questo è il più difficile, ma il migliore secondo me.

"Abbiamo detto loro di fare prima un test esterno, quindi abbiamo fornito loro alcuni IP e ** sono entrati facilmente in ** **."- Dove lavori?
@Daniel Vuoi dire "Qual è il tuo IP", vero?:)
@BenjiWiebe Vedo cosa hai fatto lì, ma non oserei percorrere sentieri così ombrosi.Ho chiesto che il nome della società rimanesse alla larga da loro;Non desidero penetrare nessuno perché è contro la mia natura.
L'irruzione di @Daniel è solo il primo passo.Sfruttare i buchi trovati è un altro passo.Prova a effettuare il phishing nella tua azienda.Implementa le politiche e applicale.Lavoro per il governo statale.
@Daniel "Non ho alcun desiderio di penetrare nessuno perché è contro la mia natura."Vedo quello che hai fatto là
#5
+20
YLearn
2017-10-26 04:00:17 UTC
view on stackexchange narkive permalink

La mia azienda è attualmente impegnata in un audit di sicurezza inquadrato come un pentest.

e

Nota, non abbiamo mai firmato un un singolo accordo di non divulgazione o altro contratto con loro e sono molto riluttante a fornire loro queste informazioni per questo motivo.

L'uso di "impegnato" in questo contesto implica una definizione di " stipulare un contratto per fare qualcosa ". Ciò mi lascia a chiedermi se le dichiarazioni contrastanti siano accidentali o se non sei l'entità all'interno della tua azienda che ha incaricato la società di sicurezza.

In quest'ultimo caso, potrebbero esserci contratti / accordi di cui eri non messo a conoscenza. Ciò non sarebbe insolito, poiché molti dei test di penetrazione in cui sono stato sul lato ricevente nascondono i dettagli specifici del test ai dipendenti in modo che non intraprendano azioni "anormali" per proteggersi dai test.

Se questo è il caso, fai con la richiesta quello che faresti normalmente con tale richiesta. Di 'loro "no" e se respingono ("ma è necessario per noi eseguire il penetration test"), allora esegui la richiesta (per iscritto) fino al tuo supervisore fornendo le tue preoccupazioni. Se il tuo supervisore ti dice (per iscritto) di rilasciare queste informazioni, dovresti essere chiaro in quanto potrebbe avere una migliore comprensione del test di te. Se i tuoi superiori non sono chiari, eseguilo più in alto nella catena di comando e / o spingili affinché richiedano assistenza all'entità che ha incaricato la società di sicurezza.

Tuttavia, se sei l'entità che ha ingaggiato la società di sicurezza, io (come le altre risposte qui) avrei serie preoccupazioni. Se ritieni che valga la pena proseguire (o sei preoccupato che possano avanzare una sorta di reclamo per "violazione del contratto"), allora ti suggerirei di utilizzare un mezzo per valutare se questo è un test di ingegneria sociale. Ad esempio, potresti generare un elenco di account e password amministratore falsi. Forniscigli questo, dì che stai ancora lavorando al resto e lo invierai non appena sarà pronto. Quindi guarda come rispondono.

Se è solo un test di ingegneria sociale, tutto ciò di cui hanno bisogno è vedere la prova della fuga di questo tipo di informazioni (che puoi dimostrare in seguito sono account falsi). Una società di sicurezza responsabile non dovrebbe avere più bisogno delle informazioni richieste e dovrebbe impedirti di fornirle ("Guardando ciò che hai fornito, penso che questo dovrebbe essere sufficiente per farci procedere; non preoccuparti per il resto a meno che non ne abbiamo davvero bisogno "). Se non interrompono ulteriori informazioni, disimpegnati immediatamente.

Ulteriori informazioni potrebbero solo destare sospetti su qualsiasi penetrazione che eseguono da quel punto in avanti (cioè è facile penetrare in un sistema se hai accesso amministratore) e / o esporli a potenziali azioni legali sulla proprietà intellettuale (ad es. codice sorgente trapelato, ecc.).

Account e password falsi sono un ottimo suggerimento.Sarebbero ancora più efficaci se fossero account che li portassero in un honeypot, in modo da poterli monitorare per gli abusi.
#6
+8
Greenstone Walker
2017-11-02 07:24:55 UTC
view on stackexchange narkive permalink

Venendo alla domanda da una prospettiva leggermente diversa:

Sei il CEO o CTO?

No? Quindi non fornire alcuna password ai revisori. Mai.

Metti insieme un pacchetto di informazioni e inoltralo lungo la catena al tuo responsabile IT, CTO, CEO o qualsiasi altra cosa. Per dirla senza mezzi termini, è il loro lavoro prendere quel tipo di decisioni (e prenderne le conseguenze), non il tuo.

Se il tuo capo dice "No, mandalo tu". quindi rispondi: "Come dipendente, non mi sento a mio agio nel rilasciare informazioni così pericolose a terze parti".

Se sei, in effetti, il CTO, segui i consigli delle risposte precedenti.

Potresti anche aggiungere per iscritto che il tuo * consiglio professionale * non è quello di rilasciare le credenziali, ma che rispetti che è una decisione del CEO.
#7
+3
Tom
2017-10-26 17:51:55 UTC
view on stackexchange narkive permalink

Convalida le tue ipotesi.

Se si suppone che questo sia un test della scatola nera, non dovrebbero ottenere o richiedere alcuna password di sorta.

Se si suppone che questa sia una configurazione review, o white box test, alcune password dovrebbero essere consegnate. La procedura corretta è cambiarli prima del test in qualcosa di unico (stringa casuale), e poi cambiarli di nuovo dopo il test.

Verificare con la propria direzione e chiedere esplicitamente se sono stati firmati accordi di non divulgazione e contratti appropriati.

È normale per un pentest?

Lo scenario come lo hai descritto è insolito, ma non del tutto plausibile. Tutto dipende da cosa esattamente è stato concordato per l'ambito e le attività del test.

Ho pensato che fosse per lo più una scatola nera. Come devo procedere?

Rivolgiti al manager responsabile della firma di questo team pentesting. Il tuo CISO o CSO o responsabile IT o chiunque possa essere. Esprimi le tue preoccupazioni e chiedi se questo approccio è stato concordato.


Fornire password / codice sorgente

Personalmente, non darei password o codice sorgente a nessuno senza un adeguato Firmato NDA. Inoltre, non darei mai e poi mai loro le password effettive. In tutti i pentest in cui sono stato coinvolto, sia come cliente che come project manager (non sono un pentest, ma ho gestito pentesters) c'erano sempre account utente creati per pentest e password cambiate. Consigliamo anche ai nostri clienti di cambiarli dopo che il test è terminato (alcuni non lo fanno, è sempre una triste scoperta per il rapporto successivo).


Forza della password

Quanto a quello che hanno scritto alcune risposte sulla "valutazione della sicurezza della password", è un mucchio di sciocchezze. Sì, esiste una "best practice" sulle buone password, che un tizio ha tirato fuori dal nulla alcuni decenni fa e di cui oggi è terribilmente dispiaciuto. Tutta la matematica sull'argomento è piena di buchi e ipotesi non verificate e molte politiche sulle password riducono effettivamente lo spazio di ricerca invece di ingrandirlo. L'unico vero test per la sicurezza della password ha due parti: una, ottieni le prime 10.000 password da una delle circa 20 liste che fluttuano su Internet e usale come lista nera. Due, esegui lo stesso software di cracking che usano i malintenzionati (la maggior parte di loro sono software libero) sugli hash delle tue password. Se la tua istanza di John non funziona, lo farà anche la loro.

la maggior parte di ciò è coperta dalle altre risposte: la sezione relativa alla sicurezza della password si basa su un presupposto errato;se la stessa password amministratore viene utilizzata in più posizioni, allora non è una password complessa, ad esempio - e sì, i controlli automatici delle password fanno esattamente ciò che hai delineato, quindi non sono sicuro di dove stai andando con questo "controargomento"


Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...