We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
No description provided.
The text was updated successfully, but these errors were encountered:
직렬화: 객체 -> 바이트 스트림 역직렬화: 바이트 스트림 -> 객체
@DisplayName("역직렬화 폭탄 테스트") @Test void deserializeBomb() { byte[] bomb = bomb(); // 역직렬화를 하면 엄청 많은 시간이 걸린다. deserialize(bomb); assertThat(bomb).isNotEmpty(); } static byte[] bomb() { Set<Object> root = new HashSet<>(); Set<Object> s1 = root; Set<Object> s2 = new HashSet<>(); for (int i = 0; i < 100; i++) { Set<Object> t1 = new HashSet<>(); Set<Object> t2 = new HashSet<>(); t1.add("foo"); s1.add(t1); s1.add(t2); s2.add(t1); s2.add(t2); s1 = t1; s2 = t2; } return serialize(root); // 직렬화 수행 }
{: width="50%" height="50%"} => 200개의 객체만으로 2**100의 call을 유발하는 가성비좋은(?) 공격
Sorry, something went wrong.
직렬화에 대해서 더 자세히 알게 되었습니다.
eternalklaus
No branches or pull requests
No description provided.
The text was updated successfully, but these errors were encountered: