본문 바로가기

분류 전체보기308

[도커 컨테이너 입문과 활용] 5. 도커(docker) 컨테이너 이용한 웹서버 실행 및 페이지 변경 1. nginx 다운 및 다운 확인 nginx: 많이 사용하는 웹 서버 2. 도커 실행 -it: 터미널로 접속 --name: naming 설정 nginx_web: 이름 지정 -d: background 형식으로 실행, 이 옵션 없으면 실행되는 게 다 출력됨 -p: 포트 설정, 포트포워딩 3. 도커 실행 확인 4. 웹브라우저에서 8000 포트 연결 확인 5. 이미지 정보 확인 sudo docker inspect [Container ID] 6. index.html 생성 7. index.html 복사 sudo docker cp index.html [도커컨테이너 네임]: [저장할 도커컨테이너 내부 경로] 웹브라우저에서 복사한 index.html 내용으로 페이지가 변경된 것을 확인 가능 참고 https://www... 2023. 9. 26.
[MySQL] 섹션3. MySQL 테이블 생성 이 엑셀을 데이터베이스로 만들어 보자. 먼저 mysql에 접속한다. 데이터베이스 사용 명령어를 입력한 후에, 테이블을 생성한다. * NULL / NOT NULL: 값이 반드시 있어야 되는지 * PRIMARY KEY: 중복 방지 참고 인프런 | DATABASE 1&2 - MySQL https://www.inflearn.com/course/database-2-mysql-%EA%B0%95%EC%A2%8C/dashboard [무료] DATABASE 1&2 - MySQL - 인프런 | 강의 정보기술의 심장인 데이터베이스에 대한 포괄적인 소개를 담고 있습니다. 데이터베이스의 본질을 공부하며 가장 대표적인 관계형 데이터베이스인 MYSQL 을 학습해 봅니다., [임베딩 영상] 강좌 www.inflearn.com 2023. 9. 25.
[Cloud Computing] Cloud computing security issues and responsibility sharing [Overall View of Cloud Computing Security] 1. security of data at rest 2. security of data in transit 3. authentication of users/ applications/processes 4. robust separation of data belonging to different customers 5. legal and regulatory issues 6. incident response [For securing data at rest] Cryptography tools should be applied For the confidentiality and integrity of data. Redundancy of data .. 2023. 9. 23.
[Azure] CDN이란 1. CDN - Content Delivery Network의 약자로, 컨텐츠를 가져다 주는 네트워크 - 사용자에게 가장 가까운 곳에 미리 컨텐츠를 가져다 놓는 것을 의미 - 미디어 서버스나 이코버스, 게임사 같은 업체에서 많이 활용되고 있는 서비스 2. CDN 동작 방식 - 미국 어딘가에 Edge Pop 서버를 두고 사용자는 Edge Pop 서버와 통신하고, 이는 Origin Server와 통신 - 한 번 데이터를 Oring Server에서 가져 온 이후부터는 Edge Pop 서버에서 캐싱하고 있는 데이터를 사용자에게 전달 - 이러한 방식으로 보다 빠른 컨텐츠 배포가 가능 3. CDN을 쓰는 이유 - 컨텐츠 저장소로부터 거리가 먼 사용자에게 빠른 컨텐츠 전달 - 컨텐츠 전달 가속 - Edge 서버에서 .. 2023. 9. 23.
[Dreamhack] Command Injection Advanced https://dreamhack.io/wargame/challenges/413 Command Injection Advanced Description Exercise: Command Injection Advanced에서 실습하는 문제입니다. 문제 수정 내역 2023.07.27 Dockerfile 제공 dreamhack.io Command Injection을 실습하는 문제이다. 가상머신에 접속하면 url을 입력하여 전송할 수 있게 되어 있다. index.php 파일을 확인해봤다. strpos 함수를 이용해 'http'가 url 변수 맨 앞에 위치해 있는지 확인하고 http가 맨 앞에 위치해 있을 경우 shell_exec()함수를 통해 쉘 명령어를 실행한다. line 14, shell_exec()에는 curl.. 2023. 9. 20.
[Dreamhack] command-injection-chatgpt https://dreamhack.io/wargame/challenges/768 command-injection-chatgpt 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. chatGPT와 함께 풀어보세요! Reference Introduction of Webhacking dreamhack.io 커맨드 인젝션을 통해 플래그를 획득하는 문제라고 한다. 플래그는 flag.py에 있다고 한다. 접속 정보를 보면 ping을 보내는 사이트임을 확인할 수 있다. flag.py에 플래그가 있다고 했으므로 cat 명령어를 이용하여 해당 파일을 읽는 ping을 보냈다. 플래그를 획득했다! 2023. 9. 20.
[도커 컨테이너 입문과 활용] 4. 도커 컨테이너 이미지를 지우는 방법, rmi 활용법 1. 도커 이미지 삭제 - sudo docker image rm 도커이미지:태그 - 이미지가 동작하고 있을 때는 동작을 중지하고 지워야 됨 - sudo docker rmi -f 도커이미지ID - 해당 ID를가지고 있는 모든 도커 이미지 삭제 2. mysql 이미지 다운로드 후 실행 - sudo docker pull mysql로 mysql 이미지 다운로드 - sudo docker run -it mysql /bin/bash로 mysql 실행 - 이제 mysql 내에 있는 bash 명령어들 실행 가능 3. mysql 동작 확인 - sudo docker ps 4. 실행 중인 도커 이미지인 mysql 삭제 - 실행되고 있는 도커 이미지 종료 - 실행 종료 후 삭제 5. 현재 사용 중인 도커 이미지 전부 삭제 - .. 2023. 9. 20.
[도커 컨테이너 입문과 활용] 3. 도커 컨테이너 save로 저장하고 load로 불러오기 1. 사용할 도커 이미지 따로 저장 - sudo docker image save 사용할도커이미지 > 저장할이름 2. 저장된 이미지 확인 3. 파일 압축 해제 - layer 방식으로 해제 4. 도커 이미지 로드, 이미지 로드 확인 - sudo docker image load < 파일명 - 이제 배포 시에 linux-httpd.tar를 배포하면 됨 출처 https://www.youtube.com/watch?v=mtra9IJFCaA&list=PL1jdJcP6uQtvfNf19anO9YJqe-B4nGuAu&index=3 2023. 9. 20.
[도커 컨테이너 입문과 활용] 2. 도커 컨테이너 태그 방법과 Hub 저장소에 업로드 1. Docker Hub 계정 생성 https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide. hub.docker.com 2. 도커 이미지 생성 - 도커는 동일해도 태그를 다르게 하면 다른 작업 수행 가능 - sudo docker image tag 원본 참조한_이미지 3. 도커 이미지 생성 확인 - sud.. 2023. 9. 20.
[도커 컨테이너 입문과 활용] 1. 도커 이미지 inspect, history 상세 정보 확인 1. 도커 설치 - sudo apt install docker.io 2. 도커 명령어 확인 - sudo docker 3. http 서버가 설치되어 있는 컨테이너 검색 - sudo docker search httpd - OFFICIAL 옵션이 [OK]면 공식적으로 배포되고 있는 도커 컨텥이너 환경 4. 최신으로 만들어진 도커 이미지 다운로드 - sudo docker pull httpd:latest - 도커 레이어가 5개로 구성 5. 다운로드 받은 도커 이미지 확인 - sudo docker images - 태그는 나중에 수정 가능 6. 다운로드 받은 도커 이미지 상세보기 - sudo docker inspect httpd - 레이어 정보 등 상세 정보 등 확인 가능 7. 도커의 태그들을 기반으로 상위/하위 나.. 2023. 9. 18.
[MySQL] 섹션2. MySQL 기본 1. MySQL의 구조 - 데이터베이스: MySQL에서 연관된 표들을 그룹화해서 연관되지 않은 표를 분리하는 데 사용하는 것 - 스키마(= 데이터베이스): 표들을 그룹화 할 때 사용하는 폴더, 스키마는 서로 연관된 데이터를 그룹화 - 데이터베이스 서버: 스키마가 저장되는 곳 - MySQL을 설치한 것 = 데이터베이스 서버를 설치한 것 - 그 프로그램이 가지고 있는 기능성을 가지고 여러가지 작업을 진행한다. 2. MySQL 서버 접속 - 데이터 베이스를 얻을 때 얻을 수 있는 첫 번째 효용: 보안 - 데이터베이스는 자체적인 보안 체계를 가지고 있기 때문에 파일보다 안전하게 데이터를 보관 가능 - 데이터베이스는 권한을 차등적으로 주는 기능도 가지고 있다. * MySQL 설치 참고: https://velog... 2023. 9. 18.
[Dreamhack] simple-web-request https://dreamhack.io/wargame/challenges/830 🌱 simple-web-request Description STEP 1~2를 거쳐 FLAG 페이지에 도달하면 플래그가 출력됩니다. 모든 단계를 통과하여 플래그를 획득하세요. 플래그는 flag.txt 파일과 FLAG 변수에 있습니다. 플래그 형식은 DH{...} 입니다. 📜 dreamhack.io 2단계를 거쳐서 플래그를 획득해야 하는 문제다. STEP 1에 들어가면 param 값과 param2를 입력해야 하는 것으로 보인다. 문제 파일에서 app.py를 확인해보니 step1() 함수에 param 갑소가 param2 값이 아예 공개돼 있었다. 해당 값들을 입력하니 STEP 2로 넘어갔다. STEP 2에서도 param 값과 par.. 2023. 9. 16.
[Dreamhack] phpreg https://dreamhack.io/wargame/challenges/873 phpreg Description php로 작성된 페이지입니다. 알맞은 Nickname과 Password를 입력하면 Step 2로 넘어갈 수 있습니다. Step 2에서 system() 함수를 이용하여 플래그를 획득하세요. 플래그는 ../dream/flag.txt에 위치합니 dreamhack.io php로 작성된 페이지로 2단계에 걸쳐서 푸는 문제다. 플래그는 ../dream/flag.txt에 있다고 한다. 가상머신에 접속하면 이름과 패스워드를 제출하는 입력 란이 있다. 혹시나 해서 admin/admin을 입력해봤는데 아니라고 했다. :( 주어진 문제 파일 중 index.php에는 얻을 수 있는 정보가 없었다. 그래서 step2.. 2023. 9. 13.
[네트워크 패킷 분석] 메타스플로잇 프로를 이용한 공격 네트워크 패킷 분석 사례 프로토콜 요약 정보들을 보면 메타스플로잇 2가 굉장히 많은 취약점을 가지고 있기 때문에 열려 있는 프로토콜이 굉장히 많이 존재한다. Remote Procedure Call 프로토콜이 열려 있으면, 공격자가 접근 권한이 있는 경우에 서비스의 정보들을 주기 때문에 공격자는 프로세스 안에 있는 정보들을 확인할 수 있다. 메타스플로잇 프로 버전에서 SMB 취약점이 있다고 생각하면 무조건 Microsoft Windows Browser Protocol에 접근하는 코드를 넣는다. TCP 프로토콜을 보면 Telnet, SSH 프로토콜 등이 있다. HTTP 관련 프로토콜들은 많지는 않다. 따라서 메타스플로잇 프로 버전에서 pentest(패킷 수집 시에 진행한 것)에는 웹 스캔이 포함되지 않는다는 것을 알 수 있다. pe.. 2023. 5. 31.
[Dreamhack] shell_basic https://dreamhack.io/wargame/challenges/410 shell_basic Description 입력한 셸코드를 실행하는 프로그램이 서비스로 등록되어 작동하고 있습니다. main 함수가 아닌 다른 함수들은 execve, execveat 시스템 콜을 사용하지 못하도록 하며, 풀이와 관련이 없는 dreamhack.io 이 문제는 셸크래프트를 이용해서 푸는 문제이다. * 파이썬 모듈 pwntools의 shellcraft - pwntools는 execve 셸코드를 작성할 뿐만 아니라 open, read, write 시스템 콜을 모두 지원한다. - 셸크래프트는 해당 시스템콜의 어셈블리어코드를 만들어주므로 orw, 즉 open, read, write 시스템콜하여 쉘코드를 만들어야 한다. f.. 2023. 5. 30.