본문 바로가기

전체 글

(123)
[Toddler's Bottle] 1번 fd putty로 로그인해도 좋고 칼리로 해도 좋지만 나는 칼리를 사용했다. 로그인 후 ls 로 파일을 확인하는데 우선 c 파일이 보여서 확인해보기로 했다. fd.c 먼저 cat *atoi :문자열-> int fd = int(첫번째 인자) - 0x1234 이후 read 함수의 첫번째 인자로 fd가 들어가는데 문제 이름이 fd 인 만큼 fd 를 이용해야한다는 것을 알 수 있다. *fd = 0 : 표준 입력 *fd = 1 : 표준 출력 *fd = 2 : 표준 에러출력 따라서 fd에 따라 buf 에 저장되는 것으로 볼 수 있다. 이 buf 에 저장된 값과 ”LETMEWIN”이 같으면 flag 획득할 수 있다는 것 같다. 우선 0x1234 = 4660 이므로 ./fd 실행 시 인자로4660 함께 입력하면, 표준 입력..
식별 / 애플리케이션 요구사항 네트워크에서의 식별 1. 호스트 (host) : host 네임 - dns서버 이용하여 ip 로 변환 : ip 주소 - 네트워크 계층 2. 프로세스 : port 번호 - 전송 계층 네트워크 애플리케이션 요구 사항 1. data integrity : 데이터 무결성 2. throughput : 처리량 3. timing : 전송 시간
네트워크 resolution / 라우터 vs 스위치 네트워크 resolution 1.DNS : ip dns 2. ARP : ip mac 3. switch : mac port 라우터 vs 스위치 1. 라우터 : router, ip 주소 사용, 3계층 패킷 스위치 2. 스위치 : switch, mac 주소 사용, 2계층 패킷 스위치
OSI 7 계층 간단 정리 물리 데이터 링크 네트워크 전송 세션 표현 응용 mac주소 IP주소 port번호 비트 프레임 데이터그램 세그먼트 메세지 광케이블, 꼬임상선 이더넷, wifi ip tcp/udp http, ftp, smtp, dns서버 사용자(host)간 통신 프로세스간 통신, RDT(reliable data transfer) 물리, 데이터링크 : 같은 네트워크 네트워크 ~ : 다른 네트워크
linear regression 구현_tensorflow 2-1. tensorflow 로 간단한 linear regression 구현 소스 출처: https://github.com/hunkim/DeepLearningZeroToAll/ - 이전에 그냥 terminal 에서 사용했던 방식은 가독성이 좀 떨어지는 것 같아서 Jupyter을 설치하여 사용 - virtualenv : python 가상 환경 - jupyter notebook : 오픈 소스 웹 애플리케이션으로, 라이브 코드, 등식, 시각화와 설명을 위한 텍스트 등을 포함한 문서를 만들고 공유하도록 할 수 있음 : 주로 데이터 클리닝, 변형, 수치 시뮬레이션, 통계 모델링, 머신 러닝 등에 사용 : Python, R, Julia, Scala 등 데이터 과학 분야에서 인기있는 40종의 다양한 프로그래밍 언어를..
[보안 기초] - SDL, 로그, CSIRT 9. SDL(보안을 고려한 개발 공정, Security Development Lifecycle) : 일반적인 sw 는 개발 공정을 거침(요구 분석-> 설계-> 구축-> 테스트) / sw오류(취약성) 수정은 하드웨어의 부품 교환처럼 간단하지 않음 / 소프트웨어 개발에서는 공정이 진행되면 진행될수록 문제 해결에 필요한 비용이 급증 10. 로그: 라우터나 컴퓨터 등에 저장되는 동작 기록 / 네트워크 로그 확인을 통해: 보통은 발생할 수 없는 수상한 통신을 발견할 수 있음 / 서버 로그 확인을 통해: 서버(DNS, 메일, 웹 등..) 등과 같은 컴퓨터에 저장되는 로그는 저장할 항목을 잘 선정하면 수상한 프로그램 실행을 확인하는 데 도움이 됨, 또한 성능 로그를 취득하도록 해두면 부하의 추이를 남길 수 있음, 부..
[보안 기초] - 패치, 패킷 필터링, SOC 6. 패치: 버그를 수정하기 위한 데이터 / 패치를 사용하여 데이터의 일부를 수정함으로써 시스템의 버그나 취약성을 수정, 기존의 파일을 버그가 없는 올바른 파일로 교체하거나 새로운 파일을 추가함으로써 시스템을 수정 / 패치의 종류는 다양, 특히 시스템의 취약성에 대처하기 위한 패치: 보안 패치 / 장단점: 통째로 교체하는 것이 아니라 수정한 파일에 한해 교체할 때 주로 사용됨-> 패치를 적용함으로써 소프트웨어의 동작이 불안정해질 가능성이 있음-> 시스템의 안정성이 중요한 경우는 갑자기 실제 환경에 대해 패치를 적용하는 것이 아니라 별도의 테스트 환경을 마련하고 패치 적용 테스트를 하는 경우가 많음 / 패치를 적용할 수 없다면-> 시스템에 액세스할 수 있는 사용자나 접속원을 제한하여 버그나 취약성이 악용되..
[보안 기초] - 비밀번호, 원타임 비밀번호, 패턴 파일 3. 비밀번호: 시스템에 등록된 사용자를 인증하기 위한 정보 4. 원타임 비밀번호 : 한번만 사용 가능한 비밀번호 / 전용 기기나 sw 로 자동으로 생성, 한번 이용되면 더 이상 사용할 수 없음 / 장점: 투명도 높은 인증 시스템 구축 가능 / 단점: 인증하는 측에 원타임 비밀번호를 해석하기 위한 시스템을 도입해야하고, 인증 받는 사용자 측도 발행을 위한 sw가 필요 5. 패턴 파일 : 멀웨어 파일이 갖고 있는 특징을 기술한 데이터베이스 / 바이러스 검사시 각각의 파일과 패턴 파일에 등록되어 있는 데이터를 대조하여 결과가 일치하는 것을 ‘멀웨어’로 판정 참고 책- 그림 설명으로 한번에 이해할 수 있는 보안의 기본