형식 문자열 취약점을 악용하는 방법

소개

이전 기사에서는 인쇄 기능,형식 문자열 및 형식 문자열 취약점에 대해 논의했습니다. 이 문서에서는 형식 문자열 취약점을 악용할 수 있는 방법에 대한 개요를 제공합니다. 이 기사에서는 메모리에서 비밀을 누설하는 간단한 문제를 해결하는 것으로 시작합니다. 다음 글에서,우리는 또 다른 예를 논의 할 것이다,여기서 우리는 체인 형식 문자열 취약점 및 버퍼 오버플로 취약점은 더 나은 영향을 만들 수 있습니다.

형식 문자열 취약점을 어떻게 악용할 수 있습니까?

이전 문서에서 언급 한 바와 같이,다음은 형식 문자열 취약점을 사용하여 가능한 공격의 일부입니다.

  • 누수 비밀
  • 서비스 거부
  • 누수 메모리 주소
  • 메모리 주소 덮어 쓰기

이 기사에서는 처음 두 항목에 대해 설명합니다.

스택에서 비밀 유출

다음은 메모리에서 데이터를 읽을 수 있도록 간단한 형식 문자열 취약점을 악용하는 접근 방식을 이해하는 데 사용할 취약한 프로그램입니다.

#은<을 포함합니다.이 문제를 해결하기 위해 몇 가지 방법이 있습니다.이 문제를 해결하기 위해 몇 가지 방법이 있습니다.);

}

이 프로그램은 사용자 입력을 받아 인쇄하기 때문에 형식 문자열 취약점에 취약합니다. 따라서 프로그램을 취약하게 만듭니다.

이 문제를 해결하기 위해 어셈블러 코드를 덤프하는 데 도움이되는 몇 가지 방법이 있습니다.이 문제를 해결하기 위해 어셈블러 코드를 덤프하는 데 도움이되는 몇 가지 방법이 있습니다.198>

0000000000040113<+5>000000000040113<+8>: sub rsp,0x20

0x0000000000401142 <+12>: mov DWORD PTR ,edi

0x0000000000401145 <+15>: mov QWORD PTR ,rsi

0x0000000000401149 <+19>: lea rax, # 0x402004

0x0000000000401150 <+26>: mov QWORD PTR ,rax

0x0000000000401154 <+30>: mov rax,QWORD (Read more…)

답글 남기기

이메일 주소는 공개되지 않습니다.