Post

3학년 겨울방학 CTI 기업 인턴십 후기

sejong univ

1. 세종대학교 정보보호특성화사업대학

세종대학교는 2021년에 정보보호특성화사업대학으로 선정되었고, 이로 인해 정보보호학과 학생들에게 정말 다양한 지원을 해 준다.

하계 미국 국외연수, 현직자 멘토링 특강, 클라우드 교육 등 프로그램이 작년에 열렸다. 그 외에도 논문 혹은 특허를 내거나, 자격증을 따거나 외부에서 수상을 하는 등의 실적을 내면 장학금도 건수마다 빵빵하게 제공한다. 그러한 지원사항 중 하나로, 올해 겨울방학에 인턴십도 새롭게 진행하였다.

담당 교수님께서 설명해 주시길, 취약점 분석을 하는 회사, 백신 개발을 하는 회사 등 여러 기업이 있었다. BoB에서 뵈었던 멘토님께 이와 관련하여 여쭤보니, CTI에 대해 배워보는 것은 어떠냐며, AI Spera를 추천해주셨다.

CTI, OSINT… 개념적으로만 어렴풋이 알 뿐이었지 직접 설명하라고 하면 난감한 단어들이었기 때문에, 겨울방학이라는 기회에 놀지 말고 한 번 찍먹해보고자 해당 기업을 희망한다고 교수님께 메일을 보냈다.

cip asset search AI Spera의 서비스 중 하나인 Criminal IP(Asset Search) 수행 결과

AI Spera에서 대해서 짧게 설명하자면, AI(Machine Learning)를 기반으로 하는 다양한 서비스와 Criminal IP라는 CTI 검색엔진 서비스를 제공하는 회사이다. 그중에서 Criminal IP는 전세계 IP 주소(사설 IP 제외)에 대해 정보를 수집하고, 이를 검색엔진으로서 그 정보를 사용자에게 보여주는데, 어떤 포트가 열려 있고 어떤 취약점을 적용할 수 있는지 등에 대해 알 수 있다. 또한, 이는 검색엔진이기 때문에 여러 필터를 검색창에 포함하여 원하는 정보만을 찾아낼 수도 있다. 아직 정식 출시 이전인 Criminal IP는, 매일 같이 여러 뛰어난 분들이 개선하고 있으며, 국내외적으로 그 위상을 높이고 있다.

2. 근무 과정

1월 16일부터 2월 28일까지 근무했다.

회사원이 된다는 것에 아직 실감이 나지 않았던 때, 내가 입사하게 된 보안팀은 대표님이 직속 팀장으로 계셨다. 따라서, 대표님께서 업무를 주시고, 업무 보고도 대표님께 드려야 한다. 정보보안에 있어서 뛰어난 실력을 갖고 계신 분과 직접적으로 얘기를 나누고, 내 업무를 컨펌받을 수 있는 기회로 생각했고 개인적으로 근무하면서 좋았던 점 중 하나다.

한 달이 조금 넘는 짧은 기간 중에, 내가 주로 맡았던 것은 AI Spera 회사에서 새롭게 런칭하는 서비스 중 하나인 Criminal IP의 Domain Search 개선이었다. 맨 처음에는 Criminal IP라는 서비스에 대해 이해하고, 개선 아이디어를 찾으며, 관련 파이썬 코드를 리뷰하는 것이 업무였는데, 개선 아이디어 중 하나를 대표님께서 “그러면 직접 만들어보실래요?”라고 얘기를 하셨고, 내 자리로 오셔서 관련 업무를 설명해주셨다. (그리고 그 일을 회사 근무가 끝날 때까지 했다…)

조금 더 자세히 설명하자면, 내가 제시한 개선 아이디어를 바탕으로 Domain Search의 탐지 로직을 보강하는 데몬을 만드는 것이었다. 이 데몬을 만들면서 총 58353건의 사이트를 검사하였고, 그중 5194건의 악성 피싱 사이트를 탐지할 수 있었다. 처음엔 정탐율이 85.42%에 그쳤지만, 코드를 점점 발전시켜서 나중에는 97.11%, 심지어는 100%가 나온 날도 있었다 ㅎㅎ.

3. 배운 점

아니 그러면, CTI에 대해 제대로 배우고 온 게 아닌 거 같은데?

