파이썬 (2.7)에서 프로그램을 만들고 리버스 엔지니어링에서 보호하려고합니다. 나는 VM을 인식 코드를 암호화, cx_freeze (공급 기본 보안 - 난독 및 안티 디버깅) 나는 그런 난처 포장으로 더 보호를 추가 할 수있는 방법 , 안티 디버깅을 사용하여 컴파일. 페이로드로 암호화하고 런타임에 암호를 해독하는 방법을 생각했지만 어떻게해야 할 지 전혀 모
펌웨어 파일에서 추출 (matryoshka)을 수행하는 프로그램을 파이썬으로 작성하려고합니다. 기본적으로, 나는 "binwalk -Me binary_file"을 파이썬에서 구현하고 싶다. 서브 프로세스 호출 대신에 ap 기능을 사용한다. 불행히도 binwalk API에 대한 문서는 드물다. 아래 코드는 내가 지금 어떻게하고 있는지 보여주고있다. from s
GASM에서 다음 구문이 수행하는 작업은 무엇입니까? *%gs:0x10
나는 알고 call *%gs:0x10 호출 __kernel_vsyscall 것입니다,하지만 난 할 *%register:value 모르겠어요. 그건 NASM 동등한은 다음과 같습니다 call DWORD PTR gs:0x10
내 프로그램을 사용하면 사용자가 암호를 입력 할 수 있습니다. 암호는 sha1 및 상수 소금으로 즉시 해시되고 메모리에 저장됩니다. 공격자가 내 응용 프로그램이 실행되는 컴퓨터에 물리적으로 액세스 할 수 있고 마지막 사용자의 암호를 검색하려고한다고 가정합니다. 그 리버스 엔지니어링 및 일부 메모리 시계 마법 메모리에 해시를 찾기위한 그것은 가능겠습니까? 내
이 ASM 코드가 있는데이 코드는 주로 매크로를 설명하는 데 도움이 필요합니다. 나는 ASM to C 디스 어셈블리 툴을 시도했지만, 여러 파일을 처리 할 수 없었고 나머지는 내 예산보다 훨씬 컸다. macro.inc : pokazvane_cifra_dl macro
push ax
push dx
ad dl,30h
mov ah, 02h
in
나는 학생들을 위해 버퍼 오버플로 운동을 c에 작성하려고한다. 일반적으로 스택 프레임은 함수 매개 변수, 반환 주소, 기본 포인터 및 로컬 변수로 구성됩니다. 하지만 때로는 추가 포인터가 기본 포인터와 함께 저장된다는 것을 발견했습니다. 수업에서 캐일 (calee)에 저장된 레지스터는 사용하기 전에 저장해야한다는 것을 기억합니다. 그러나 C 코드를 컴파일하
학생들에게 버퍼 오버 플로우 연습을 개발 중입니다. 이런 맥락에서 프로그램의 반환 주소로 임의 바이트를 입력해야하는 경우가 종종 있습니다. 나는 점점 더 복잡한 운동을 개발하는 동안 다음 python -c 'print "A"*8+"\x08\x04\88\72"' | ./program
처럼 공식화 할 수있는 솔루션을 찾아 낼 때까지, 어려움을 gdb를 #i
스택이 더 작은 addesses로 성장하기 때문에 gdb를 사용하여 검토하는 것이 어렵습니다. 나는 (32 비트 시스템에서 다음 64 개 단어,이 경우) 스택에 따라 (스택에) 0xffffd0e8에 위치한 값과 값을보고 싶다면 지금까지 나는 x/64xw 0xffffd0e8-64*4
를 사용합니다. 더 쉬운 방법이 있습니까? 또한 스택의 컨텐츠에 해당 변