분류 전체보기 20

Network : Web : HTTP/HTTPs

NetworkWebHTTP/HTTPsHTTPHyper Text Transfer Protocol의 약자로, HyperText 즉 HTML(HyperText Markup language)를 주고 받을 목적으로 정의되었던 통신규약이다. 지금은 HTML만 주고받지는 않고 일반적인 프론트엔드 웹 리소스를 주고 받기 위해 사용된다.클라이언트-서버 구조의 Request-Response의 형식을 갖춘 Stateless Application level Protocol이다. HTTP포트를(TCP/80 또는 TCP/8080) 열고 대기중인 웹서버에 클라이언트가 요청하면, 서버가 이에 응답하여 클라이언트가 요청한 데이터를 제공하는 것이다.HTTP/1.0, HTTP/1.1, HTTP/2, HTTP/3 버전이 있으며, 1.1가 ..

CS/Newwork 2024.12.27

Security : Tools : CyberChef

SecurityToolsCyberChef1. Encoding컴퓨터는 0과 1만을 이해할 수 있다. 이러한 0과 1의 조합에 의미를 부여하는 약속을 인코딩 표준이라고 한다. 인코딩 표준에 따른 변환을 인코딩, 그 반대 행위를 디코딩이라고(decoding) 한다."1000001=A, 1000010=B, 1000011=C, ..."따위의 이진수 배열과 추상화의 매핑. 혹은 그 테이블.대표적인 인코딩 표준에는 ASCII/UTF/base64/Hex 등이 있다.더보기ASCII/UTF는 대표적인 문자 인코딩 표준이다.ASCII(American Standard Code for Information Interchange)7비트로 표현되는 128개의 알파벳대소문자/숫자/특수문자들의 인코딩 표준이다.유니코드보다 귀에 익지만..

Security/Tools 2024.12.27

Security : Web : SSL/TLS

SecurityWeb1. 대칭/비대칭 암호화암호화의 대표적인 방식들이다.대칭은 하나의 키로 데이터를 암호화해 전송하면 이를 동일한 키로 복호화하는 방식을,비대칭은 수신자가 개인키/공개키를 생성하면 송신자가 공개키를 받아 데이터를 암호화해 전송하면 이를 수신자가 개인키로 복호화하는 방식을 의미한다.대칭은 키분배 문제가 있지만 빠르고, 비대칭은 키분배 문제는 줄어들지만 리소스를 많이 소모한다.더보기symmetric en/decryption. 대칭 암호화는 암호화 키와 복호화 키가 동일한 암호화 방식이다. 어떻게 제3자에게 노출되지 않고 당사자들에게만 키를 분배할 것인가의 문제가 있으나, 대칭키의 암호화/복호화는 연산이 무겁지 않기 때문에 빠르다. XOR이 대표적인 대칭 암호화 방식이다.AX=B이고 BX=A인..

Security/Web 2024.12.20

네트워크 : 3. 네트워크 프로토콜

