전체 글 35

Old-14번, 1번 문제 풀이

Old-14번 문제function ck(){ var ul=document.URL; ul=ul.indexOf(".kr"); ul=ul*30; if(ul==pw.input_pwd.value) { location.href="?"+ul*pw.input_pwd.value; } else { alert("Wrong"); } return false;}해당 코드에서 if문을 보면 입력한 값이 ul과 같을때 링크가 달라진다.ul값을 알기 위해 console창에서 확인해보았다 console창 확인 ul = documet URL = 'https://webhacking.kr/challenge/js-1/'ul.indexof(”.kr”) = 18ul*30 =540이므로 540을 입력하면 풀었다는 alert창이 뜬다 Ol..

STUDY/write-up 2025.04.25

Vmware workstation로 실습망 구축_2

2025.04.10 - [STUDY/네트워크] - Vmware workstation로 실습망 구축_1 Vmware workstation로 실습망 구축_1▶ IP 및 ISO 파일 정보kali linux(공격자) : IP - 21.5.1.10ubuntu(피해자) : IP - 33.2.8.4vyos(라우터) : NIC 1번 - 21.5.1.1 , NIC 2번 - 33.2.8.1※ 원래 망은 당연히 NAT가 자동이라 이런 방식으로 구성되지 않고, 방화벽garamv.tistory.com지난 글에 이어서 ubuntu와 vyos를 설정합니다.  Ubuntu가상환경 만들기https://releases.ubuntu.com/22.04/위 링크에서 ubuntu 이미지 iso파일을 받았다. 가상환경을 만들기 위해 WorkSt..

STUDY/네트워크 2025.04.10

Vmware workstation로 실습망 구축_1

▶ IP 및 ISO 파일 정보kali linux(공격자) : IP - 21.5.1.10ubuntu(피해자) : IP - 33.2.8.4vyos(라우터) : NIC 1번 - 21.5.1.1 , NIC 2번 - 33.2.8.1※ 원래 망은 당연히 NAT가 자동이라 이런 방식으로 구성되지 않고, 방화벽/스위치 등 이것저것 많지만 가상자원이므로 컴퓨터의 자원 상 생략하였음 ▶ 조건Custom 네트워크를 사용(2개의 vmnet 사용) -> 예 : custom1 = 21.5.1.0/24 , custom2 = 33.2.8.0/24kali linux는 custom 1번, ubuntu는 custom2번으로 네트워크 나눔(위치가 변경되어도 괜찮음)vyos는 custom 1번, custom2번 모두 연결되어 있음(2개의 N..

STUDY/네트워크 2025.04.10

[네트워크] OSI 7 계층 개념과 패킷 분석

OSI 7 Layer:국제 표준화 기구 ISO에서 만든 네트워크 참조 모델 통신 과정을 계층적으로 나눈 이유는?네트워크 구성과 설계가 용이하다. (목적에 맞게 프로토콜과 장비를 계층별로 구성할 수 있다.)네트워크 문제 진단과 해결이 용이하다. (통신과정을 계층적으로 나누면 문제 원인 짐작이 수월해진다.) 1계층 - 물리계층최하단 1계층으로, 1과 0으로 표현되는 비트 신호를 주고 받는 계층같은 비트 데이터라도 통신 매체에 따라 전기, 빛, 전파 등의 신호로 운반될 수 있다. 통신 매체에 맞는 신호로 운반되도록 비트 데이터의 변환이 이루어지고 통신 매체를 통한 송수신이 이루어지는 계층이 바로 물리 계층이다.네트워크 장비, 통신 매체 2계층 - 데이터 링크 계층데이터 링크 계층은 네트워크 내 주변 장치 간의..

STUDY/네트워크 2025.03.30

[DB] functional dependency(함수 종속) 이란?

functional dependency(FD) 의 의미 X = {empl_id} Y = {empl_name, birth_date, position, salary} 특징: 두 tuple의 X값이 같다면 Y값도 같다 이렇게 X값에 따라 Y값이 유일하게 결정될때 → X가 Y를 함수적으로 결정한다 → Y가 X에 함수적으로 의존한다 라고 말할 수 있고, 두 집합 사이의 이러한 제약관계를 functional dependency(FD)라고 부른다 기호로는 X → Y functional dependency(FD) 파악하기 테이블의 스키마를 보고 의미적으로 파악해야한다. 즉, 테이블의 state를 보고 FD를 파악해서는 안된다. ex) 테이블의 특정 순간의 특정 상태(state)만 보고 {empl_name} → {bri..

STUDY/database 2023.12.22

[DB] MVCC 설명_2 (쉬운코드)

MySQL 에서 lost update 해결 예시1) x = 50, y = 10 Transaction 1 : x가 y에 40을 이체한다 Transaction 2 : x에 30을 입금한다 Transaction 1 (repeatable read) Transaction 2(repeatable read) read(x) = 50 Locking read read(x) = 50 (기다림) write(x = 80) commit (lock 해제) read(x) = 80 Locking read write(x = 40) read(y) = 10 Locking read write(y = 50) commit (lock 해제) Locking read Locking read 란 read 할때 lock을 획득 하는 것으로 쿼리로 적용 ..

