rosieblue
article thumbnail
[Heap] Exploitation : House of Spirit
Linux Exploitation/Heap 2023. 10. 3. 23:06

House of SpiritHouse of Spirit은 free함수의 인자를 우리가 원하는 값으로 보내서, 이 값에다가 재할당해서 AAW이나 AAR등을 할 수 있는 기법이다. 해당 기법으로 원하는 위치(Heap 영역이 아니어도 상관 x! 스택이나 다른 곳도 가능~~)에 청크를 할당하여 임의의 주소의 값을 알거나 덮을 수 있다! 예) free(main의 return address) - 이렇게 해서 return address overwrite 하기위 예시와 같은 공격을 하기 위해서는 당연히 main의 return address를 알아야할 것이고 그렇다면 스택의 주소를 구하는 과정 또한 선행되어야겠다! 예시 1// gcc -o spirit1 spirit1.c -no-pie #include #include i..

보호되어 있는 글입니다. 내용을 보시려면 비밀번호를 입력해주세요.
article thumbnail
[Heap] Exploitation : House of Force
Linux Exploitation/Heap 2023. 9. 30. 22:49

House of Force 힙을 안한지 너무 오래되어서 오랜만에 힙 공부를 하는겸 House of Force 기법에 대해 분석하고자 한다. House of Force 기법은 Top Chunk의 사이즈를 조작해서 원하는 위치에 청크를 할당 할 수 있게 하는 공격 방법이다. House of Force를 보기 전에 Top chunk에 대해 다시 복습해보자. -> [Heap] Background : Chunk [Heap] Background : Chunk Heap 시리즈 [Heap] Background : Memory Allocator [Heap] Background : Chunk [Heap] Background : Bin (Fastbin, Unsorted bin, Small bin, Large bin) [He..

article thumbnail
[드림핵(Dreamhack)] pathtraversal
🖥️ Computer Science/Web 2023. 9. 28. 18:01

#!/usr/bin/python3 from flask import Flask, request, render_template, abort from functools import wraps import requests import os, json users = { '0': { 'userid': 'guest', 'level': 1, 'password': 'guest' }, '1': { 'userid': 'admin', 'level': 9999, 'password': 'admin' } } def internal_api(func): @wraps(func) def decorated_view(*args, **kwargs): if request.remote_addr == '127.0.0.1': return func(*..

article thumbnail
[드림핵(Dreamhack) random-test
🔐 Security/Web 2023. 9. 26. 19:07

이런식으로 사물함이랑 자물쇠 비번을 맞춰야하는 문제이다 사물함 번호는 알파벳 소문자 혹은 숫자를 포함하는 4자리 랜덤 문자열이고, 비밀번호는 100 이상 200 이하의 랜덤 정수라고 한다 #!/usr/bin/python3 from flask import Flask, request, render_template import string import random app = Flask(__name__) try: FLAG = open("./flag.txt", "r").read() # flag is here! except: FLAG = "[**FLAG**]" rand_str = "" alphanumeric = string.ascii_lowercase + string.digits #소문자 or 숫자 for i in..

article thumbnail
[드림핵(Dreamhack)] file-download-1
🔐 Security/Web 2023. 9. 26. 17:34

스크립트 파일을 입력을 했더니 실행이 되지 않았다. 이와 같은 태그는 우회하고 있나보다 이런식으로 path traversal을 시도해보았는데 안되었다 코드가 어떻게 이루어져있는지 이제 뜯어보도록 하겠다 #!/usr/bin/env python3 import os import shutil from flask import Flask, request, render_template, redirect from flag import FLAG APP = Flask(__name__) UPLOAD_DIR = 'uploads' @APP.route('/') def index(): files = os.listdir(UPLOAD_DIR) return render_template('index.html', files=files) @..