Fascination
article thumbnail
[P4C] W7: 올드 스쿨 취약점과 올드 스쿨 공격 기법 공부하기
etc.../빡공팟(P4C) 4기 2022. 6. 5. 18:52

[P4C] W7: 올드 스쿨 취약점과 올드 스쿨 공격 기법 공부하기 # 올드 스쿨 취약점 1) Buffer Overflow - 개념 기본적인 버퍼 오버플로우 공격은 데이터의 길이에 대한 불명확한 정의를 악용한 덮어쓰기로 발생 경계선 관리가 적절하게 수행되어 덮어쓸 수 없는 부분에 해커가 임의의 코드를 덮어쓰는 것을 의미 버퍼 오버플로우에 취약한 함수와 그렇지 않은 함수가 있는데, 프로그래머가 취약한 특정 함수를 사용하지 않는다면 공격이 훨씬 어려워짐 - 발생 원인 하나의 프로그램은 수 많은 함수로 구성되어 있는데 프로그램을 실행하여 함수가 호출될 때, 지역 변수와 복귀주소가 스택이라 하는 논리 데이터 구조에 저장됨 버퍼오버플로우는 이 복귀주소가 함수가 사용하는 지역변수의 데이터에 의해 침범 당할 때 발생..

article thumbnail
[P4C] W6: Double Linked List CRUD 구현, 어셈블리로 구구단 구현, Stack 개념 공부하기
etc.../빡공팟(P4C) 4기 2022. 5. 29. 15:16

W6: Double Linked List(CRUD) 구현, 어셈블리로 구구단 구현, Stack 개념 공부하기 참고 자료: 자료구조 개념 및 구현 - 유석종 교수님(자료구조 수업 교재), Stack 참고자료 - 제공해주신 .md 파일 # 1. Double Linked List(CRUD) 구현 - SLL(Single Linked List)의 문제점: 다음 노드만 알고 이전 노드는 알 수 없음 - DLL(Double Linked List) 각 노드는 이전 노드와 이후 노드의 정보를 알 수 있음 삽입/삭제가 용이함 헤드 노드 필요: 데이터를 가지지 않고, 삽입/삭제 코드를 간단하게 할 목적으로 만들어진 노드 head node와 tail노드를 각각 사용할 수도 있지만 교재에서는 head node만을 사용하여 ci..

article thumbnail
[P4C] W4-W5: C언어로 HTTP 서버 구현
etc.../빡공팟(P4C) 4기 2022. 5. 21. 02:24

W4-W5: C언어로 HTTP 서버 구현 참고 자료: C, TCP 기반으로 간단한 HTTP 서버 작성하기 # 1. 구현 내용 - 서버 프로그램이 존재하는 디렉터리를 기준으로 파일을 접근할 수 있는 서버 - 개발 순서 socket(), bind(), listen() 등을 활용하여 TCP 소켓을 만듬 accept() 후에 HTTP 프로토콜로 처리하는 함수를 만듬 처리 중에 에러가 발생하면 404, 500 상태 코드로 응답 - 과제 제출 예시 영상 # 2. TCP 소켓 생성하기 1) TCP란? Transmission Control Protocol 서버와 클라이언트 간에 데이터를 신뢰성 있게 전달하기 위해 만들어진 프로토콜 데이터를 전송하기 전에 데이터 전송을 위한 연결을 만드는 연결지향 프로토콜 데이터는 네트..