본문 바로가기

전체 글

(71)
AWS EC2/RDS Spring Boot 배포 + DNS 포워딩 (2) AWS EC2 Spring boot + RDS(MySQL) 구축 후 DNS 포워딩을 할 것이다. 총 5단계에 걸쳐 진행할 예정이다. 1. AWS EC2 + RDS 생성 2. RDS table 생성 3. VSCode Spring Boot 로컬 환경 서버 구축 4. 로컬 서버 코드 EC2 업로드 + DNS 포워딩 5. EC2, RDS 주의사항 사실상 1번이 제일 오래걸린 것 같다. 2장. AWS RDS table 생성 AWS RDS에 접속해서 데이터베이스를 추가/삭제/수정하는 방법은 다양하다. 대표적으로 MySQL Client, MySQL Workbench, Sequel Pro 등이 있다. 1. AWS RDS 접속 전 확인 사항 * 접속 시도 전 내 외부 IP가 RDS 보안 그룹의 인바운드 규칙에 포함되어 ..
AWS EC2/RDS Spring Boot 배포 + DNS 포워딩 (1) AWS EC2 Spring boot + RDS(MySQL) 구축 후 DNS 포워딩을 할 것이다. 총 5단계에 걸쳐 진행할 예정이다. 1. AWS EC2 + RDS 생성 2. RDS table 생성 3. VSCode Spring Boot 로컬 환경 서버 구축 4. 로컬 서버 코드 EC2 업로드 + DNS 포워딩 5. EC2, RDS 주의사항 1장. AWS EC2 + RDS 생성 1. AWS EC2 인스턴스 생성 1) EC2 대시보드 -> 인스턴스 시작 -> OS 선택 인스턴스 시작을 클릭하면 OS 리스트가 나온다. 난 우분투가 편하니 18.04 LTS 64bit 를 선택한다. CentOS는 Amazon Linux를 선택하면 된다. 2) 인스턴스 유형 선택 -> 다음 (검토 및 시작X) 인스턴스 유형 리스트..
Kubernetes Networking : Part 2 - services 첫번째 글에선 kubernetes가 송신자가 수신자의 파드 네트워크 IP 주소를 아는 한 어떻게 가상 네트워크 장치와 라우팅 규칙을 결합하여 한 클러스터 노드에서 실행되는 파드가 다른 노드에서 실행되는 파드와 통신할 수 있도록 있도록 하는지를 살펴봤다. 파드가 어떻게 통신하는지 잘 모르시면 이 포스팅을 읽기 전 이전 포스팅을 한번 읽어보시길 ㅊㅊ드린다. * 으로 표시된 단어는 포스팅 하단에 간단한 설명이 첨부되어 있습니다. 클러스터의 파드 네트워킹은 깔끔하지만, 그 자체로는 내구성있는 시스템을 만들 수 없다. 왜냐, kubernets의 파드는 일회성이기 때문이다. 파드 IP 주소를 endpoint로 사용할 수 있지만 파드를 다시 만들 때 주소가 변경되지 않을 것이라는 보장이 없다. 아마도 여러분은 이 오..
Kubernetes Networking : Part 1 - pods 크게 세 파트로 나눠 포스팅 할 예정이다. 1. 컨테이너, 파드 2. service 3. 클러스터 외부에서 파드로 들어오는 트래픽 확인 이러한 과정으로 모든 layer을 풀어서 쉽게 이해하고 이들간의 상호작용을 이해하도록 하자. * 으로 표시된 단어는 포스팅 하단에 간단한 설명이 첨부되어 있습니다. 파드란? 파드는 Kubernetes application의 기본 단위다. 파드는 동일한 호스트에 배치된 하나 이상의 컨테이너로 구성되며 네트워크 스택 및 볼륨과 같은 다른 리소스를 공유하도록 구성된다. 그럼 "네트워크 스택을 공유한다"는 것은 어떤 의미일까? 이건 파드의 컨테이너가 로컬 호스트에서 서로 연결할 수 있다는 것을 의미한다. 예를 들면, 위의 Kubernetes Pod 1 은 2개의 컨테이너를 가지..
DLL이란? DLL(Dynamic Link Library) 이란 일반적으로 확장자가 DLL인 파일을 말한다. 라이브러리라는 말에서 알 수 있듯이 다른 프로그램에서 이용하는 함수들을 모아둔 것이다. 하지만 표준 C 라이브러리 같은 일반 라이브러리의 파일과는 구조나 사용법이 다소 다르다. 일반 라이브러리는 소스코드를 컴파일한 결과로 생성되는 객체 파일(.obj)을 그대로 모아둔 것이다. 링커는 이 중에서 필요한 함수가 포함된 객체 파일을 꺼내서 실행 파일에 결합하는 '정적 링크' 방식이다. 정적 링크는 C/C++ 프로그램의 소스 코드를 기계어 코드로 변환하는 컴파일 단계를 거치게 된다. 여기서 C/C++에는 수많은 표준함수들이 존재하고 있는데 이들은 표준 라이브러리 파일 안에 어셈블리 코드의 형태로 담겨 있다. 소스 코..
hackerschool FTZ level 1 - level 20 풀이 통합본 한번에 보기 쉽도록 정리해놨습니다. 도움이 됐으면 좋겠습니다.
hackerschool FTZ : level 20 풀이 문제 분석 1. fgets bof 2. FSB 사용 FSB 자세한 설명 https://pu1et-panggg.tistory.com/22 풀이 목표 : printf@got
hackerschool FTZ : level 19 풀이 문제 분석 1. fgets bof 2. *call = shell_addr 풀이 1. buf 주소 확인 : ebp-40 2. shellcode 환경변수로 저장 후 주소 확인 : 0xbffffbcc 자세한 설명 : https://pu1et-panggg.tistory.com/51 3. payload = dummy(44bytes) + shellcode_addr = "a"*44 + 0xbffffbcc