3. 네트워크 프로토콜3.1. HTTP/SSL3.1.1. HTTPHyper Text Transfer Protocol. 웹상에서 이루어지는 데이터 전송 프로토콜이다.더보기최초에는 HyperText 즉 HTML(HyperText Markup Language)을 전송하기 위한 통신규약이었으나 근래에는 웹브라우저-웹서버로 대변되는 웹클라이언트-웹서버간 데이터 요청/응답 프로토콜로 의미가 확장되었다.근래의 어플리케이션이 눈부시게 발전한 탓인지 비교적 미지근한 웹페이지는 어플리케이션이 아니라고 생각하기도 하는데, 웹페이지 자체가 TCP연결 위에 얹어진 어플리케이션이다. 데이터를 평문으로 전송하기에 wireshark 따위의 패킷포획도구에 통신 데이터가 쉽게 노출된다클라이언트 URL로 웹서버에 접속해 HTTP 요청을(..

CS/Newwork 2024.12.20

네트워크 : 2. 네트워크 모델

2. 네트워크 모델2.1. 네트워크 모델이란데이터 통신이 이루어지는 네트워크의 논리적인 방식/구조를 의미하고, 조금 더 실천적으로는 그러한 방식/구조를 표준화하려는 일련의 가이드라인으로써 의미를 갖는다.통신 설계 교본 따위로 이해할 수 있다.2.2. internet protocol suiteTCP/IP 4계층으로 알려지거나 인식되어진다. 군사목적으로 개발된 4계층 네트워크 모델이다.단순한 계층구분과 명확한 프로토콜 제시로 실천 친화적이어서 기술이 빠르게 확산될 수 있었다. 현대 네트워크의 뿌리로 전통 강자일 뿐 아니라, 프로토콜에 한정하자면 현재도 1등 강자이다.TCP는 3way handshake로 신뢰성이 높은 연결을 제공하는 프로토콜이고, IP는 효율적인 라우팅으로 빠른 연결을 제공하는 프로토콜이다...

CS/Newwork 2024.12.18

네트워크 : 1. 개념과 분류

1. 개념과 분류1.1. 네트워크란1.1.1. 개념net(그물)+work. 그물처럼 얽힌 통신 형태의 추상적인 표현이다. "통신 인프라"로 대체해도 얼추 말이 맞는다.좀 더 구체적으로는 두 개 이상의 기기들이(노드) 서로 연결되어 통신하는 형태, 또는 그러한 인프라 등을 가리킨다. 네트워크라는 단어는 구체적 차원부터 추상적 차원까지 굉장히 넓은 의미를 가질 수 있기 때문에 이 단어만으로는 알 수 있는 정보가 빈약하고, 문맥 속에서 이해되어야 알 수 있다.1.1.2. 필요성네트워크 연결이 워낙 간편한 요즘은 역설적으로 그 중요성에 대해 절하할 염려도 있다. 이는 성숙한 인프라 기술들이 공통적으로 겪는 문제인데, 잘하면 당연한 거고 못하면 욕 먹는다. 반백년전까지 우물퍼서 먹던 사람들이말이야 네트워크 기술의..

CS/Newwork 2024.12.17

CS/OS운영체제 : 3.Linux OS 이용/관리 : 3.명령어 : 7. 편집기

3. Linux OS 이용/관리3.3. 명령어3.3.7. 편집기3.3.7.1. vi/vimvisual interface/visual interface improved. 대상파일(경로)을 수정한다. 없으면 생성한다.vim 대상파일(경로)UNIX환경에 내장된 문서 편집기이다. vi는 최초버전이고, vim이 개선된 버전으로, 정교한 작업이 가능하다.상태특징특징기본모드 커서위치 상단우측하단 행,렬 커서 인터페이스의 처리 명령을 실행하는h/j/k/l        커서위치변경(왼쪽/아래/위/오른쪽)i/a/o          커서위치에서/커서뒤에서/새로운줄을추가하고 입력 모드로 변경yy/dd        현재 줄 복사하기/잘라내기p               붙여녛기x               문자 하나 삭제하기u  ..

CS/OS 2024.12.17

운영체제 : 3.Linux OS 이용/관리 : 3.명령어 : 6. 네트워크/방화벽 관리

3. Linux OS 이용/관리3.3. 명령어3.3.6. 네트워크/방화벽 관리3.3.6.0. 네트워크/방화벽이란네트워크란(network), 서로 다른 단말/컴퓨터/장치들이 서로 정보를 통신할 수 있도록 구성된 구조/인프라를 의미한다.방화벽이란(firewall), 보안장치를 의미하며, 특히 네트워크 방화벽이란 단말/컴퓨터/장치에 접근하기 전에 네트워크 단에서 동작하는 것을 의미한다. 동작 지점에 따라 어플리케이션/DB/클라우드 방화벽 등으로 분류할 수 있다.3.3.6.1. ifconfiginterface configuration. 네트워크 인터페이스 구성을 출력/변경한다.ifconfig/ip 대상최신 리눅스에서는 ifconfig 대신 ip a/ip r이 기본 제공되며, ifconfig는 설치를 필요로 한다..

CS/OS 2024.12.13

운영체제 : 3.Linux OS 이용/관리 : 3.명령어 : 5. 프로세스 관리

3. Linux OS 이용/관리3.3. 명령어3.3.5. 프로세스 관리3.3.5.0.프로세스란process. 실행 중인 프로그램를 의미한다. 보통 CPU 스케줄링의 객체라는 의미로 접근한다. CPU는 코어단위로 직렬연산만 처리할 수 있어 OS의 CPU 스케줄링이 CS에서 중요한 화두이기 때문이다.프로세스별로 고유의 PID를 낮은 숫자부터 할당받는다. 프로세스가 종료된다고 그 PID를 다른 프로세스가 할당받는 것은 아니고, 계속 쌓아 올린다. history는 세션 단위에서, 사용자가 입력한 명령 순서를 누적한다면 PID는 셸 단위에서, 실행된 프로세스 순서를 누적한다.관점에 따라 프로세스를 여럿으로 분류할 수 있는데, 하기에서 정리한다.프로세스, 스레드, 코어가 혼동되곤 하는데, 하기에서 정리한다.관점분류..

CS/OS 2024.12.11

운영체제 : 3.Linux OS 이용/관리 : 3.명령어 : 4. 입력/실행/변경

3. Linux OS 이용/관리3.3. 명령어3.3.4. 입력/실행/변경3.3.4.1. 표준입출력첫인상은 입력/출력에 구체적인 수단/명령어를 의미할 것 같지만, 프로세스와 장치간, 프로세스와 프로세스간의 입력/출력의 추상적인 표준 규약을 의미한다. 표준에러까지 포함해 표준 스트림(standard stream)이라고 한다.입력과 출력간의 호환성을 도모해 시스템 리소스를 효율적으로 사용하기 위함이다.(리다이렉션/파이프 등) 파일디스크립터(file descriptor)란 그 입출력의 논리적 순번표식이라고 할 수 있다. 지정된 순번표식을 지나야 리소스 자원을 사용할 수 있다. 0,1,2는 이미 선점되어있다. file descriptor내용0키보드 > 프로세스 stdin1프로세스 > 모니터 stdout 2프로세스..

CS/OS 2024.12.06