Secure string data

Description

70-483 C# Flashcards on Secure string data, created by Thiago Russo on 24/05/2017.
Thiago Russo
Flashcards by Thiago Russo, updated more than 1 year ago
Thiago Russo
Created by Thiago Russo almost 7 years ago
1
0

Resource summary

Question Answer
Pq proteger strings? Quais problemas podem ocorrer? A maioria dos dados em seu aplicativo consiste em strings simples. Ex: senhas e de número de cartão de crédito são duas strings. A implementação System.String padrão n está otimizada para a segurança. Usar string para armazenar dados sensíveis tem alguns problemas: ■ O valor da string pode ser movida da memória pelo GC deixando várias cópias ao redor. ■ O valor de string n é criptografado. Se vc executar c/ falta de memória, pode ser q a string seja escrito como texto simples para uma página de arquivo no disco. O mesmo pode acontecer nas falhas de qdo ocorre despejo de memória. ■ System.String é imutável. Cada mudança vai fazer uma cópia dos dados, deixando múltiplas cópias na memória. ■ É impossível forçar o GC a remover todas as cópias de sua string na memória.
System.Security.SecureString O .NET oferece uma classe especial que pode ajudá-lo a minimizar a área de superfície que um atacante tem: System.Security.SecureString. A SecureString criptografa automaticamente o seu valor de modo que a possibilidade de um invasor encontrar uma versão de texto simples da string simples é diminuída. A SecureString tb está presa a um local de memória específica. O GC não move a string ao redor, de modo a evitar o problema de ter várias cópias. SecureString é uma string mutável que pode ser criada somente leitura qdo necessário. Finalmente, SecureString implementa IDisposable para q vc possa se certificar de q seu conteúdo é removido da memória sempre q vc n precisar mais usá-la.
secure string resolve completamente os problemas de segurança de string? SecureString ñ resolve completamente todos os problemas de segurança. Como precisa ser inicializada em algum momento, os dados q são utilizados para inicializar o SecureString ainda estão na memória. Para minimizar esse risco e forçar vc a pensar sobre isso, SecureString pode lidar apenas com caracteres individuais de cada vez. Ñ é possível passar uma string diretamente para um SecureString
exemplo inicializando uma SecureString
converter a SecureString de volta para uma string normal
5 métodos da classe Marshal que podem ser utilizados qdo se trabalha com SecureString
SecureString é completamente segura? É importante perceber que uma SecureString ñ é completamente segura. Vc pode criar um aplicativo, sendo executado em potência máxima, que será capaz de ler o conteúdo SecureString. No entanto, ele aumenta a complexidade de "hacking" da sua aplicação. Todos os pequenos passos q vc pode tomar para tornar a sua aplicação + segura criará um obstáculo maior para um atacante.
Show full summary Hide full summary

Similar

Porova teórica C# mod l
Cursos Professor Jonatã
Linguagem C#
Alex Araujo Furado
Prova teorica C# mo ll
Cursos Professor Jonatã
Entity framework - code first
José Fernandes
Flashcard Módulo 1 - XAMARIN LATINO AMERICA
Marcone Barbosa
Entity framework
José Fernandes
C# and ASP.NET
Kalebi Fiorentini
Linguagens de programação
Rodrigo Barbosa7452
Conceitos do ASP.NET CORE (Incompleto)
José Fernandes Rezende Neto
Dates and times .NET
Felipe Couto Viola
Fluxo Game UC 8
Lucas Coluzzo