App per desktop Java vs servizio web [chiuso]

0

Al momento ho un'app desktop scritta in Java (Swing) che parla con un back-end basato su C su SSL. Sto cercando di capire i pro / contro dal punto di vista della sicurezza per passare a un modello di servizio web. Ci sono più ragioni di business e ingegneria per farlo, ma i nostri dati aziendali sono molto sensibili, quindi la sicurezza supera per altri motivi.

Ho sentito parlare delle patch di sicurezza Java a settimane alterne, ma ho sentito cose simili con gli exploit del browser web / server. Per il modello di servizi Web, prevediamo di utilizzare node.js in esecuzione in una finestra mobile per isolarlo. Parlerebbe solo di redis e / o postgresql.

    
posta RishiD 24.03.2015 - 14:42
fonte

1 risposta

2

Risponderò alla tua domanda con una raffica di altre domande.

La tua app ha effettivamente bisogno di andare su internet aperto? o può semplicemente esistere su una intranet aziendale?

La maggior parte degli "exploit java" sono semplicemente dei modi in cui la sandbox di java può essere scomposta e di piccole conseguenze per le applicazioni java legittime poiché è davvero un confronto tra mele e arance.

La maggior parte degli "exploit del browser" sono simili (ottenendo l'accesso ad un sistema o ad altri dati nel browser, uscendo dalla sandbox dei browser). In questo però Chrome aiuta un po '.

Detto questo, la maggior parte degli exploit del "server web" sono basati sulla possibilità di eseguire il proprio codice o estrarre dati che non si suppone.

Se hai un'app java che comunica direttamente con un back end C tramite socket, quanto è bloccata la tua app C? Il potenziale di danno può essere piuttosto elevato (dal momento che, a seconda del software, si ha il potenziale per gli exploit della catena rop o addirittura l'esecuzione diretta del codice, oltre a rendere disponibile l'intera memoria dei processi.)

Ciò richiederebbe un aggressore più sofisticato.

D'altro canto, se si dispone di un server Web COT, si corre il rischio che un utente malintenzionato meno esperto sia in grado di eseguire i propri sistemi. E tutte le riscritture sono destinate a fare gli stessi errori fatti dal codice originale (anche se il programmatore originale è ancora in circolazione.)

Personalmente starei lontano da node.js semplicemente perché è una tecnologia così immatura rispetto ad altre opzioni.

Qual è il costo potenziale del compromesso? Qual è il potenziale risultato del compromesso? Chi avrebbe un interesse acquisito nel compromesso sul sistema? È il furto di dati o la manipolazione dei dati che farà maggiormente male?

    
risposta data 24.03.2015 - 16:29
fonte

Leggi altre domande sui tag