A ship in harbor is safe, but that is not what ships are built for.

STUDY 24

Week02(데이터&명령어)

컴퓨터의 정보단위 비트(bit) : 0 또는 1로 표현되는 가장 작은 정보 단위 바이트(byte) : 8개의 bit를 묶은 정보 단위 -> 2^8(=256)개의 정보 표현 가능 킬로바이트(kB) : 1byte x 1000개 = 1000byte 메가바이트(MB) : 1kB x 1000개 = 1000kB 기가바이트(GB) : 1MB x 1000개 = 1000MB 테라바이트(TB) : 1GB x 1000개 = 1000GB 워드(word) : CPU가 한 번에 처리할 수 있는 데이터 크기 -> half word, full word, double word -> 인텔 x86 CPU는 32비트 word, 인텔 x64 CPU는 64비트 word 이진법 1을 넘어가는 시점에서 자리 올림을 하여 0과 1만으로 수를 표현하..

Week01(컴퓨터의 핵심부품)

컴퓨터 구조 = 컴퓨터가 이해하는 정보(데이터&명령어) + 컴퓨터의 4가지 핵심부품(CPU, 메모리, 보조기억장치, 입출력장치) 데이터(Data) - 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상 등 정적인 정보 명령어(Instruction) - 데이터를 움직이고, 컴퓨터를 작동시키는 정보 1. 메모리(main memory) - 현재 실행되는 프로그램의 명령어와 데이터를 저장하는 장소 -> 프로그램 실행을 위해 반드시 이 곳에 저장!! - 빠른 작동을 위해 메모리 속 정보를 효율적으로 접근 -> 주소(address) 이용 - RAM(Random Access Memory)과 ROM(Read Only Memory)이 존재 -> 주기억 장치는 RAM이라 생각해도 무방 2. CPU(Central Process..

[WebRTC를 이용한 화상영상 서비스-(2)]

이번에는 STUN과 TURN에 대한 내용을 정리하려 한다. WebRTC 이해를 위해 필요한 전반적인 지식이니 다른 용어들과 함께 먼저 정리해보자. NAT(Network Address Translation) 우리가 누구인지 식별하기 위한 고유 이름이 있듯이 각 기기들도 그들만의 고유한 이름이 있다. 네트워크 상의 기기들의 고유 이름이 바로 IP인데 이것은 실제로 고유한 값일 수도 있고 아닐 수도 있다. 예를 들어 생각해보자. 각 가정마다 공유기는 모두 있을 것이다. 이 공유기에는 하나의 IP주소가 할당된다. 그렇다면 가족들이 서로 다른 기기들로 해당 공유기를 통해 인터넷에 접속할텐데 이 호스트들 간 통신은 어떻게 이루어지는가에 대한 의문이 발생할 것이다.(IP 주소는 하나인데 그럼 모두 같은 IP 주소를 ..

STUDY/PROJECT 2021.11.23

[WebRTC를 이용한 화상영상 서비스-(1)]

일단 내가 이 프로젝트를 왜 시작했는지부터 이야기하자면 시스템 종합설계 수업에서 진행하는 팀 프로젝트이기 때문이다. 이렇게 큰 틀을 가진 프로젝트를 이전에 진행해본 적이 없기 때문에 공부 내용이나 개발 과정 등을 기록으로 남기면 후에 이야깃거리로 사용하기 쉬울 것 같아 해당 내용을 포스팅하기로 했다. 처음에는 이론 내용부터 정리하고 이후 필요한 내용과 개발 내용들을 정리해보고자 한다. 이번에 팀원들과 함께 기획한 주제는 WebRTC를 통한 파티 애플리케이션이다. 기존에 있는 화상 영상 서비스에 여러 가지 엔터테인먼트 요소들을 추가할 예정이다. 간단하게 목표부터 말하면 다음과 같다. 1. 서버 구축 : web 화상채팅에 필요한 서버 구축 2. 웹 구현 : 리액트로 진행할 예정이다. 3. Multi 화상 채..

STUDY/PROJECT 2021.11.22

Webhacking.kr 54번 문제(old)

문제부터 확인했다. 위와 같이 Password is 라고 나오고 뒤에 막 여러 문자가 나오다가 ?가 나오면서 멈췄다. 일단 소스코드부터 확인해보자. 뭔가 짧다... 일단 하나하나 확인해보자. Password is //Password is 다음 문자열을 aview라고 id 지정 ※ 동기식 vs 비동기식 1) 동기식 방식 : 요청과 결과로 이루어지는 실행 흐름의 단위가 맞아 떨어지는 방식 >> 요청과 결과가 순차적으로 이루어진다. (A요청 -> A응답 -> B요청 -> B응답 -> C요청 -> C응답) 2) 비동기식 방식 : 요청과 결과로 이루어지는 실행 흐름의 단위가 맞춰지지 않는다. >> 요청과 결과가 뒤죽박죽 (A요청 -> B 요청 -> A응답 -> C요청 ...) >> x.open 부분에서 순차적으로..

STUDY/WEB_Hacking 2021.01.25

[DB_SQL]조인(Join)과 데이터 무결성(Data Integrity)

카티션 곱(Cartesian product) - 모든 가능한 행들의 조인 - 검색하고자 한 데이터 이외 조인엔 사용된 테이블들의 모든 데이터가 반환 //특별한 가치는 없다. 위와 같이 모든 행들의 조인이 일어나 사원 하나에 다수의 부서가 match됨을 확인할 수 있다. 조인(Join) - 하나 이상의 테이블을 연결하여 데이터를 검색하는 방법 - 종류 1) 동등조인=내부조인(equi join) : 조인 조건에서 '='을 사용해 값들이 정확하게 일치하는 경우에 사용되는 조인 //대부분 기본키와 외래키의 관계를 이용 ex) 급여가 3000 이상인 사원에 대해 사원번호, 사원이름, 업무, 부서명, 급여, 위치를 검색 ※ 테이블 별칭(alias)을 이용해 긴 테이블 이름을 간단하게 사용할 수 있다. FROM 절에..

STUDY/Database 2021.01.22

Webhacking.kr 26번 문제(old)

문제의 메인화면을 보니 view-source 버튼만 딸랑있다. 확인해보자. 중요한 부분만 살펴보았다. int preg_match(string pattern, string subject, array[matches]); : subject에 일치하는 pattern이 있으면 참으로 반환, 패턴으로 알리기 위해 앞과 뒤에 슬래시(/)를 붙임 일단, admin을 url인코딩해 id값에 넣으면 문제가 해결될 것 같다. 온라인 상의 url인코딩을 써도 되지만 간단한 것이니 표를 봤다. admin은 url코드로 %61%64%6d%69%6e인 것을 확인했으니 get방식을 통해 전달해보자. 위와 같이 출력됨을 확인할 수 있다. 코드를 보면 preg_match 함수가 urldecode 앞쪽에 있어 영향을 받을 일이 없어보이는..

STUDY/WEB_Hacking 2019.12.18

Webhacking.kr 24번 문제(old)

24번 문제의 메인화면이다. 소스코드를 확인해보자. 중요한 부분만 간단히 확인해보겠다. extract( ) : 배열 속의 키값을 변수화 시키는 함수 htmlspecialchars( ) : 문자열에서 특정한 특수문자를 html 엔터티로 변환하는 함수 $REMOTE_ADDR : 클라이언트의 IP를 가져오는 PHP의 환경변수 $HTTP_USER_AGENT : 클라이언틔의 접속환경 정보를 가져오는 PHP의 환경변수 ***여기서는 $_SERVER 보다 $COOKIE가 나중에 처리되었기 때문에 위의 두 환경변수들을 쿠기로 조작할 수 있다!!! 결과를 확인해보기 위해 REMOTE_ADDR이라는 COOKIE를 만들어 그 값에 127.0.0.1을 넣어보았다. 결과는 위와 같다. 1이 나온 이유는 str_replace로 ..

STUDY/WEB_Hacking 2019.12.17