Knowledge
-
Dll Injection 실습 (Windows10 x64bit, c++)Knowledge/Reversing 2021. 4. 10. 17:45
개념 설명 한줄 요약 실습 DLL Injection에 사용된 API 사용된 코드 DLL 파일 참고 개념 설명 📌 리버싱 핵심원리 p312 실제 개발 프로젝트에도 많이 사용되는 API 후킹을 할 때 DLL 인젝션 기법이 많이 사용됩니다. 후킹 함수를 dll 형태로 만든 후 후킹을 원하는 프로세스에 간단히 인젝션하는 것만으로 API 후킹이 완성됩니다. 이 역시 삽입된 DLL은 해당 프로세스의 메모리에 대한 접근 권한을 가지고 있다는 특성을 잘 활용한 것입니다. 실행한 프로그램에 해당 프로그램이 정상적으로 불러오는 dll이 아닌 악의적 dll을 불러오게 함으로써 키로거 같은 악의적인 공격이 가능해진다. 좀 더 자세히 설명하면 notepad 같은 프로그램을 실행 했을 때 정상적으로 사용을 위해 불러오는 dll이..
-
스노트(Snort) 룰 작성법 feat. 정보기Knowledge/Network 2020. 12. 12. 00:18
Format 요약 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Rule Haeder | Rule Option | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Action | Protocol | Src IP | Src Port | -> | Dst IP | Dst Port | Option | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ex) Alert TCP any any -> any any [Action] Alert : 로그 기록 + 경고 알림 Drop : 로그 기록 + 차단 Lo..
-
TCP와 UDP의 차이에 대한 주관적인 생각 Feat. 보안Knowledge/Network 2020. 9. 8. 23:39
보안적인 입장에서 보았을때 TCP와 UDP는 어떠한 차이가 있을까? 일단 이 질문에 앞서서 단순한 차이부터 살펴보자. 연결과 비연결, 즉 신뢰성과 비신뢰성이다. 이 차이에서 부터 파생하는 많은 장단점들이 존재한다. 속도라던지 각자의 특성에 따른 헤더 구조의 차이 등.. 보안과 관련해서는 어떠한 차이가 있을까? 각자 장단점이 있지만 좀 더 치명적인 위험이 잠재되어 있는 것은 역시 TCP가 아닐까하는 생각이 든다. 학교를 예로 들어보자. (완벽한 비유는 아니니 느낌, flow~만 참고하시길) 기본적으로 교장실 같은 곳은 들어갈 때 우리는 노크를 하고 자신의 신분을 밝힌 뒤에 안에 사람이 있고 그 사람이 들어오라고 하면 들어 갈 수 있다. 이런 곳에 무단으로 들어오는 것에 성공한다면 치명적인 위험이 될 수 있..
-
NAC (Network Access Control) 개념Knowledge/Network 2020. 9. 8. 22:53
네트워크 접근 통제 시스템이라는 개념은 2005년 Gartner가 제시하면서 알려졌다. 이름에서 알 수 있듯이 네트워크와 관련된 보안 모델이다. Why? NAC는 어떠한 필요 때문에 만들어 졌을까? 이 당시에는 아무리 패치를 잘하고 백신을 설치해 놔도 사원들이 밖에서 사용하면서 갖고 들어온 노트북이 이미 감염되어 있다면 사내망에 바이러스나 웜이 들어오는 경우가 있었다.(ex. 2011년 농협) 이러한 경우는 보안성 검토를 받지 못한 단말이 임의로 사내 네트워크에 접근할 수 있었기에 가능한 상황이다. 그렇기에 NAC는 이러한 경우를 검토하고 접근을 제어하는 것이 주된 기능이다. 기능 그렇다고 솔루션이 한 가지 기능만 있겠는가? 당연히 아니다. 다양한 기능이 존재한다. 접근 제어, 인증 역할 기반으로 내부 ..
-
Ethernet, IP, TCP 프로토콜에 대한 고찰Knowledge/Network 2020. 9. 8. 21:08
요즘 네트워크에 대해 공부하게 되어서 다시 한번 복습겸 지난 글들을 정독하였다. 2019/05/28 - [Knowledge/Network] - 이더넷 프로토콜 패킷 구조 이더넷 프로토콜 패킷 구조 이더넷 프로토콜은 2계층인 데이터 링크 계층의 프로토콜이다. 오늘은 사진 없이 형식만 기재하도록 하겠습니다. 이더넷 프로토콜 요약 Preamble - SFD - DMA - SMA - Length or Type - Data - Pad - Frame Check.. shineild-security.tistory.com 2019/05/28 - [Knowledge/Network] - IP 패킷 구조 IP 패킷 구조 IP ( Internet Procotocl) IP 프로토콜은 가장 대표적인 네트워크 계층 프로토콜이다. 하..
-
C++ - 함수 오버로딩에 대한 이해 (Function Overloading)Knowledge/Programing 2020. 7. 13. 00:20
안녕하세요. 현재 열심히 C++을 공부하고 있는 필자이다. (갑자기 분위기 근황토크) 이번 글에서는 객체지향 언어의 특징이기도한 함수 오버로딩에 대해서 써보려고 한다. 절차지향 언어인 C에서는 다음과 같은 코드는 오류가 발생한다. #include int Func(int num){ printf("%d\n", num); return num; } int Func(int a, int b){ return a+b; } int main(void){ int tmp; tmp = Func(30); return 0; } 이유는 함수의 이름이 "Func"으로 동일하기 때문이다. 하지만 C++의 경우에는 어떨까? 무리없이 실행이 가능하다. 그 이유가 바로 함수의 오버로딩덕분이다. 같은 이름을 쓰더라도 받는 인자를 따라 구분이 ..
-
EDR(Endpoint Detection & Response) 솔루션이란?Knowledge 2020. 6. 20. 21:57
EDR (Endpoint Detection & Response) 성장 배경 최근 랜섬웨어 피해 사례가 증가하고 있다. 단순히 파일 다운로드 후 실행으로 일어나는 사고보다 파일리스 방식 등 다양한 방식으로 공격을 해오고 있다. 알려지지 않은 zero day 공격을 막기 위해서는 단순 시그니쳐 기반의 백신으로는 한계가 있다. 그래서 알려지지 않은 행위를 탐지하고 격리 및 대응을 시키는 EDR 솔루션 시장이 커져왔다. 이러한 성장으로 현재 다양한 기업이 edr 사업에 뛰어들었는데 우리나라에서는 안랩이 많은 비율을 차지하고 있다. 기존 EPP와의 차이점 기존 EPP는 패턴과 시그니쳐 기반으로 탐지를 진행하며 사후를 처리하는 시스템이다. 그로인해 날로 날로 변종 악성코드의 공격이 증가하는 요즘 사전 방지가 중요하..
-
절차지향 언어와 객체지향 언어Knowledge/Programing 2020. 6. 19. 01:41
절차지향 언어와 객체지향 언어 전에 친구에게 과외할 때 절차지향과 객체지향의 차이를 설명했었다. 그런데 최근에 아는 동생에게 객체지향에 대한 질문이 들어왔는데 답하지 못하였다. 이번에도 나의 금붕어 같은 기억력은 제 역할을 완수했다. 빡쳐서 이렇게 글을 남긴다. 절차지향 언어 대표적인 종류 : C [개념] 코드를 순서대로 읽어 나가며 처리하는 방식 컴퓨터가 동작하는 방식과 흡사하여 객체지향보다 처리 시간이 빠르다. 객체지향 언어 대표적인 종류 : Java, Python, C++ [개념] 객체(Object)를 지향한다는 의미. 실제 세계를 모델링하여 개발하는 방식으로 정의한다. 작성 순서보다는 객체를 중점으로 하는 특징을 갖고 있다. 순서가 아닌 기능별로 묶어서 모듈화를 하고 모듈을 재사용하기도 하는 등의..