2017-06-28 104 views
7

Why getText() in JPasswordField was deprecated?Jak łatwo jest ukraść coś, co zostało do śmieci?

Według this answer na powyższe pytanie, co mam rozumieć, że tworzenie String obiekt zawierający hasło jest zagrożeniem bezpieczeństwo, ponieważ może on pozostać w pamięci na chwilę i jest niezmienny.

Więc zastanawiałem się,

  • Jak łatwo jest odzyskać coś, co zostało wiszące wokół w pamięci bez odniesienia lub opuszczone do zbierania śmieci?

  • Jak to zrobić?


EDIT

Ponieważ pytanie zostało zawieszone, być uprzejmy podzielić się swoją wiedzą, dodając komentarz, i rozważyć ponowne otwarcie pytanie jeśli wierzyć może uzyskać interesujące odpowiedzi w przyszłości. :)

+0

Ten komentarz może być nieco nieistotny, ale czy kiedykolwiek używałeś mechanizmu oszustwa? Pozwala na zbadanie przestrzeni adresowej innego procesu i odczytanie pamięci. Jestem pewien, że ktoś mógłby go użyć, by uzyskać hasło w pamięci. – byxor

+2

[Dlaczego preferowane jest 'char []' zamiast 'String' dla haseł?] (Https://stackoverflow.com/questions/8881291/why-is-char-preferred-over-string- for-passwords) - otrzymujesz zrzut pamięci i przejrzyj go, a przy wystarczającym wysiłku znajdziesz go. – luk2302

+0

@JarrodRoberson To, czego szukam, to sposób na pozbycie się obiektów do zbierania śmieci. Nie chodzi o bezpieczeństwo pozostawiania haseł jako ciągów. Na przykład napisałem coś o zabezpieczeniu hasłem, aby uzyskać lepszy pomysł. Myślę, że źle zrozumiałeś pytanie. –

Odpowiedz

1

https://en.wikipedia.org/wiki/Heartbleed

Jest to dobry przykład rzeczywistym świecie rzeczy wiszące w pamięci wykorzystywane do eksploatacji. Można to zrobić na różne sposoby, warto więc dopilnować, aby cenne rzeczy nie zostały zawieszone. Zazwyczaj te ataki są tylko odgadywaniem i sprawdzaniem. Po prostu przesyłasz informacje i układasz kawałki dodatkowej pamięci, którą otrzymujesz w zamian.

+0

Pamiętaj, że heartbleed wydarzyło się w języku, w którym brakowało kolekcji śmieci. – byxor

+0

@byxor jest prawdziwe, ale nie zmienia wiele, ponieważ odśmiecanie nie powoduje zastąpienia "śmieci"/pamięci nieużywanej. – luk2302

+0

Świetny punkt. Mam nadzieję, że ten wątek komentarza jest pożywką do przemyślenia. – byxor