본문 바로가기

전체 글

안랩 체험형인턴에 대한 조사 내가 다니는 학교에서는 현장실습(IPP)제도가 있으며 이는 졸업요건이다. 참가 후기 카테고리에 있는 가산디지털단지의 모 회사로 한달간 실습을 다녔던 것도 그 이유였다. 2020/08/29 - [참가 후기] - 2020년도 하계 단기현장실습 후기 2020년도 하계 단기현장실습 후기 7월 말부터 8월 말까지 서울 가산디지털단지의 모 기업으로 단기현장실습(IPP)을 다녀오게 되었다. 학교 규정상 졸업요건 중 하나기 때문에 우리 학교의 모든 학생들이 수행하는 실습이지만 SNS에 haruhiism.tistory.com 하지만 이 회사는 이미지 처리를 주력으로 하는 곳이었기 때문에 내가 희망하는 분야인 정보보안과는 관련이 없어 아쉬운 느낌이 없지않아 있었다. 그러던 중 유명 보안업체인 안랩에서도 장기현장실습 인원을.. 더보기
Challenge - Replace Reversing.kr의 5번째 문제인 Replace다. 이전 문제인 Music Player보다는 조금 더 푼 사람이 많은데 아마 비주얼 베이직 프로그램이 아니어서 그런지도 모른다. 이번 문제에서는 단순히 문제 파일만 주어지고 어떻게 뭘 하라는 지시가 없어서 좀 헷갈릴 수 있다. 일단 프로그램을 실행시켜보자. 사용자 입력을 받는 텍스트 박스 하나와 Check 버튼, 그리고 Wrong이라는 문자열로 구성된 화면이 나타났다. Wrong 문자열이 있는 부분은 사용자 입력에 아무 반응이 없으며 텍스트 박스에는 숫자만 입력할 수 있다. 일단 아무 값이나 입력한 후 Check 버튼을 눌러보면 어떤 반응도 없이 그대로 프로그램이 종료되는 것을 볼 수 있다. 그런데 뭔가 프로그램이 종료되는 모습이 부드럽지가 않은데, .. 더보기
Challenge - Music Player Reversing.kr의 네 번째 문제인 Music Player다. 이전 Easy 시리즈들과는 달리 푼 사람의 수가 비약적으로 줄어든 것을 볼 수 있다. 아마 여기서부터는 장난은 끝난다는걸 의미하는 것 같기도 하다. 글을 쓰기 전에 먼저 말해둘 것은 나도 이 문제를 풀지 못해서 다른 사람의 풀이를 보고 풀었다는 것이다. Easy 시리즈들을 풀때는 나 혼자의 힘으로 풀 수 있었지만 아직 리버싱 초보인 이상 문제를 푸는 데 한계가 슬슬 다가오는 것인지 바보같이 dll 내부까지 들어가서 로직을 파악하느라 끙끙대는 실수를 저지르고 말았다. 여기서 시간과 에너지를 너무 소모해버려서 결국 힌트를 보고 풀게 되었지만 다시는 엉뚱한 곳을 분석하지 말자는 교훈을 얻을 수 있었다. 어쨌든 이번 챌린지의 목적은 이 음악 재.. 더보기
SK 뉴스쿨 정보보안학과에 대한 조사 며칠전 카카오톡 오픈채팅방에서 SK 뉴스쿨이란 곳에서 교육생을 모집하고 있다는 홍보를 보고 이에 대해 알아보게 되었다. SK 뉴스쿨(정보보안학과) 신입생 모집 (notion.so) SK 뉴스쿨(정보보안학과) 신입생 모집 ✔ SK NEW SCHOOL (정보보안학과) 교육 특징 www.notion.so SK 뉴스쿨에는 정보보안학과 10명 / 조리학과 20명 / 외식경영학과 20명 / MD학과 20명을 모집하고 있는데 이 중 정보보안학과에 대해서 좀 알아보았다. 이곳에서는 다른 교육기관이나 학원과는 달리 1년이 넘는 기간동안 약 1000시간이 넘게 교육을 진행한다. 평일 오전 9시부터 오후 6시까지 9시간씩 5일을 교육하는 상당히 긴 기간인데 라이프코칭, 글쓰기 수업 등 직무 외적인 교육도 진행하기 때문에 이.. 더보기
Challenge - Easy Unpack Reversing.kr의 세 번째 문제인 Easy Unpack이다. 이전 문제인 Easy Keygen보다 약간 적은 3000명 정도의 사람들이 푼 문제로 언패킹에 관련된 문제다. 언패킹은 보통 OEP(Original Entry Point)를 찾아서 덤프를 뜨고 IAT를 복구하는 것이 목적인데 언패킹된 파일을 워게임 사이트에 업로드할 수도 없는 노릇이기 때문에 이번 문제에서는 이 프로그램의 OEP를 찾아 사이트에 인증하도록 설명하고 있다. 일단 프로그램을 실행시켜보면 다음과 같은 단순한 창이 뜨는데 뭘 눌러도 아무런 반응이 없기 때문에 정보를 얻어낼 수 없었다. DIE로 확인해보아도 별다른 패커 정보를 찾을 수 없었다. 그렇기때문에 일단 프로그램을 x32dbg로 실행시켜보았다. 0x0040A04B에서 프로.. 더보기
Study04 - 기초 지식(패킹, 언패킹) 많은 현대 프로그램들은 악성 행위로부터 자신을 보호하기 위해 실행 파일을 패킹하여 배포하곤 한다. 프로그램을 패킹, 또는 언패킹한다는 것은 무슨 뜻일까? 단순히 실행파일의 크기를 줄이기 위해 압축하는 컴프레싱(Compressing)과는 달리 패킹은 프로그램 분석을 어렵게 만들기 위한 목적을 가지고 있다. 이를 프로텍팅(Protecting)이라 하는데 프로그램이 분석되어 악의적으로 동작한다면 보안 사고를 초래할 수 있기 때문에 이 분석 자체를 어렵게하는 행위를 뜻한다. 이는 프로그램의 원본 실행 코드를 암호화하여 저장하고 이를 복호화하는 코드를 프로그램에 포함하는 방식으로 구현할 수 있다. 패커로 인해 패킹된 프로그램의 실행 코드는 실행 시점에 복호화되어 동작을 수행한다. 그렇기 때문에 패킹되지 않은 프로.. 더보기
2020년 3회 정보처리기사 필기/실기 합격 후기 거창하게 합격 후기라고 써놨지만 사실 필기는 공부를 한 적이 없고 실기도 약 2~3주간 수제비 문제집을 붙잡고 있었던 것이 전부기 때문에 딱히 쓸 말이 없다. 필기 시험때는 단기현장실습 기간과 거의 겹쳤기 때문에 정말로 기본 지식으로 보러 간 상태고 실기는 졸업작품 관련해서 일이 많아서 공부를 좀 늦게 시작한 상황이었다. 필기를 잘 봤냐면 그것도 아닌데 데이터베이스 과목은 아슬아슬하게 과락을 면했고 나머지 과목들도 그렇게 상위권 점수가 아니었기 때문에 실기에서 조금만 문제가 어렵게 나와도 탈락할 것은 불보듯 뻔했다. 2020년부터 정보처리기사가 개편됐으니까 문제를 한번 체감해보자 하는 선에서 본 것이었는데 덜컥 붙어버려서 놀랐지만 그래도 컴퓨터공학부에서 지낸 4년이 쓸모없지는 않았다고 느낄 수 있는 시간.. 더보기
Study03 - 기초 지식(IAT) IAT, Import Address Table은 실행 파일이 어떤 라이브러리의 어떤 함수를 가져다 쓰는지 기록해놓은 테이블이다. PE Loader가 PE 파일을 메모리로 로딩할 때 IAT에 기재된 API 이름을 참조하여 실제 주소를 찾아 IAT에 API를 가리키는 주소를 적어놓으면 코드에서 라이브러리를 참조할 때 이 주소를 사용하는 방식이다. 프로그램에 라이브러리를 포함하지 않는 DLL 방식을 사용하게 되면서 라이브러리를 프로그램 시작 시 로딩하고 종료 시 메모리에서 해제하는 Implicit Linking 방식과 프로그램 내부에서 사용되는 순간에 로딩하고 사용이 끝나면 해제하는 Explicit Linking 방식 두 가지로 구분되었는데 이 IAT는 전자의 방식에 사용된다. Import Address Ta.. 더보기