분류 전체보기
윈도우 cmd창에서 ftp접속하기
윈도우 cmd에서 ftp접속하여 파일을 다운로드/업로드 하는 방법을 알아봅시다. 먼저 실행창(윈도우+R)에서 "cmd" 명령어를 쳐서 커맨드창을 열어 줍니다. "ftp" 명령어를 입력하여 ftp프로그램을 엽니다. 그리고 open [ip주소] [port번호]를 넣고 엔터! 여기서 ip주소는 ftp서버가 열려있는 시스템의 ip주소겠죠? port는 생략하시면 기본 ftp포트(TCP 20, 21)로 접속됩니다. 그리고 나서 사용자 이름을 입력하라는 창이 뜹니다. ftp서버에서 설정한 id와 pw를 입력하고 접속을 하면 됩니다. 주요 명령어 1) ls : ftp의 폴더 목록이나 파일 목록을 보여준다. 2) cd : 해당 폴더의 내부로 들어가기 위해서 cd 폴더명 을통해 폴더를 접근한다. 3) get : 파일을 받..
[CodEngn]Basic RCE_Level 10 문제풀이
파일을 실행시켜 보자. PEiD로 살펴보니 ASPack 2.000 이라는 것으로 실행압축되어 있다. ASPack이 뭔지 알아보자. 먼저 올리디버거로 OEP를 찾아낸다. 00445834 가 OEP 주소가 된다. 그리고 OllyDump를 이용하여 언팩킹을 한다. 언팩킹 후 OEP주소를 가보면 정상적으로 언팩킹 된것을 볼 수 있다. 이후 String값을 확인해 보니, "Registered ... well done!" 이라는 등록 성공 메시지가 보여진다. 해당 주소로 찾아가서 분기점을 찾으면 끝날 것 같다. 확인 결과 분기점의 OPCODE는 75 55 가 된다. 따라서 최종 정답은 004458347555(OEP주소 + 분기점 OPCODE)
[CodEngn]Basic RCE_Level 09 문제풀이
StolenByte를 구하라고 문제가 나와있다. StolenByte가 무엇일까? StolenByte 는 훔친 바이트란 의미로 프로그램의 한부분의 코드를 훔쳐내어 다른 부분으로 옮겨진 코드를 말한다. 주로 옮겨지는 코드는 엔트리 포인트위의 몇개의 코드들이며 옮겨진 코드들은 OEP 주소로 점프하기 전에 위치에서 PUSH 된다.이러한 StolenByte 는 주로 패커가 프로그램을 패킹할때 볼수있다. 이렇게 옮겨진 코드들은 할당된 메모리 공간에서 실행된다. 이때문에 패킹된 프로세스가 덤프될때 StolenByte를 복구하지 못하면 프로그램은 정상적으로 작동하지 못하게 됩니다. 실행시켜 보자. keyfile을 check한다는 박스가 뜨고 '확인' 버튼을 누르면 파일을 찾을 수 없다는 메시지 박스가 출력된다. upx..
[CodEngn]Basic RCE_Level 08 문제풀이
파일의 OEP를 구하면되는 간단한 문제이다. 파일을 실행시켜 보면 계산기 프로그램이 실행된다. PEiD로 확인해 보니 해당 파일은 UPX로 실행 압축되어 있다. upx를 이용하여 압축을 해제하여 OEP를 확인 하면 될 것 같다. OEP는 01012475 이다.
WinDbg 명령어 모음
WinDbg 명령어 WinDbg 에는 3 종류의 명령어가 있다. 일반 명령 : 일반적으로 사용하는 디버깅에 관련된 명령어 들이다. 브레이크 설정(bp), 타겟 제어(p,g) 등등메타 명령 : 디버거에 관련된 명령이다. 명령어 앞에 . 이 붙는다. 디버깅 심벌 경로 설정 (.sympath ), 모듈 심벌 로드 (.reload ) 등등확장 명령 : 외부 dll 로 제작된 명령이다(일종의 플러그인 ). 명령어 앞에 ! 이 붙는다. 예외상황분석( !analyze –v ) , 프로세스 구조체 보기 ( !peb ) 등등 구 분명 령 어설 명예 제도움말 보기.hh도움말을 연다..hh .reload // .reload 명령어에 관한 도움말을 열어본다 경로 설정.sympath디버깅 심벌 위치 디렉토리 설정.sympath..
'xterm-256color': unknown terminal type. 에러 해결하기.
리눅스 환경을 VMware나 Parallels등의 가상머신에 올리고 터미널을 통해 ssh나 telnet을 사용하여 접속 할 때, 다음과 같은 에러 메시지가 뜰 때가 있습니다. 'xterm-256color': unknown terminal type. 해결 방법은 간단하다. 해당 터미널 타입을 환경변수에 넣어주면 된다. 다음 명령어를 입력하여 주면 된다. export TERM=xterm 해당 환경변수는 재부팅 시 초기화 된다. 따라서 지속적으로 적용하고 싶으면 다음과 같은 과정을 따라야 한다. /etc/profile.d/ 디렉토리 안에 .sh 파일을 만든다. 필자는 eunice.sh 로 만들었다. 만든 파일(.sh)을 vi로 열어 "export TERM=xterm"을 적고 저장한다. 그리고 나서 만든 파일(..
Windows Jupyter Notebook 설치하기
윈도우에 Jupyter Notebook 설치하기 Jupyter Notebook은 IPython Notebook 버전 4 이상부터 새로이 불리는 이름이며, 코드를 비롯해 수식, 코멘트 등을 꾸미기 할 수 있고 코드를 수행한 결과를 인라인으로 보여줄 수 있게 해주는 웹 어플리케이션이다.일반적으로 데이터분석이나 과학용 프로그램일을 할 때 Jupyter Notebook이 매우 유용하게 활용됩니다. 윈도우 환경에서 Jupyter Notebook 설치 및 환경 설정윈도우10, Python 3.6.5 기준입니다. 윈도우 커맨드창을 열고 pip를 이용해 Jupyter Notebook을 설치합니다. > pip install jupyter 위와 같은 에러가 뜨는 경우는 pip 버전을 업그레이드 해야 되기 때문이다. 다음 ..
[CodeEngn]Basic RCE_Level 07 문제풀이
Level 06에 이어서 Level 07을 풀어보겠습니다. 실행해 보니 위와 같은 메시지가 출력됩니다. C드라이브의 이름이 "CodeEngn"일 경우 시리얼이 생성된 다는 것을 보니.. 프로그램 내부에서 C드라이브의 이름 값을 가져오는 함수가 있을 것 같네요. 그리고 Serial을 넣는 프로그램이지만, 문제 자체에서 CodeEngn이 어떤것으로 변경되는지 찾는 문제 이기에 Serial값을 찾는 것 보다는, CodeEngn이 어떻게 변경되는지 초점을 두어 분석하면 될 것 같습니다. 올리디버거에서 코드부분에 우클릭하여 "All intermodular calls"를 클릭하면 프로그램에서 불러오는 함수들의 목록을 볼 수 있습니다. 예상 했던 것과 같이, 드라이브의 정보를 받아오는 함수가 존재합니다. 해당 부분에..