STUDY/database 2023.12.19

[DB] MVCC 설명_1 (쉬운코드)

MVCC (multiversion concurrency control) 데이터를 읽을때 특정시점 기준으로 가장 최근에 commit된 데이터를 읽는다 → 이걸 MySQL에서 Consistent read 라 한다 데이터 변화(write)이력을 관리한다 (추가적인 저장공간 사용) read와 write는 서로를 block하지 않는다 예시1) x = 10 Transaction 1 : x를 읽는다 Transaction 2 : x를 50으로 바꾼다 Transaction 1 Transaction 2 write(x = 50) (lock획득) read(x) = 10 commit read(x) = ? tx1의 두번째 read(x)값은 isolation레벨에 따라 다르다 read committed 레벨이면 x는 read하는 ..

STUDY/database 2023.12.19

lock을 활용한 concurrency control

transaction1이 x를 20으로 바꾸는 write를 실행할때, 이것은 단순히 값 하나 바꾸는 것보다 더 복잡한 과정이다. 같은 데이터에 또다른 read/write 가 있다면 예상치 못한 동작을 할 수 있다. → Lock을 사용하여 해결할 수 있다 Lock 사용설명 데이터마다 Lock이 있어서 변경하거나 읽으려면 lock을 취득해야한다. lock을 취득하지 못하면 취득할때까지 기다려야 한다 Lock 사용 예시 예시1) x = 10 Transaction 1 : x를 20으로 바꾼다 Transaction 2 : x를 90으로 바꾼다 Transaction 1 Transaction 2 write_lock(x) (lock획득) write_lock(x) (이미 tx1이 획득했기 때문에 lock획득 실패 → 기..

STUDY/database 2023.12.11

transaction isolation level

transaction들이 동시에 실행될 때 발생 가능한 이상 현상들 Dirty read : commit 되지 않은 변화를 읽음 예시) x = 10, y = 20 Transaction 1 : x에 y를 더한다 Transaction 2 : y를 70으로 바꾼다 Transaction 1 Transaction 2 read(x) ⇒ 10 write(y = 70) read(y) ⇒ 70 write(x = 80) commit abort : rollback(y = 20) 이 결과 x = 80, y 는 rollback되서 20이 되는데, commit되지 않은 y값을 읽고 진행한 transaction1 도 이상한 값이 된다 Non-repeatable read(=Fuzzy read) : 같은 데이터의 값이 달라짐 예시) x..

STUDY/database 2023.12.11

concurrency control - recoverability

unrecoverable schedule schedule 내에서 commit된 transaction이 rollback된 transaction이 write했었던 데이터를 읽은 경우 rollback을 해도 이전 상태로 회복 불가능할 수 있기 때문에 이런 스케쥴은 DBMS가 허용하면 안된다 어떤 schedule이 recoverable한가? recoverable schedule : 스케쥴 내에서 그 어떤 transaction도 자신이 읽은 데이터를 write한 transaction이 먼저 commit/rollback 전까지는 commit하지 않는 경우 rollback할 때 이전 상태로 온전히 돌아갈 수 있기 때문에 DBMS는 이런 schedule만 허용해야 한다 cascading rollback : 하나의 tr..

카테고리 없음 2023.12.03