LAN vs WAN LAN 은 local area network 의 약자로 한정된 지역에서의 네트워크를 말한다 WAN 은 wide area network 의 약자로 멀리 떨어진 지역을 네트워킹 하는 경우를 말한다 따라서 pc방 또는 사무실을 네트워크로 구성한다면 LAN, 오늘날 사용하는 인터넷은 WAN이라고 볼 수 있다 이더넷(Ethernet)이란? CSMA/CD (Carrier Sense Multiple Access/Collision Detection) 프로토콜을 사용 이더넷 환경에서 통신을 하고자 하는 pc나 server는 먼저 현재 네트워크 상에 통신이 일어나고 있는지를 확인한다. 즉, 우리 네트워크 자원을 사용하고 있는 pc나 server가 존재하는지 확인하는 것이다. 이것을 Carrier Sen..
분류 전체보기
본 글을 포스팅하기전 앞으로 정리될 네트워크 글들은 글쓴이의 공부 및 정리가 목적인 글들로 잘못된 내용 또는 다소 주관적인 내용이 포함될 수 있음을 말한다 "후니의 쉽게 쓴 네트워크" 라는 책을 참고하여 글을 쓸 예정이다. 프로토콜 다수의 컴퓨터 사이에 원활한 데이터 통신을 위한 통신 규약 signal 송신의 순서, 데이터의 표현법, 오류 검출법 등을 정해준다 사람과 비유하자면 대화를 위해 필요한 언어라고 볼 수 있다 대화를 하는데 언어가 없거나 사용하는 언어가 다르다면 대화는 매우 힘들어질 것이다. 인트라넷 말 그대로 "내부의" 인터넷 으로 정해진 지역, 인가된 사람만이 사용할 수 있는 내부 통신망이다 보통 회사에서 사내 메일 시스템과 같은 보안이 조금은 필요한 공간에서 사용된다. 엑스트라넷 인트라넷과..

증감연산의 과정과 결과에 의문을 느껴서 정리해본다. #include int main() { int a=10; printf("%d %d %d\n",a++,++a,++a); printf("%d %d %d\n",a++,--a,a--); return 0; } 코드는 간단하게 위와 같고 gdb를 통해 간단한 디버깅을 해보았다. 일단 스택이라는 메모리 공간을 사용한다는 것을 알 수 있다. 프롤로그가 진행되고, printf("%d %d %d\n", a++,++a,++a); 의 인자는 뒤에서부터 스택에 쌓인다. a값을 ebp-0x4라는 스택의 밑바닥에 저장하고 뒤의 인자 두개 ++a, ++a 전위연산을 add명령어를 통해 진행한다 10 -> 12가 된 ebp-0x4 값을 eax레지스터에 저장하고 후위 연산이 진행되는데..
#본 포스팅은 글쓴이가 까먹었을때 다시 보기 위함으로 텍스트로 정리함 fake ebp 기법을 알려면 먼저 스택의 이해와 leave-ret 명령어의 이해가 필수적이다 1. 먼저 sfp와 ret를 overwrite할수 있는 취약점을 탐색 2. leave-ret GadGet의 주소를 알고 3. payload를 작성 Payload = shellcode 시작주소(buf+4) + shellcode + nop(버퍼의 크기 - shellcode) + &(buf+4) + leave-ret GadGet ================================================ leave-mov esp ebp-pop ebp ret-pop eip-jmp eip esp, ebp 레지를 중심으로 정리하면 leave ..
window -> ubuntu - rz ubuntu -> window -sz [filename]
까먹으면 다시 볼라구 basic한 bof기법 몇가지를 정리해두려 한다 먼저 bof란 buffer overflow의 약자로 가장 먼저 떠오르는 것은 stack bof이다 stack 메모리 공간에서 정해진 메모리 양보다 input양이 더 많을 때 넘치는 취약점을 말하는데, 이해하려면 당연히 stack 구조의 이해가 먼저 필요하다. stack 의 구조는 아래와 같다[출처] http://bob3rdnewbie.tistory.com/187 만약 buf의 크기가 40byte이면 40보다 더 많은 양인 44byte를 넣어서 4byte를 overflow 시키는 것이다. 기본적으로 ret주소를 /bin/sh 또는 삽입한 쉘코드의 시작주소로 조작할 수 있다 취약한 함수로는 strcpy, gets 함수 등 입력 수 제한이 ..
리눅스 환경에서 디버깅을 돕는 peda를 설치했다 간단한 사용법으로 #pdisas func_name 디스어셈블해준다 gdb랑 다르게 색이 있어서 보기좋다 #checksec 보호기법 체크 내장 # bp를 걸고 돌려보면 gdb와 또 다른게 레지스터들에 들어있는 값이 바로바로 보인다 이게 정말 편하다 #find 명령어 말그대로 찾아준다 개꿀이다
#압축 tar [option][filename][make filename]Ex) tar cvf condense.tar condense #풀기 tar [option][filename]Ex) tar xvf condense.tar