Multipurpose Internet Mail ExtensionHTTP에서(원래는 메일전송시)단순 문자데이터 이외의 타입(미디어 파일)을 전송하기 위한 인코딩 방식(?), 그리고 그것을 표현하는 방법기능미디어 파일을 전송 가능한 아스키 형식으로 변환읽을 때 미디어 타
현재 위치한 폴더의 http설정을 바꿀수 있게 해준다./etc/httpd/conf.d 는 글로벌 설정 파일이다.이용 방식txt 확장자를 php로 인식하여 실행되게 만들기.htaccess 파일 내용 수정 후 업로드AddType application/x-httpd-php
웹 브라우저가 페이지에 접속하는 동안 유지된다.설정된 기간동안 유지되는 쿠키이다.이용자의 정보수집을 위해 사용된다.(사이트에 접속했을 때 쿠키를 수집하겠다는 안내문구가 뜨는 경우가 있는데, 이 때 수집되는 쿠기가 persistent cookie)쿠키 헤더를 확인했을 때
XML 문서를 다른 형식의 문서로 출력시키기 위해서 사용되는 언어. 다음 세 가지로 구성된다.XSLT : XSL Transformations를 의미하며, XML 문서를 다른 구조의 문서로 변환시키기 위한 언어입니다.XPath : XML 문서의 특정 요소나 속성에 접근하
데이터를 저장하고 전송하는데 사용되는 언어이며 1998년에 W3C 표준 권고안에 포함되었다.XML은 다음과 같은 특징을 가진다.태그를 임의로 설정가능보여주는 것이 아닌 오로지 전달, 저장 용도텍스트 데이터 형식으로, 유니코드 문자로만 이루어짐대소문자를 구분한다.HTML
자바스크립트는 클라이언트에서 동작하는 언어이기 때문에 소스코드를 숨기기 위한 난독화가 필요하다.https://4rgos.tistory.com/2간단히 몇가지 난독화 종류가 정리된 블로그 글이다.대부분 문자열 인코딩 방식이고, document.write로 코드를
데이터를 공통 ASCII영역의 문자로만 나타내기 위해 변환시키는 인코딩8비트로 표현되는 데이터를 3개씩 나열해서 6bit 로 쪼갠 뒤각각을 문자코드표에 맞춰 변환시킴6bit씩 안나눠지는 경우, 빈 bit를 0으로 채움a를 예로들자a의 base64인코딩 값은 YQ==왜
필요에 의해 사용한 문법만 정리하겠다.https://stackoverflow.com/questions/18668556/comparing-numbers-in-bash\-eq -ne -lt -le -gt -ge https://stackoverflow.co
개요 본 포스팅은 XXE(XML External Entities) 공격기법을 공부하기 위한 선행지식을 습득하기 위함이며, 그러므로 필요한 내용만을 담고있다. 정의 XML의 문법을 정의하기 위한 규격을 말한다. 이 규격을 설정하는 방법으로 DTD와 XML Schem
본 포스팅은 XPath Injection을 위한 선행지식을 습득하기 위함이다. 따라서 관련된 내용만을 정리하겠다.XPath는 XML에서 특정한 요소, 태그 등을 검색하기 위한 XML Path Language이며, 다음과 같은 특징을 갖는다.표현식을 이용해 검색한다.수학
군복무때 진행했던 웹 프론트 프로젝트를 github에 정리하기 위해, 풀스택 환경을 구축해야할 필요성이 생겼다.본 포스팅에서 전체 과정을 다시 한번 다룰 것이며, 범위는 nvm은 node.js를 관리하기 위한 도구이다.다음 명령어로 설치해주자.nvm을 이용하여 node
Error Base SQL Injection을 공부하는데 Database마다 사용되는 쿼리가 완전히 달랐다.그 중 하나가 PostgreSQL이다.따라서, 해당 Database에 대해서 필요한 내용만 정리하는 글이다.http://www.gurubee.net/le
문제를 Android app PacKage의 약어로 Android 가상머신에서 실행되는 소프트웨어 배포용 패키지 파일이며 .apk 확장자를 사용한다.JAR(Java Archive)에 기반한 zip 형태의 압축 파일이고, AndroidManifest.xml, class
먼저 안드로이드 아키텍처 구조에 대해 이해해야 한다.가장 하위에 리눅스 커널이 있고, 그 위에 달빅 가상머신이 있는데 이 달빅 가상머신이 dex 포맷의 바이트코드를 해석하여 안드로이드 어플리케이션을 실행하게 된다.이 때의 dex 바이트 코드를 사람이 읽을 수 있도록 해
컴파일해서 생성된 apk를 설치하려고 하면 에러가 발생할 것이다.서명이 안되있기 때문이다.개발자에 의해 개발이 완료된 apk라는 인증을 남기는 것이다.이전에는 개발자가 만든 앱 서명키를 가지고 구글 스토어에 업로드하는 방식이었지만, 현재는 개발자가 만든 키는 스토어에
포너블 문제를 푸는 도중에 다음과 같은 코드를 만났다.signed 연산을 이용해 -1과 같은 음수 값을 입력하면 해당 조건문으로 분기하여 invalid choice를 우회하지만, 값을 사용할 때는 unsigned로 계산되는 시나리오를 생각했지만 결과는 invalid c
스택에 메모리 권한을 변경하여 쉘코드를 실행시키기 위해 mprotect를 사용하려 했으나 에러가 발생하여, 원인을 찾기위해 함수에 대해 자세히 알아보게 되었다.메모리의 접근권한을 변경시키는 함수이다.다음과 같은 형태로 사용된다.성공할 경우 0, 에러가 발생할 경우 -1
문제 >Bufferfly > We've been hunting the space goblins for quite some time now. However, we're still having some trouble identifying their leader. In o
위 코드를 실행한 직후 메모리를 확인하자.그리고 첫 번째 청크인 ptr을 free() 했을 때 메모리를 확인하자.다시 정리해보면1.malloc이 힙을 할당할 때, 데이터 영역 이전 16바이트가 헤더로 사용된다.2.헤더에는 prev_size와 size+flag가 있다.3
간혹 CTF 문제 중에 특정 버전의 라이브러리로 elf 파일을 실행시켜야 하는 경우가 있다.이를 위한 libc를 변경하는 방법에 대해서 알아보자.바이너리를 지정하여 라이브러리 설정을 알아서 변경시켜주는 도구이다.다음 git page에서 확인할 수 있다.https
Bin Bin이란 힙 메모리에서 할당/해제되는 청크들을 관리하기 위한 알고리즘을 뜻한다. 종류 간략히 전체 타입을 확인한다. >1. Tcache bin (added with glibc 2.26) for any chunks ** 2. Fast bin for
rootme.org - json web token 문제를 푸는 도중에알게된 크랙기술이다.제공된 문서를 정리한 내용하였다.The JWT’s data is divided into three parts: headers, payloads, signatures (signatur
seccomp 이해 및 실습
Test-Keys means it was signed with a custom key generated by a third-party developer. Does it mean my device is rooted?The fact that you have not been
N개의 수로 된 수열 A1, A2, …, AN 이 있다. 이 수열의 i번째 수부터 j번째 수까지의 합 Ai+Ai+1+…+Aj-1+Aj가 M이 되는 경우의 수를 구하는 프로그램을 작성하시오.첫째 줄에 N(1≤N≤10,000), M(1≤M≤300,000,000)이 주어진다
잘 알려진 내용이므로 짧게 정리한다.파일 송수신을 위한 응용계층의 TCP 프로토콜FTP서버는 21번 포트를, 클라이언트는 임의의 N번 포트를 사용제어와 파일 전송을 control connection과 data connection으로 구분하여 사용평문 전송되므로 보안을
Plaid CTF 2020의 MISC 500 문제인 golf.so는 일반적인 파일의 크기보다 작은 ELF를 만드는 것을 요구하고 있다.이를 위해 찾아본 내용을 정리하는 글이다.먼저 32bit ELF 바이너리로 실습하는 내용이다.다음의 포스팅을 참고한다.http:
CTF 풀이나 기타 바이너리 분석 포스팅에서 radare2를 종종 볼 수 있었다. IDA나 Radare2 바이너리 분석에 특화된 도구들로 이루어진 리버스 엔지니어링 프레임 워크이다. Static, Dynamic 분석을 모두 가능하며 지원되는 플랫폼이 매우 많다.
CTF 문제에 RSA가 나와서 복습 겸 간단히 정리한다.공개키 알고리즘으로 사설키, 공개키로 구분하여 사용공개키로 암호화할 경우 사설키로 복호화, 사설키로 암호화할 경우 공개키로 복호화가 가능소수의 곱으로 이루어진 숫자를 소인수분해하는 것이 어렵다는 점에서 착안많은 전
오늘날에는 물리적 보안 또한 중요해졌지만, 이를 간과하는 경우가 많다.출시된 많은 기계식 잠금 장치는 Bumping에 의해 손상되었고 이를 보완하는 장치가 필요하다.범죄학에서 범죄 발생률을 줄이는 방법에 대한 방법 및 아키텍처의 유용한 아이디어가 있고 이것을 시스템 설
High Availability은 가용성을 위해 방화벽 또는 서버 등을 이중화를 시키는 것을 말한다.하나는 액티브, 다른 하나는 레디 상태로 사용하는 방식을 액티브 스탠바이(AS) 방식이라고 한다.이 때 두 개의 서버(예시)를 동기화 해줘야 하는데, LACP 프로토콜로
무료 IPS 도구이다.apt로 설치할 수 있다.룰을 실습하기 위함이므로 기존의 룰은 주석처리한다./etc/snort/snort.conf에서 578~696라인이다.다음의 기본 룰에서alert icmp any any -> 192.168.80.131 any을 RTN(Rule
매직넘버, 마그네틱, 칩 같은 토큰을 이용해 특정 행위를 할 수 있도록 만들어진 시스템이 많다.그 중 하나가 계량기 시스템이다.가정에서 전기, 수도 등을 사용하기 위해 계량기를 사용하는데 일반적으로 한국에서는 후불 계량기를 사용하지만 선불 계량기 시스템도 존재한다.선불