본문 바로가기

감사합니다

(116)
Dreamhack web PATCH-1 #!/usr/bin/python3 from flask import Flask, request, render_template_string, g, session, jsonify import sqlite3 import os, hashlib ​ app = Flask(__name__) app.secret_key = os.urandom(32) ​ def get_db(): db = getattr(g, '_database', None) if db is None: db = g._database = sqlite3.connect(os.environ['DATABASE']) db.row_factory = sqlite3.Row return db ​ def query_db(query, args=(), one=False): cur ..
User After free 취약점 User After free 취약점 : 쉽게 말해서 이전에 메모리를 활용한 포인터가 메모리 해제 후 적절한 초기화를 하지 않아 발생하는 취약점이다. ​ 예제 코드 #include #include #include s ​ truct NameTag { char team_name[16]; char name[32]; void (*func)();}; ​ struct Secret { char secret_name[16]; char secret_info[32]; long code;}; ​ int main() { int idx; struct NameTag *nametag; struct Secret *secret; ​ secret = malloc(sizeof(struct Secret)); ​ strcpy(secret->s..
영국 유학 준비 요새 영국 유학을 한창 준비 중이다. 시작한 지 얼마 안 되서 그런지 정말 챙길 서류가 많다. 여권부터 해서, 학교 성적이랑, 졸업증명서까지.... 기타 등등 원래 엄청 귀찮은 걸 싫어하는 성격이라 중요하다고 생각하는 거 외에는 잘 관심을 안 주는 성격인데 이건 사안이 사안인 만큼 하나하나씩 내가 스스로 준비할 수 밖에 없다. 귀찮은 건 사실이지만, 오히려 이렇게 내가 준비할 수 있다는 것에 조금이나마 감사한 마음도 있다. 인생은 정말 알 수가 없다. Life is like a box of chocolates. ​ 몇 년 전부터 유학을 얘기했지만 솔직히 그때는 구호에 가까웠다. 현실적으로 와닿지 않기에 했던 얘기일 수도 있다. 그런데 지금 나는 유학을 하나하나 준비하고 있다. ​ 신께서 도우시면 소기의 ..
디지털 기본 소득 *이 글은 매우 주관적인 글로써 공평해야 하는 정책과 아무런 상관이 없다는 것을 미리 밝힙니다. 그러나 그 주관성은 의도된 주관성으로써 객관적일 때 밝히지 못하는 진실을 드러내는 역할을 하고 있습니다. ​ 기본 소득을 줄 때 모든 국민을 대상으로 하는 게 아니라 컴퓨터 혹은 프로그래밍을 전공하는 학생이나 그 직종에서 일하고 있는 사람들에게만 준다면 어떨까요? ​ 누군가는 분명히 "그건 불공평해!"라고 말할 것입니다. 너무 맞는 얘기입니다. 근데 그거 아세요? 디지털 뉴딜 정책은 '이미' 정부가 열심히 엄청난 양의 세금을 부어서 실행하고 있는 정책이라는 사실 !! 그리고 그것도 아세요? 정작 컴퓨터 과학이나 프로그래밍을 전공으로 하고 있거나 그 직종에서 일하는 사람들은 그 엄청난 양의 세금을 전혀 실감하고..
영화 '메멘토'를 보고 예전 중학교 때 친구의 강력 추천을 받고나서 본 영화입니다. 지금도 저는 크리스토퍼 놀란 감독의 작품들을 정말 애정하는데요.. 솔직히 이 영화를 처음 봤을 때 마음의 준비를 하나도 안 하고 봐서 도대체 무슨 내용인건지 감이 잡히질 않았습니다. 중간 부분에는 아예 흐름을 놓쳐버렸구요. 그러다가 런타임기준 약 1시간 40분 되는 결말 부분에서야 '아 대충 이런 상황이구나' 정도만 감을 잡고 이 영화를 흘려보냈습니다. ​ 오늘 지난 한달 동안 열심히 공부했고 좋은 퍼포먼스와 성장을 보여주었기 때문에 (스스로) 특별 휴가를 받아 이 영화를 다시 볼 수 있는 기회를 얻게 되었습니다. ​ 결론만 말씀드리자면, 정말 대 만족 !! 일단 이 영화를 이해하기 위해 가장 좋은 영상 하나만 추천드리자면 https://www..
dreamhack rev-basic-9 흠냐 흠냐 주어진 문제의 함수를 분석해보면 간단하다 . 일단 입력한 값으로 xor연산 그 다음 바이트 가져와서 rax에 더한 후 eax로 옮기고 입력값에 대해서 ror 연산 5 수행 수행 조금 더 정제된 형식으로 표현하면 이전 바이트 값을 가져온 다음 이를 해당 위치의 key 배열 문자와 xor연산 나오는 값을 index로 하는 mem 값을 가져오고 이 값을 buf의 다음 바이트와 더한다 오른쪽으로 5번 rotation 하는 연산을 반복적으로 수행하고 있댜 ​ 수식적으로 표현하면 이렇게 된다 temp = rotl(buf[i * 8 + (8 - k) % 8], 5); temp -= mem[(unsigned char)(buf[i * 8 + 7 - k] ^ keyArray[7 - k])]; ​ buf[i * ..
드림핵 dreamschool ~~파도 ~~~ 별 지난 번 설명이 너무 불충분 했던 거 같아서 대략적으로 write up 을 잡아보자. 해당 워게임은 dreamhack dreamschool이다 일단 ssti취약점이 있다 !! 쿠궁 ssti 취약점을 어떻게 적용할 수 있을지는 이 글을 읽으시는 분이 직접 생각해보셔도 좋겠다. jinja2의 render_template_string 함수를 사용해서 ssti취약점 가능성이 있다는 것을 추리할 수 있다 어쨋든 그렇게 pub key를 구할 수 있게 되는데 이는 ​ import jwt import datetime ​ pub_key = b'-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6eagXQyAgUyVHWJ/VvnUmB2W5\n0a85CI..
오늘 아침에 있었던 황당한 일(feat.학생증) 오늘 아침 그냥 저냥 황당한 일이 있었다. 생각난 김에 블로그에 써보려고 한다. 오늘 학교에 가려고 차를 기다리고 있었다. 그런데 왠 이상한 캐리어를 끌고 다니던 아저씨가 대뜸 나한테 오더니 "너 여기 살아?" 이런 식으로 시비를 걸기 시작했다. 나는 이 아저씨가 나랑 누구를 착각한 건가 싶어서 "죄송한데 저랑 누구랑 착각한 거 같은데요" 라고 했더니 그 아저씨는 아니라고 우기기 시작했다. 설마 피지컬도 내가 훨씬 좋은데 대낮에 왠 이상한 아저씨가 내 삥을 뜯으려고 온 건가 싶어서 황당해가지고 나는 확실히 오해한 거 같다고 여러 번 말했다. 근데 그 아저씨는 나랑 비슷하게 생긴 잼민이한테 장난이라도 당한 건지 계속 시비 톤으로 딜을 넣으려 시도하고 있었다. 나는 사실 아직도 편의점에서 술 살 때 신분증을..

반응형