본문 바로가기

분류 전체보기

[Python] 관리자 권한 상승 요청 코드 윈도우에서 UAC 설정이 되어 있을 때, 권한 상승을 요청하기 위한 코드를 stackoverflow.com 사이트에서 발견...까먹을 수 있으니 기록~~ [그림. 1] 권한 상승 요청 화면 사이트에서 발견한 코드는 아래와 같다. import os import sys import win32com.shell.shell as shell ASADMIN = 'asadmin' if sys.argv[-1] != ASADMIN: script = os.path.abspath(sys.argv[0]) params = ' '.join([script] + sys.argv[1:] + [ASADMIN]) shell.ShellExecuteEx(lpVerb='runas', lpFile=sys.executable, lpParameter.. 더보기
[Python] 파이썬 x86/x64 동시 설치 및 Pyinstaller 설치 기존에 Python 2.7 x86 버전과 py2exe x86 버전으로 exe로의 빌드를 했었는데, 이번에 윈도우의 x64쪽의 시스템 폴더에 접근 할 일이 생겨서 이래저래 알아보다가 윈도우의 redirection 앞에 gg를 치고 결국 x64 파이썬을 사용하기로 맘을 먹은 일이 이번에 결정... 코드상으로 x86이 x64쪽 경로를 건드리는 방법이 존재하지 않을까?란 생각을 하다가 결국 x64방식을 사용하는 쪽으로 선회..x86 기반으로 만들어진 코드에서 x64 쪽 시스템에 접근하는 방법이 존재하려나? -_- 그런 게 있는지는 모르겠다.(상상은 할 수 있는 요소이니 테클하는 사람들이 없었음 싶다. -_-) 그러나 아직까지는 x86을 버릴 순 없고, 아예 둘 다 같이 설치해서 쓸 수는 없을까? 라고 고민하다가.. 더보기
[Reversing.kr] - ImagePrc 문제 풀이 11, 12월에 잠시 딴 짓을 하다가 블로그를 너무 신경을 못 써서 이번엔 5번째 문제 풀자마자바로 6번째 문제를 잡아봤다. 자~ 그럼 6번째 문제 풀이 시작.. 결과부터 말하자면 C++의 API 함수 중에서 그래픽컬 한 부분은 전혀 모르기 때문에 -_-; 꼼수를 조금 도입했다. 쩝!~~ [그림. 1] ImagePrc 실행 화면 기존 것들처럼 또 뭔가 Check 하는 녀석인 것 같은데...뭘 말하는지 설명 파일도 없고, 그냥 무작정 Check 를 눌러봤더니... [그림. 2] Wrong 메시지 출력 또 뭔가 틀렸다는 메시지를 출력해준다. 이전에는 뭔가 값을 입력하고 비교 체크를 했는데 이번엔 뭔가 적는 것도 없고...이게 뭔가 싶기도 했다. 뭐! 어쩌라고???바보같이 샘플 파일의 이름은 완전히 배제한 체.. 더보기
[Reversing.kr] - Replace 문제 풀이 5번째 문제 풀이 시작... (블로그를 너무 간만에 하게 됐다. 흠!~~) [그림. 1] Replace 실행 모습 예제 파일의 실행 모습은 뭐 기존의 것과 별 차이는 보이지 않는다. [그림. 2] Access violation error 빈 칸에 숫자 밖에 입력이 안 되는 형식이므로 난 숫자 "12345"를 입력하고 Check를 눌렀는데, 누르는 순간에Access violation error 가 똿~~ windbg를 기본 디버거로 잡아놨었기 때문에 애러 화면에 대한 정보를 볼 수 있었다. 0x40466F 주소의 명령문에서 애러가 났는데 확인해 보면 eax의 주소에 byte 단위의 0x90 값을 MOV 시키려고 했다가 뻗어버린 것을 알 수 있다.해당 명령이 실행될 때 EAX에는 0x60163604라는 값이.. 더보기
[Reversing.kr] - Music_Player 문제 풀이 네 번째 문제 풀이 시작. 이번 예제 파일에도 ReadMe.txt 파일이 존재한다. 읽어보자. This MP3 Player is limited to 1 minutes.You have to play more than one minute. There are exist several 1-minute-check-routine.After bypassing every check routine, you will see the perfect flag. MP3 Player가 1분 밖에 재생을 못한다고 하는데, 그 1분을 체크하는 몇 몇 루틴을 모두 재껴버리면Flag 값을 볼 수 있다고 한다. 나머지 첨부된 파일들을 보면 msvbvm60.dll, Music_Player.exe 가 존재하는데, msvbvm60.dll은 Vi.. 더보기
[Reversing.kr] - Easy UnpackMe 문제 풀이 세 번째 문제 풀이를 시작해보자.제목으로 봐서는 packing 이 된 파일을 unpack 시켜야 하는 것 같은데, 같이 첨부된 ReadMe.txt 파일을 열어보면은... ReversingKr UnpackMe Find the OEPex) 00401000 이렇게 나온다. 즉, 언팩을 한 다음에 Original Entry Point의 주소를 찾아내라는 소리이다. [그림. 1] Entry Point 언팩이 된 파일은 일반 PE 구조와는 좀 다르다.PEViewer 로 확인해보면 Address of Entry Point 가 0x0000A04B라는 것을 알 수 있다.(이 파일도 ImageBase가 0x00400000 부터 시작일테니, 로드가 된다면 0x0040A04B 주소가 Entry Point로 나온다는 얘기..).. 더보기
Assembly 명령어 정리 [그림. 1] 어셈 명령어 디버거로 파일을 까보면 맞딱들이게 되는 어셈블리 명렁어들..처음 보는 사람들은 당연히 "이게 도대체 뭔 소리래~" 라고 할 것이다.나 역시도 그랬고, 지금도 햇갈리는 것 많고, 명령어만 안다고 되는 것도 아니고 인텔에서 제공되는 메뉴얼도 볼 줄 알아야 하는데, 하도 안 봐서 그건 까먹어버렸네 -_-; 옛날에 어셈블리 명령어를 이거 저거 찾아보며 정리하고 엑셀 파일로 갖고 있다가 여기에 그냥 한 번 올려본다. 다른 블로그의 글들을 참조해보고 실전에서도 해석에 도움도 되고 했었지만 사용하다 보면 잘못된 해석이거나 부족한 부분이 느껴져서 내가 나름대로 정리도 해본거라 올려본다.뭐 나도 정리한 것에 오류가 있을 수 있으니 만약에 누군가가 보게 된다면 직접들 사용해보고 판단해야 할 것이.. 더보기
[Reversing.kr] - Easy Keygen 문제 풀이 두 번째 포스팅 시작..분석할 파일을 디버깅 하기 전에 같이 따라온 txt 파일을 보면 다음과 같은 메시지가 적혀져 있다. ReversingKr KeygenMeFind the Name when the Serial is 5B134977135E7D13 시리얼 값이 5B134977135E7D13 일 때의 이름을 찾아내라는 건데, 한 번 찾아보자. [그림. 1] 실행 화면 이번 예제는 Win32 Console 프로그램군. 적으라는 Name 부분에는 이번에도 어김없이개인로 적어본다. ㅎ보자~~ 이름을 적고 시리얼 키를 텍스트 파일에서 알려준데로 해봤지만 냉정하게도 "wrong" 이라고 결과를 출력해주고 있다.뭐 시리얼 키는 이미 지정된 것이 틀렸을리는 없겠고 저 키에 해당되는 이름이 별도로 있을 것이라 추정할 수.. 더보기
[Reversing.kr] - Easy CrackMe 문제 풀이 본격적인 글?을 처음으로 작성...이미 아주 옛날부터 이쪽에 관심있는 사람들이라면 다 했던 것을 난 이제서야 해본다. 뭐! 목적은 내가 한 것을 남겨보고자 하는 것과 이렇게 남기면서 내 머릿속에 한 번 더 각인시키고자 하는 것이 목적인 만큼활발히는 아닐지라도 애정을 갖고 한 번 진행해보는 것도 나쁘지 않을 것 같다. 지인의 추천으로 알게 된 Reversing.kr 사이트에서 제공된 첫 번째 예제 문제이다.자~~ GoGo!~ [그림. 1] Easy Crack Me 실행 화면 처음 실행 화면은 [그림. 1]과 같다.심플하게 다이얼로그 박스 하나만 있는데 뭔가 입력하고 확인 버튼을 누르면 어떤 반응이 있겠지.(쌩뚱맞게 이게 만약 악성코드 였다면 VM에서 돌렸을텐데... 라는 생각을 했지만, 뭐 믿고 그냥 리얼.. 더보기