House of Lore | Small bin Attack

Reading time: 2 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기

기본 정보

코드

목표

  • 작은 빈에 가짜 작은 청크를 삽입하여 할당할 수 있도록 합니다.
    추가된 작은 청크는 공격자가 생성한 가짜 청크이며, 임의의 위치에 있는 가짜 청크가 아님을 주의하세요.

요구 사항

  • 2개의 가짜 청크를 생성하고 이를 서로 연결하고 작은 빈의 정품 청크와 연결합니다:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (다른 취약점을 통해 해제된 작은 빈 청크의 포인터를 수정해야 합니다)
  • legit.bk -> fake0

그럼 fake0을 할당할 수 있게 됩니다.

공격

  • 작은 청크(legit)가 할당되고, 그 다음에 다른 청크가 할당되어 상단 청크와 통합되지 않도록 합니다. 그런 다음, legit가 해제되어(정렬되지 않은 빈 목록으로 이동) 더 큰 청크가 할당되며, legit가 작은 빈으로 이동합니다.
  • 공격자는 몇 개의 가짜 작은 청크를 생성하고, 정상성 검사를 우회하기 위해 필요한 연결을 만듭니다:
  • fake0.bk -> fake1
  • fake1.fd -> fake0
  • fake0.fd -> legit (다른 취약점을 통해 해제된 작은 빈 청크의 포인터를 수정해야 합니다)
  • legit.bk -> fake0
  • 작은 청크가 할당되어 legit를 얻고, **fake0**이 작은 빈의 상단 목록으로 들어갑니다.
  • 또 다른 작은 청크가 할당되어 fake0가 청크로 할당되어 내부의 포인터를 읽거나 쓸 수 있게 됩니다.

참조

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기