홈페이지 업로드 프로그램
Posted 2007. 7. 24. 17:58, Filed under: Study/Computer Science인턴들의 최대 노가다성 작업 - 바이러스 정보 홈페이지에 올리기
그 동안 하루에 보통 한두시간쯤은 투자해야하고 이제 우리가 너무 많이 모아놔서
감당하기가 어려워져가는 이 단순 작업을 자동화하기 위한 툴을 개발하기로 했다 ㅋ
인턴 프로젝트 - 악성코드 분석을 위한 hex editor- 에서 내가 맡은 부분에 소스가 있어서 -_-;;
할 일이 비교적 없는 관계로 소스 분석이나 하고 놀던 와중에 - Intel instruction stucture 관련 공부-
가능하면 우리가 하는 단순 노동들을 자동화해주는 툴을 많이 만들어놓고 가야겠다는 생각이 들었다.
(그래서 이미 하나 간단하게 만든 툴도 있다. 재성이 형이 아침마다 매일하는 엔진 추가 요청 샘플을
자동으로 추가해주는 프로그램)
다음 기수부터 본격적으로 샘플 분석을 시켜보고 안되면 그 담에 인턴을 줄인다는 말이 나와서
가능하면 단순노동을 줄이고 공부를 많이 해서 보란듯이 잘 했으면 좋겠다.
남는 시간에 놀면 낭패 -_-;;
사실 지금 샘플 분석은 분석 결과가 엔진에 반영된다는 책임 문제랑 이것저것 얽혀있어서
단순히 실력부족에 관련한 문제는 아니지만 우리가 할 일이 확실히 자동화되고 많이 공부한다면 ㅋ
그게 인턴이나 정직원 모두에게 좋은 방향이니까 점점 변해갔으면 좋겠다
괜히 남좋은 일 시키는 거 같지만 뭐 그러면서 조금씩 나아지겠지-
여튼 그래서 그런 프로그램을 만들려고 시작했다는거.
첫번째 문제는 내 아이디와 비밀 번호를 가지고 로그인된 세션을 얻는 것.
요며칠 붙들고 고생했더니 어찌저찌 해서 성공했다 ㅋ
네트웍 패킷을 캡쳐해서 http 헤더에 형식에 맞춰서 보여주는 paros 라는 프로그램을 사용해서
로그인할 때 발생하는 http 요청을 보고 MFC의 Http 관련 클래스를 이용해서 테스트해본 결과 성공.
(paros는 java로 작성된 프로그램으로 로컬호스트를 프록시로 설정하여 패킷을 캡쳐한 후 보여준다)
로그인 성공 후에 response가 redirection으로 오는데 이게 익스플로러에서는 처리가 되는데
테스트 프로그램에서는 안되서 한참 헤맸다.
알아보니까 redirection은 http 요청을 한 프로그램에게 다시한번 get 방식으로 요청을 하라고
응답하는 것이라고 해서 try- catch로 예외를 잡아서 무시해버린 후, 다시 get으로 해당 페이지를
요청하는 걸로 해결했다. 무식한 방법이지만 다른 방법을 모르겠다..-_ㅠ
단순히 ok 버튼을 누르면 실행되는 형식이라 goto문도 쓰이고 굉장히 조잡하지만-
낼 부터 차근히 정리하면 이번 주 안에 베타버전을 만들 수 있을 것 같다 (희망사항)
일단 게임핵 같은 간단한 샘플 정보 자동 업로드를 만든 후에 우리가 쓰고 있는 인턴에이드 프로그램을
깔끔하게 정리해서 덧붙여야지.
특정 조건에 맞는 파일을 복사해주는 클래스나 웹페이지 요청에 관련한 클래스를 하나쯤 만들어두면
단순한 인턴 업무를 대신해줄 프로그램을 만드는데 큰 도움이 될 것 같다.
그리고 매번 간단한 프로그램이라 다이얼로그 기반으로만 하다보니 MFC의 기본이 부족하단 생각도 든다.
책 보면서 제대로 한번 파봐야겠다.