boaform?

김병갑·2023년 4월 3일
0

회사 이슈

목록 보기
1/1

오늘 회사에서 필요에 의해 유니티 프리랜서 개발자께 요청을 드린 게 있는데 AWS에 접속이 되지 않는다는 말을 들었다.

접속이 안 된다길래 직접 ssh 로그인을 시도했는데 timeout이 떴다.

패스워드가 혹시 틀려서 그런것도 아니고 (애초에 그랬으면 timeout도 뜨지 않았겠지 ㅋㅋ) 대체 무슨 이유길래 로그인부터 안되나 싶어서 AWS EC2 모니터링으로 들어갔더니만 CPU가 50%가 넘었다.

CPU 리미트는 50%로 기본 제한이 되어있기 때문에 결국 리소스가 모자라서 막혀있는것이었다.

나중에 들어가서 syslog이나 웹 로그부터 보고 AWS 모니터링 시간이랑 비교해서 CPU 점유율이 치솟은 시간을 찾아내니까 이상한 웹 요청이 들어와있었다.

들어와있는 페이로드는
https://도메인/boaform/admin/formlogin&username=ec8&psd=ec8
이라고 써있었다.

맨 처음은 누가 헷갈려서 이것을 계속 하는건가 싶었는데 그렇다고 하기에 너무 많은 요청이 있는 것은 뭔가 잘못됐다고 생각이 들었다. 요청 잘못한것도 한두번이지.

검색을 해보니까 몇년 전에도 유행을 했던 공격이었던 모양이다.

결론적으로 이 공격은 Netlinks 라우터를 염두해서 한 공격이었으며 쿼리스트링의 파라미터값은 내가 직접 써 보진 않았지만 추측하건데 default로 이루어진 값이라고 생각된다.

무차별적으로 쏘아보낸 값 중 얻어걸린 라우터가 있으면 거기서 지지고 볶고 할 예정이었을 수도 있고 백도어 등 몰래 점령할 생각일 수도 있겠지만 그건 공격자 맘이니까 뭐...

결국 해결방법이라고 해봤자 내 머리에서는 해외 IP를 차단하고 나머지 로그 다 까서 일일이 IP 차단으로 마무리했었다.

저런 이상현상이 있을 때마다 차단하게 만드는 방법이 뭔가 있을텐데 아직 이렇게 보안적으로 실력이 많이 부족하다는 게 느껴지기도 하고 이렇게 이상현상이 일어날 때 분명 방법이 있을텐데 어떻게 해야되는가 머릿속의 정보가 부족하다는 게 느껴진다.

지금 방법도 솔직히 말해 너무 유연하지 않은 방법이다. 되게 임시방편같은 느낌이 아닌가.

만약 국내사용자가 저렇게 하면 또 똑같이 당한다는건데 스크립트 언어단에서 해결하는 방법을 한번 마련해보든지 등등 내가 동적으로 컨트롤 할 수 있는 언어단에서 마무리를 지어봐야 될 것 같다.

DB에서 블랙리스트를 만들어서 해당 IP면 뭐 403을 리턴시킨다든가 뭐 그럴 수도 있겠는데...

흐음.... 하아 그러면 반대로 요청을 많이 하게 되면 그만큼 DB SELECT도 많이 하게 된다는 말인데 이러면 DB쪽을 많이 잡아먹게 되는건데 하이고 맙소사... ㅋㅋㅋ

오늘도 구글신께 정답을 빌어봐야겠다.

profile
맥가이버가 되고싶은 개발자

0개의 댓글