솔직히 말하자면, 어느 정도는 그렇다. 그러나, CTI 기업의 보안팀에서 근무하는 동안에 CTI와 OSINT에 대해서 어깨 너머로 배울 수 있었다. OSINT라는 것이 단순히 공개된 정보를 활용하는 것임에도 불구하고, 왜 위협적이며 보안에서 하나의 분야를 차지하고 있는지 알 수 있는 기회였던 것 같다.

이것 말고도 배웠던 점들은 다음과 같다.

1. 대학원은 꼭 가야겠다. 그것도 대학 졸업하고 나서 바로.

회사에서 근무하는 사람들을 보면, 대학원을 다녀오신 분이 많이 있었다. 그분들 이야기를 들어 보면, 대학원은 업무에도 많은 도움이 되고, 득이 되는 점이 많다고 이야기해 주셨다. 특히나, 나중에 다시 회사로 가려면 정말 좋은 복지를 가진 회사(대학원 등록금을 주고 졸업 이후 다시 회사로 올 수 있도록 지원해주는 곳)가 아니면, 현재 내가 가진 돈을 포기하고 다시 대학원을 가기가 쉽지 않다고 조언해주셨다. 그게 아니라면 야간 대학을 다녀야 하는데, 이는 주간으로 다니는 것보다는 배우는 것이 상대적으로 더 적을 수밖에 없다고… 대부분의 사람들이 대학원 간다 이야기하지만, 막상 졸업하고 바로 취업을 해 버리고 그게 1~2년이 지나면 대학원 생각이 나지 않는다고 한다.

2. 영어도 꼭 제대로 배워 놓아야 한다.

AI Spera 회사를 보면, 한국에서만 서비스하고 있는 것이 아니라, 외국에도 지사를 두었다. 또한, 영어가 되기 때문에 유수의 기업들과 계약을 맺고 새롭게 Criminal IP가 해당 서비스에 등록되는 것을 보면, 더 많은 기회를 잡기 위해서는 영어가 꼭 필수라는 생각을 하게 됐다.

3. JIRA/Confluence 사용법

맨 처음에는 JIRA 티켓을 만들 때도 벌벌 떨면서 만들고, 주임 연구원님께 도움을 요청하고 그랬는데, 퇴사할 때쯤에는 혼자서 쉽게 만들 수 있을 정도로 JIRA 사용법을 익힐 수 있었다.

4. 기업에서 서비스를 배포하는 과정

나는 개발의 ‘개’자도 제대로 모르는 상태에서 회사에 입사했는데, 내가 만든 데몬을 라이브 서버에 배포하면서 위 과정을 체험해볼 기회가 있었다. 마치 하나의 작전을 수행하듯이, 사전 작업(코드 리뷰)을 하고, 배포 당일에는 착착 맞춰 업데이트를 수행하는 것이 내게는 감명 깊었다. 게임 회사에서 패치 시간으로 잡는 2시간 동안 어떤 일이 이뤄지는지, 패치 내역이 어떤 과정을 거쳐서 일어나는지를 직접 체험해 보니까, 정말 힘든 일이더라 ㅋㅋㅋ..

5. 업무를 제대로 전달해야 하는 이유

특정 업무를 사내의 다른 분께 전달할 때 원하는 바를 제대로 표현해주어야 한다. 회사 일을 하다보면 모두가 바쁘기 때문에, 이게 무슨 뜻인가 하고 한 번 더 생각하는 여유로운 직장인은 없다..! 내가 업무를 드릴 때 좀 더 고민해서, ‘이 말이 제대로 이해가 될까? 빠진 것은 없나?’하고 한 번 더 정리해서 보내드려야 모두가 편한 길이다. 나 편하자고 대충 보내면, 받은 쪽은 난감할 뿐이다.

6. 코드 리뷰 방법, Pull Request를 보내는 법

업무를 수행하다가 자연스레 배울 수 있었다. 처음으로 Pull Request를 보내고, merge 되었을 때의 그 쾌감이란…


짧은 기간이었지만, 좋은 분들이 주변에 있었기 때문에 많은 것들을 배울 수 있었던 것 같다.

저를 받아주신 회사에 감사하며, 이러한 회사를 소개시켜주신 교수님께 감사합니다. ^ㅁ^

cat

This post is licensed under CC BY 4.0 by the author.