전체 글

하고 싶은게 많은 사람입니다. 게임 개발도 하고 싶고 보안 공부도 하고싶어요 앱개발도...
baby RSA rsa 기초 문제이다. 우리는 n을 알고 있고 암호화 방식이 한글자씩 pow(char,e,n) 으로 진행되기 때문에 브루트 포싱으로 손쉽게 구할 수 있다. Maze 이름 그대로 미로 찾기 문제이다. int __cdecl main(int argc, const char **argv, const char **envp) { int v4; // [esp+0h] [ebp-8h] setvbuf(stdout, 0, 2, 0); setvbuf(stdin, 0, 2, 0); v4 = 1; while ( v4 > 0 && v4 % 7 ) { if ( v4 & 7 ) maze1(&v4); else maze2(&v4); sleep(1u); } printf("\n ===========================..
흠.. 한동안 다른 것을 하기도 했었고 해서, 이번에는 조금 어려운 문제를 풀어보려고 한다. bounty program alpha라는 이름으로 hitcon ctf final 2019에 출제되었던 문제이다. 사실 solver 수를 보고 포기할까 했는데 strtok 취약점을 이용한 문제같아서 도전했다. 이 문제는 wrapper와 bounty_program으로 이루어져있다. 먼저 wrapper을 보면 seccomp이 걸려있다. 음.. 신기하게도 execveat 도 사용가능하고, sigreturn도 사용이 가능하다. execveat이 가능하면 그냥 쉘을 딸 수 있다. int __cdecl main(int argc, const char **argv, const char **envp) { char s; // [rs..
본 게시글은 free함수의 전체적인 루틴을 설명합니다. 자세한 코드분석은 나중에 따로 할 예정입니다. __libc_free free함수가 실행되면 먼저 __libc_free함수가 호출되어 __free_hook을 검사하고 값이 존재할 경우 jump 한다. 그리고 인자가 null일시에는 바로 return 을 하여 아무런 동작이 실행되지 않는다. 이후 아래 루틴을 따른다. mmap으로 할당한 청크 해제 libc_free에는 다음과 같은 루틴이 있다. if (chunk_is_mmapped (p)) /* release mmapped memory. */ { /* See if the dynamic brk/mmap threshold needs adjusting. Dumped fake mmapped chunks do n..
일단 소스코드는 다음과 같다. javascript 함수로 정규표현식을 사용해서 admin, img, iframe, onload, onerror, write,concat,join,char 등을 대소문자 구분없이 검증하고 있다. Hi admin! Alert 'admin'😕; input field is below 그래서 내가 생각한 풀이 방법은 이렇다. javascript는 페이지를 로딩할 때 같이 로드되는 client side 언어이다. 그런데 개발자들은 항상 조심해야 한다. javascript는 끌 수 있기때문에 server side에서도 검증을 같이 해주어야 하고 에러로그를 남겨야 한다. 그런데 이 문제의 경우에는 그런 것이 없었다. 그래서 먼저 자바스크립트를 끄고 페이지를 로딩한다. 페이지 로딩이 끝난..
먼저 문제에 대한 간략한 설명이다. information_schema를 이용해서 푸는 문제라고 들었기에 이를 중심으로 보았다. 로그인을 하고나서 게시판에 글을 쓸 수 있다. 게시판에는 xss 공격이 아주 잘 된다. 삽질을 하면서 신기한 것을 알아냈는데, 일단 id 중복체크를 하지 않는다. 동일한 아이디로 로그인이 된다. 그리고 addslashes 함수가 이용되었는지, id 앞에 \ 가 붙어서 처리된다. 그러나 회원가입을 하고 바로 로그인이 되는 루틴에서는 위와같은 처리가 되지만, 그냥 아이디 비밀번호를 치고 들어가면 addslashes 가 사라져있다. 유저도 다른 유저로 인식이 되어버린다. 일단 이를 이용해서 무엇인가 할 수 있을 것 같았다. 그래서 id를 ' or 1=1 # 으로 하고 로그인 해줬더니 ..
본 게시물은 malloc 함수에 대한 간략한 설명을 하는 곳입니다. 기초적인 heap 지식이 있다는 가정하에 작성되었습니다. (자세한 주석과 코드 분석글은 별도로 올라갈 예정입니다) 먼저 malloc 의 작동과정을 알기 이전에 arena에 대해서 간략하게 정리하겠다. Arena 우리는 main arena에 대해서는 자주 들어보았을 것 이다. arena는 heap영역을 관리하는 영역이다(fastbin, smallbin, largebin, topchunk 등등..). 멀티스레드 환경에서 heap을 관리하기 편하기 위해 만들어졌다(동기화 문제등). 그러나 스레드당 arena 가 하나씩 할당되는 것은 아니고 cpu의 물리코어 개수에 비례해서 최대 수가 정해져 있으며, 최대로 할당가능한 arena수가 넘어서게 되..
1. " " 를 해주면 된다. " 때문에 스크립트문이 동작하게 된다. 2. 비슷하지만 onclick=alert() 으로 해결해주었다. 3. 가 &lt, &gt로 변환된다. 옆에있는 choose country form을 input으로 바꾸면 해결이 가능하다. 4. hidden 속성으로 되어잇는 요소를 보이게 해주고 ">
페이지의 소스코드이다. Playlist Playlist "All the songs on my playlist were legally downloaded" title name date time will not go home without youmaroon52008/02/26351i love youtaeyeon2010/12/13322what makes you beautifulone direction2011/11/29318why so serious?shinee2013/04/29340you will never knowariana grande2014/09/02334text me merry christmasstraight no chaser2014/11/17241when you hold me tightyael may..
OSOR2
Osori Development Studio