path traversal 공격은 들어보신 분도 계실 겁니다. spring boot로 만든 간단한 프로그램을 가지고 테스트를 해 보도록 하겠습니다. 먼저, 프로젝트 구조는 다음과 같습니다. application.properties를 보겠습니다. server의 포트를 7778로 설정하였습니다. 다음에, default controller를 보겠습니다. 뭔가 복잡해 보이는데요. path가 /data입니다. 이것은, 파라미터로 file name을 보내면, 해당 파일에 있는 내용을 출력해서 응답합니다. 별 문제는 없어 보입니다. 저는 클라이언트가 보내준 값만 믿겠습니다. 저는 우분투를 이용하므로, 방화벽을 설정해 줄 건데요. 포트를 7778을 쓰므로, 172.30.1.0/24에 대해서만 허용해 줍니다. 왜 그런지..
네트워크 검색 결과
이번 시간에는 인증과 인가에 대해서 알아봅시다. 아마 http를 공부하시다 보면 한 번 쯤은 들어보셨으리라 생각합니다. 401과 403, 그리고 404가 이것과 연관이 있습니다만, 이 글에서 상태코드를 중요하게 다루지는 않을 겁니다. 티스토리 포럼에 가 보시면, 댓글을 입력하는 란이 있음을 알 수 있어요. 최대 500자까지 입력이 가능해 보이는군요. 입력하려는 순간 로그인을 하라고 뜹니다. 이는 제가 로그인을 하지 않아서, 서버는 내가 누구인지 모르기 때문입니다. 처음 보는 사람이 누구인지 모르는 것처럼요. 로그인을 해 보겠습니다. 로그인을 하고 나서 보니, 코딩강아지라는 것이 확인 되었습니다. 신원이 확인이 된 셈입니다. ip 주소를 알면 되지 않을까요? pc방이라는 반례가 있습니다. 그 후에는, 이렇..
오늘 따라 덥군요. ifconfig 명령어를 치면, 여러 가지 정보들이 나옵니다. 이 중에서, netmask를 알아보도록 하겠습니다. ifconfig 명령어를 쳐 보겠습니다. 우분투에서는, 이 명령어를 치면, 추가적인 패키지를 깔아야 할 겁니다. inet, netmask, broadcast가 보이는데요. 이 중에서 netmask는 대체 어디에 쓰이는 것일까요? 일단, 255. 255. 255. 0을 3자리씩 끊어서 2진수로 바꿔 보도록 하겠습니다. 대충 이렇게 되겠군요. 다음에 192.168.213.128을 3자리씩 끊어서 2진수로 바꿔 보도록 하겠습니다. 이 친구는 hostname -I 명령어를 입력했을 때, 나온 값이기도 하였습니다. 그러면 11000000. 10101000. 11010101. 100..
오늘은, ssh랑 telnet에 대해서 간단하게 와이어 샤크를 가지고 실습해 보도록 하겠습니다. 이들이 패킷을 어떻게 날리는지도 보도록 하고요. telnet이 보안이 취약하다는 소리는 많이 들어봤는데, 정말 그런건지도 한 번 보도록 하겠습니다. 저는, VM 안에 있는 ubuntu에 ssh server랑 (sshd), telnet server를 깔았습니다. 그리고 window에 ssh와 telnet 클라이언트가 있습니다. 먼저, hostname -I를 쳐 보겠습니다. 그러면, VM으로 띄운 우분투의 IP가 나올 겁니다. 그리고 방화벽 ufw가 있는데요. 이들의 설정을 건드려가면서, telnet이나, ssh 접속을 할 때 어떠한 패킷이 왔다갔다 하는지 테스트 해 볼 겁니다. 먼저, status를 보겠습니다...
RSA 알고리즘은 어디선가 많이 들어보셨으리라 생각이 듭니다. 어떠한 메세지가 있습니다. 메세지 M을 a1이라는 key로 암호화 했습니다. 암호화 된 메세지를 E(M)이라고 하겠습니다. 이를 a1과 다른 값을 가지는 a2로 복호화를 합니다. 예를 들어, 3으로 암호화를 시키고 5라는 키로 복호화를 시키는 식입니다. 비대칭키 알고리즘인 셈입니다. 이 포스팅에서는 과정만 보일 겁니다. 그러니 오일러 파이나, CRT와 같은 용어는, 천천히 알아가시는 것도 좋을 듯 싶습니다. 다만, 제가 중간 중간 보라색으로 칠한 부분은 심도 있게 생각해 보셔도 좋을 듯 싶습니다. 먼저, 두 소수의 곱으로 이루어진 합성수를 생각해 보도록 하겠습니다. 예를 들어 3과 5를 곱해서 나오는, 15라던지, 37과 41의 곱으로 이루어..
최근댓글