Season 1
-
Objective Python과 Perl처럼 자체적인 엔진를 사용하여 Java Script를 사용할 수 있게 해준 것이 Node.js이다. 이를 통해 Node.js로 구성된 백엔드에서 Headless Browser 등을 통해 처리하는 로직이 있는 경우, 공격자가 Node.js가 해석하여 처리할 수 있는 값을 전달함으로써 서버사이드에서 원하는 Java Sctipt를 실행하도록 하는 공격이다. 간단하게 생각하면 SSTI와 비슷한 개념으로 이해하면 된다. 서버 사이드의 템플릿 엔진에 악성 템플릿 구문을 삽입함으로써 원하는 행위를 실행하도록 하는 것이 템플릿 엔진이 아닌 Node.js를 해석하는 엔진인 V8로 타겟으로 공격을 시도한 것으로 난 이해했다. HAHWUL님의 블로그에서 해당 취약점을 알게되었고, 어떻..
Server-side JavaScript InjectionObjective Python과 Perl처럼 자체적인 엔진를 사용하여 Java Script를 사용할 수 있게 해준 것이 Node.js이다. 이를 통해 Node.js로 구성된 백엔드에서 Headless Browser 등을 통해 처리하는 로직이 있는 경우, 공격자가 Node.js가 해석하여 처리할 수 있는 값을 전달함으로써 서버사이드에서 원하는 Java Sctipt를 실행하도록 하는 공격이다. 간단하게 생각하면 SSTI와 비슷한 개념으로 이해하면 된다. 서버 사이드의 템플릿 엔진에 악성 템플릿 구문을 삽입함으로써 원하는 행위를 실행하도록 하는 것이 템플릿 엔진이 아닌 Node.js를 해석하는 엔진인 V8로 타겟으로 공격을 시도한 것으로 난 이해했다. HAHWUL님의 블로그에서 해당 취약점을 알게되었고, 어떻..
2022.02.28 -
보호되어 있는 글입니다.
Heavy Query Time based Sqli(ORACLE)보호되어 있는 글입니다.
2022.02.28 -
BOF(Buffer Overflow)란? 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메로리의 범위를 넘어선 위치에 자료를 읽거나 쓰려고 할 때 발생. 영향도 버퍼 오버플로우가 발생하게 되면 프로그램 오작동을 유발시키거나, 악의적인 코드를 실행함으로써 공격자가 프로그램을 통제할 수 있는 권한을 획득하게 됨. 종류 스택(Stack) 버퍼 오버플로우 스택 영역 : 함수 처리를 위해 지역변수 및 매개변수가 위치하는 메모리 영역. - 스택에 할당된 버퍼들이 문자열 계산 등에 의해 정의된 버퍼의 한계치를 넘는 경우 버퍼 오버플로우가 발생하여 복귀 주소(Return Address)를 변경하고 공격자가 원하는 임의 코드 실행 힙(Heap) 버퍼 오버플로우 힙 영역: 힙은 사용자가 동적으로 할당하는 메모리 영역(..
BOF공격(Buffer Overflow Attack) 실습 및 개념 정리BOF(Buffer Overflow)란? 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메로리의 범위를 넘어선 위치에 자료를 읽거나 쓰려고 할 때 발생. 영향도 버퍼 오버플로우가 발생하게 되면 프로그램 오작동을 유발시키거나, 악의적인 코드를 실행함으로써 공격자가 프로그램을 통제할 수 있는 권한을 획득하게 됨. 종류 스택(Stack) 버퍼 오버플로우 스택 영역 : 함수 처리를 위해 지역변수 및 매개변수가 위치하는 메모리 영역. - 스택에 할당된 버퍼들이 문자열 계산 등에 의해 정의된 버퍼의 한계치를 넘는 경우 버퍼 오버플로우가 발생하여 복귀 주소(Return Address)를 변경하고 공격자가 원하는 임의 코드 실행 힙(Heap) 버퍼 오버플로우 힙 영역: 힙은 사용자가 동적으로 할당하는 메모리 영역(..
2022.02.26 -
보호되어 있는 글입니다.
CVE-2021-35394 : RealTek UDPServer command injection attempt보호되어 있는 글입니다.
2022.02.20 -
JSFUCK이란? 위키백과에 의하면 Martin Kleppe이 개발한 자바스크립트의 난해한 프로그래밍 스타일이라고 소개되어있다. (![]+[])[+!+[]] // "a" ([][+[]]+[])[!+[]+!+[]] // "d" (!+[]+[])[!+[]+!+[]+!+[]] // "e" (![]+[])[+[]] // "f" ([][+[]]+[])[!+[]+!+[]+!+[]+!+[]+!+[]] // "i" (![]+[])[!+[]+!+[]] // "l" ([][+[]]+[])[+!+[]] // "n" (!+[]+[])[+!+[]] // "r" (![]+[])[!+[]+!+[]+!+[]] // "s" (!+[]+[])[+[]] // "t" ([][+[]]+[])[+[]] // "u" 위 코드처럼 [ ], ( )..
JSFUCK 분석JSFUCK이란? 위키백과에 의하면 Martin Kleppe이 개발한 자바스크립트의 난해한 프로그래밍 스타일이라고 소개되어있다. (![]+[])[+!+[]] // "a" ([][+[]]+[])[!+[]+!+[]] // "d" (!+[]+[])[!+[]+!+[]+!+[]] // "e" (![]+[])[+[]] // "f" ([][+[]]+[])[!+[]+!+[]+!+[]+!+[]+!+[]] // "i" (![]+[])[!+[]+!+[]] // "l" ([][+[]]+[])[+!+[]] // "n" (!+[]+[])[+!+[]] // "r" (![]+[])[!+[]+!+[]+!+[]] // "s" (!+[]+[])[+[]] // "t" ([][+[]]+[])[+[]] // "u" 위 코드처럼 [ ], ( )..
2022.02.03 -
보호되어 있는 글입니다.
Timebased SQL Injection보호되어 있는 글입니다.
2022.02.02