본문 바로가기

전체 글45

우분투 고정IP 설정하는 방법, ubuntu netplan static ip config 오늘은 우분투 서버에 고정 IP를 설정하는 방법에 대해 작성하였습니다. 자신의 서버에 접속하여 코드를 /etc/netplan/00-installer-config.yaml 파일을 수정하면 됩니다. # nano 에디터 설치 sudo apt -y install nano # 패키지 목록 업데이트 sudo apt update # 시스템 업그레이드 sudo apt upgrade # 네트워크 설정을 위한 netplan 설정 파일 열기 sudo nano /etc/netplan/00-installer-config.yaml /etc/netplan/00-installer-config.yaml # netplan 설정 시작 network: ethernets: # 네트워크 인터페이스 설정 시작 ens160: # DHCP 사용 안.. 2024. 1. 16.
데이터 분석 공부 - 리스트 리스트 정렬하기 num = [1,3,4,5] num.sort() print(num) reverse 인자를 활용해서 리스트 정렬하기 num.sort(reverse=True) print(num) 리스트 함축하기 [x for x in range(10)] #0,1,2,3,4,5,6,7,8,9 [x * x for s in range(10)] #0,1,2,4,9,16, ..., 81 st = 'Hello World' [x.upper() for x in st] #['H','E', ..., 'D'] a = ['Hello','to','the'] first_a = [s[0].upper() for s in a] print(first_a) #['H','T','T'] 조건이 붙는 리스트 함축하기 [x for x in range.. 2023. 10. 23.
네트워크 기초 2일차 네트워크 기초 2일차 DoS(Denial of Service, 서비스 부인), DDoS 서비스나 서버를 과부하시켜서 정상적인 기능을 하지 못하게 하는 행위, 서비스 다운 DoS와 DDoS의 차이점 DoS는 시스템 대 시스템 공격인 반면, DDoS는 여러 개의 시스템이 하나의 시스템을 공격하는 것 RAT(njRAT) 원격으로 관리자 접속하는 툴 사이트 https://github.com/adarift/njRAT https://github.com/adarift/njRAT/releases -> 버추얼박스에서 설치 ------ OSI 7계층, 인터넷 4계층 - DNS, FTP, HTTP, NTP, SMTP - 압축, 암호화, 복호화, 데이터 변환 - NetBIOS, 인증 및 허가 - TCP, UDP - ICMP,.. 2023. 7. 24.
파이썬 3일차 - for문 test_list = [103, 'test3', [1033, 'test3-1']] empty_list = [] for i in range(10): print(i) for j in range(2): for k in range(3): empty_list.append((j,k)) print(empty_list) for n in test_list: print(n) -------결과값------- 0 1 2 3 4 5 6 7 8 9 [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2)] 103 test3 [1033, 'test3-1'] 이중 for문 중요!!! - if문 참 = 1, 거짓 = 0 - 내장함수 iter next 함수로 숫자를 하나씩 빼올 수 있음 iter.. 2023. 7. 17.
네트워크 기초 1일차 네트워크 기초 1일차 Server-Client - 서버 다수의 클라이언트에게 서비스를 제공하기 위한 장치 - 클라이언트 서비스를 받으려고 하는 장치 Packet Tracer (패킷 트레이서) Cisco의 라우터, 스위치 등으로 네트워크를 가상으로 시뮬레이션 할 수 있는 프로그램 - 스위치 컴퓨터와 같은 2개 이상의 IT 디바이스가 서로 통신하도록 허용하는 장비 - 라우터 외부 컴퓨터들의 구체적인 방향을 정해주는 역할 파일, 웹 상호 작용과 같은 단순 전송 데이터 등 여러 종류의 데이터가 포함된 패킷을 사용하여 네트워크 데이터를 전송한다 Ethernet, Bluetooth, Access point - 이더넷 원칙적으로 하나의 인터넷 회선에 유/무선 통신 장비 공유기, 허브 등을 통해 다수의 시스템이 랜선 .. 2023. 7. 17.
Dreamhack XSS 함께 실습 문제 정보 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. XSS 취약점을 이용해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. 플래그 형식은 DH{…} 입니다. 문제 사이트 접속 및 문제 파일 다운로드 app.py #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open("./flag.txt", "r").read() except: FLAG = "[**FLAG**]" de.. 2023. 7. 7.
Dreamhack XSS (Cross Site Scripting) 이론 공부 1. XSS - 클라이언트 사이드 취약점 중 하나 - 공격자가 웹 리소스를 악성 스크립트에 삽입해 이용자의 웹 브라우저에서 해당 스크립트를 실행 - 해당 취약점은 SOP 보안 정책이 등장하여 서로 다른 오리진에서 정보를 읽는 행위가 힘들어짐 1.1 XSS 발생 예시 - 이용자가 삽입한 내용을 출력하는 기능에서 발생 ex) 로그인 출력 시 "안녕하세요. 00회원님" 이라는 문구 또는 게시물과 댓글 1.2 XSS 종류 1.2.1 Stored XSS - XSS에 사용되는 악성 스크립트가 서버에 저장되고 서버의 응답에 담겨오는 XSS 1.2.2 Reflected XSS - XSS에 사용되는 악성 스크립트가 URL에 삽입되고 서버의 응답에 담겨오는 XSS - 이용자의 요청에 의해 발생 - 공격을 위해서 타 이용자.. 2023. 7. 7.
동아리 시스템 기초 스터디 3일차 (2일차 복습 지난 수업 복습 - 링커 링커는 언어 번역 프로그램이 생성한 목적 프로그램들과 라이브러리, 또 다른 실행 프로그램 등을 연결하여 실행 가능한 로드 모듈을 만드는 시스템 소프트웨어이며 연결 편집기(Linkage Editor)라고도 한다 - 로더 로더는 보조기억장치(HDD/SSD)에 있는 프로그램을 주기억장치(RAM)에 적재하여 프로세스로 실행시키는 시스템 소프트웨어 운영체제는 커널과 쉘로 나누어진다 커널 : 하드웨어 제어 쉘 : 사용자와 커널 사이의 인터페이스 역할 하드웨어는 CPU와 메모리가 제일 중요하다 CPU : 레지스터 (데이터를 임시로 저장한다) 비트 단위로 이름이 달라진다 32bit - E를 붙인다 (ex EAX) 64bit - R을 붙인다 (ex RAX) 메인메모리 (RAM) : 주기억장치 프.. 2023. 7. 6.
나만의 웹사이트 만들기 1일차 - 1 1. 얻어갈 수 있는 것 - 자기 블로그 만들어서 기술 문서 작성 가능 - 포트폴리오 - 웹을 잘 알아야 웹 해킹 가능 (CTF대회 + 깃허브) ----- 2. 웹 사이트를 만들기 전 알아야 될 기초 지식 - WEB (World Wide Web) 인터넷에 연결된 사용자들이 서로의 정보를 공유할 수 있는 공간 - HTML (Hyper Text Markup Language) 웹을 이루는 가장 기초적인 구성 요소 웹 콘텐츠의 의미와 구조를 정의할 때 사용 content 요소 : 여는 태그, 닫는 태그, 내용 실습 사이트 : https://codepen.io/pen - CSS (Cascading Style Sheets) HTML 같은 문서의 스타일 (색, 위치, 글꼴 등)을 꾸밀 때 사용하는 스타일 시트 언어 .. 2023. 7. 5.
동아리 시스템 기초 스터디 1일차 - 2 1. 하드웨어 컴퓨터나 컴퓨터에 붙어 있는 주변 장치들 컴퓨터의 육체이고 하나의 기계 1.1 하드웨어 종류 1.1.1 연산제어장치 메인보드 컴퓨터 부품 사이를 이어주는 역할 메인보드가 없으면 CPU가 RAM으로 처리된 정보를 보낼 수 없다 메인보드 안에는 BIOS 라는 일종의 작은 운영체제가 들어있다 메인보드에는 램슬롯, CPU슬롯 등을 꽂을 수 있는 PCI 슬롯을 제공 BIOS(Basic Input/Output System)란? 1975년 디지털 리서치의 게리 킬딜이 CP/M(Control Program/Monitor) 운영 체제가 다양한 컴퓨터를 지원하기 쉽게 개량하면서 만들어졌다 윈도우를 부팅시켜준다 초기 관리 소프트웨어 CPU (중앙처리장치) 컴퓨터의 동작을 담당하고 있어 중요한 부품 사람으로 말.. 2023. 7. 5.
동아리 시스템 기초 스터디 1일차 - 1 1. Pwnable과 Reversing Pwnable이란? 운영 체제나 소프트웨어, 하드웨어에 내재된 보안 취약점을 해킹하는 것 시스템 권한을 자기 것으로 만든다는 의미로 ownable이 정식 명칭 하지만 대회 당시 오타로 pwnable이라고 입력을 했고 그대로 그 이름을 쓰게 됨 Reversing을 먼저 수행할 수 있어야 됨 Pwnable 과정 1. 프로그램 상의 취약점 분석 exe, dll, elf 등 실행 파일의 취약점 분석 2. 공격 시나리오 작성 Exploit 코드를 작성하기 위한 시나리오를 세운다 3. 필요한 정보 수집 및 공격 Exploit 코드를 작성하기 위한 정보를 수집하고 공격한다 4. 권한 획득 목적 달성 Pwnable을 해야 하는 이유 시스템 보안을 이해할 수 있다 새로운 보안 취약.. 2023. 7. 5.
JSP 웹 프로그래밍 - 자바 웹 개발 환경 구축 1. 자바 웹 개발 환경 구축 1.1 자바 개발 도구, JDK https://adoptium.net/ Home | Adoptium The Adoptium® Working Group The Adoptium Working Group promotes and supports high-quality runtimes and associated technology for use across the Java ecosystem. Our vision is to meet the needs of Eclipse and the broader Java community by providing runtimes adoptium.net 1.2 통합 개발 환경, 이클립스 https://www.eclipse.org/ The Communit.. 2023. 7. 2.