본문 바로가기
728x90
반응형

전체 글395

멀티 아키텍처 실행파일 12345#includeint main(){ puts("!!!"); return 0;}cs 2016. 11. 13.
[ShellCode] setreuid, getuid, execve (39 bytes) 보호되어 있는 글 입니다. 2016. 11. 9.
리눅스 환경 변수 등록하기 조또 별거 아닌데 가끔 생각나지 않을 때가 있어서 답답하다. 그래서 아에 그냥 글로 정리함. export sc=`python -c 'print "\x90"*200'` 환경 변수 이름, =, 내용 사이에 공백이 있으면 안 된다. 그리고 내가 등록한 환경 변수의 주소를 구하는 방법은 아래와 같다. 1234#includeint main(int argc, char *argv[]){ printf("%x\n",getenv(argv[1]));}Colored by Color Scriptercs 2016. 11. 9.
[ShellCode] Linux/x86 file reader (65 bytes + pathname) 보호되어 있는 글 입니다. 2016. 11. 9.
Visual Studio에서 재배포 패키지 포함하여 컴파일 하는 방법 프로젝트 속성 -> 구성 속성 -> C/C++ -> 코드 생성 -> 런타임 라이브러리 의 값을 디버그 모드일 때, 다중 스레드(/MTD)릴리즈 모드일 때, 다중 스레드(/MT) 로 설정하면 된다. 용량이 거의 열배 가량 증가함. 2016. 11. 9.
printf 덮어 쓰기 게임 등에서 패치할 때 보면 몇 퍼센트 남았다고 나오는 경우가 있는데, 이를 콘솔에서 구현하고자 할 때 대부분 생각하는건 system("cls");printf("%d 남았음", now); 와 같은 코드이다. 근데 system 함수를 쓰지 않고도 간편하게 출력 결과를 덮어쓸 수 있다. 전에 페이스북 페이지 '코무합니다만' 이였나? 거기에 질문으로 올라와서 한 번 본 기억이 있는데 까먹어서 검색 좀 했다. printf("[-] Send Artifact... [%d/%d]\r", i * PGSIZE, dwFileSize); \r을 쓰면 된다! \r 을 기억하자. \r 출처 : http://stackoverflow.com/questions/15192441/update-printf-value-on-same-lin.. 2016. 11. 9.
how to install ModSecurity 보호되어 있는 글 입니다. 2016. 11. 6.
AndroidManifest.xml의 android:debuggable 수정하기 안드로이드 앱을 분석하다보면 가끔 애플리케이션의 debuggable 속성을 true로 맞춰주어야 할 때가 있다. 앱 단위로 debuggable 속성을 true로 하는 방법은 번거롭지만 쉽다. 1. 앱 디컴파일 2. AndroidManifest.xml의 를 로 수정하고 리패키징 끝. 2016. 11. 2.
arm, powerpc, mips Cross Compile, Execute and Remote Debugging 1. gcc 설치 1 2 3 sudo apt-get install gcc-arm-linux-gnueabi sudo apt-get install gcc-powerpc-linux-gnu sudo apt-get install gcc-mips-linux-gnu cs 1 2 3 4 5 6 7 8 9 10 sudo apt-get install -y gcc-multilib-arm-linux-gnueabi sudo apt-get install -y gcc-multilib-arm-linux-gnueabihf sudo apt-get install -y gcc-multilib-mips-linux-gnu sudo apt-get install -y gcc-multilib-mips64-linux-gnuabi64 sudo apt-.. 2016. 10. 23.
JNINativeInterface JNIENV 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816.. 2016. 10. 15.
제 3회 SW보안경진대회 포스터 2016. 10. 13.
Code Injection from BlackEnergy BlackEnergy라는 악성코드를 분석하다가 코드 인젝션을 재미있게 하는 코드를 발견해서 정리해서 올려본다. 지금까지 분석해본 악성코드는 CreateProcess API 함수를 이용하여 suspend로 프로세스를 실행한 뒤에 보통 이미지 베이스에 MZ부터 쭉 인젝션 하고 ResumeThread API를 호출했었는데, 이 악성코드는 같은 방법으로 프로세스를 실행하지만 특정 주소에 코드를 인젝션 한 뒤에 쓰레드 컨텍스트를 수정하고 ResumeThread API 함수를 호출한다. 1. CreateProcess API 호출 6번째 인자(Creation_Flags)가 4(Create_Suspended)임을 알 수 있다. mssrv32.exe(악성코드)의 자식 프로세스(svchost.exe)가 생김. 2. Wri.. 2016. 10. 12.
728x90
반응형