전체 글 118

Layer7 과제 - 하드웨어 1차시

목차 1. ROM 2. RAM 3. HDD 4. SSD 1. ROM ROM은 Read Only Memory의 약자로, 이름에서 알 수 있듯이 쓰기가 불가능해 읽기만 할 수 있으며 전원이 꺼져도 내용이 증발하지 않는 비휘발성 기억 장치이다. 용도 : 사용자가 임의로 내용을 변경할 수 없으므로 변경이 필요한 상황이 거의 없는 일정한 동작을 하는 프로그램을 저장하는 데 주로 사용됨. ex) BIOS, OS 등 종류 : MASK ROM 제조 공장에서 프로그램화하여 생산한 ROM -> 사용자가 내용 변경 불가 원리 : 처음 제조할 때 트랜지스터에 이온을 넣어서 물리적으로 기록해 내용 수정이 불가능함 데이터 읽기 : 읽기 셀의 Word선 전위를 0V로, 읽기 셀 이외의 Word선 전위를 Vcc로 Bit 선에 전압을..

hardware 2022.06.08

수학 - 자이스토리 1등급 고난도 스토리 197번

A197. 실수 전체의 집합 U의 두 부분집합 A, B에 대하여 n(A) = 5, B={ ( x + a ) / 2 | x ∈ A}이다. 두 집합 A, B가 다음 조건을 만족시킬 때, 상수 a의 값을 구하시오. (4점) (가) 집합 A의 모든 원소의 합은 28이다. (나) 집합 A ∪ B의 모든 원소의 합은 49이다. (다) A ∩ B = {10, 13} 이 문제는 1등급 킬러 태그가 붙어있는 문제였지만 제일 쉬웠다. 일단 집합 A의 원소의 개수가 주어졌으므로 A를 {a1, a2, a3, a4, a5}의 집합으로 나타내봤다. 이렇게 나타냈더니 조건 (가)로 인해 a1+a2+a3+a4+a5 = 28이라는 수식을 사용할 수 있게 되었다. 그 이후, 문제에 나와있는대로, 집합 B를 { ( a1 + a ) / 2..

mathematics 2022.06.06

수학 - 자이스토리 1등급 고난도 스토리 191번

A191. 어느 고등학교 학생들을 대상으로 수학문제 A, B, C의 구매 여부에 대하여 조사한 결과가 다음과 같다. (가) A와 B를 모두 구매한 학생은 15명, B와 C를 모두 구매항 학생은 12명, C와 A를 모두 구매한 학생은 11명이다. (나) A와 B 중 적어도 하나를 구매한 학생은 55명, B와 C 중 적어도 하나를 구매한 학생은 54명, C와 A 중 적어도 하나를 구매한 학생은 51명이다. 수학 문제집 A를 구매한 학생의 수를 구하시오. (4.1점) 자이스토리 1등급 문제 치고 쉬운 문제였다. 일단 이 문제를 머리로 생각하며 풀긴 어려우니 벤다이어 그램을 통해 한눈에 보기 쉽게 나타내보았다. 이렇게 나타낸 상태에서 각 영역에 고유한 이름을 붙이고 보기의 (가) 조건을 이용해 수를 나타내보았다..

mathematics 2022.06.06

layer7 8차시 과제 - webhacking.kr 44번

· 이 페이지에 들어가보니 name이라는 사용자 입력칸이 있었고, 제출 버튼과 소스보기 버튼이 있었다. 아무 값이나 넣어서 제출해보니 'hello! {name}' 이런 식으로 출력되는 것 같았다. · 다음으로 소스보기에 들어가보니 내 생각이 맞았다는 것을 알 수 있었고, system()함수를 그 안에 필터링 없이 사용자 입력값을 넣어 실행하는 것으로 보아 command injection이라는 것을 알 수 있었다.

web hacking 2022.05.24

layer7 과제 - portswigger : Lab: SQL injection UNION attack, retrieving data from other tables

· 이 문제는 문제 이름에서 알 수 있듯이 UNION select 구문을 활용해 'administrator'라는 username 컬럼의 password를 users 테이블에서 가져오면 된다. · 또한 category에서 그런 취약점이 발생한다고 했으므로 처음엔 파라미터에 category변수를 넘겨주면서 그 내용을 'union select null .... from users where username='administrator'-- -'으로 정하고, 오류가 나지 않을 때까지 null의 개수를 늘려준다. · 오류가 나지 않는 컬럼의 개수를 찾아냈으면 그 중 password로 바꿨을 때 오류가 나지 않는 컬럼번호를 찾으면 administrator 계정의 비밀번호를 알아낼 수 있다.

web hacking 2022.05.22

layer7 과제 - webhacking.kr 42번

· 이 문제 사이트에 접속해보니 파일을 다운로드받을 수 있는 링크가 보이는 테이블이 화면에 출력됐는데, test.txt를 다운로드 해보니 별로 건질 내용이 없는 걸 보아하니 다운로드가 안 되는 flag.docx를 다운받아서 실행시키는 게 목적인 것 같다. · 일단 test.txt라도 다운받아서 열어봤지만, 별로 건질만한 내용이 없어서 그 다운로드 링크라도 메모장에 붙여넣어봤다. 그랬더니 맨 뒤에 파라미터로 down이라는 변수를 get방식으로 넘겨주고 있다는 사실을 알게 되었는데, 변수 내용이 'test.txt'가 아니라 암호화된 값이라서 당황했었다. 그러나 '='로 끝나는 암호는 대부분 base64로 인코딩 되어있다는 걸 알고 있었기 때문에 '이거라도 해보자'라는 마음으로 디코더에 올려봤다. 그랬더니....

web hacking 2022.05.22

layer7 과제 - webhacking.kr 28번

· 왠지 아닐 것 같았지만 일단 눈에 보이는 flag.php경로에 들어가보았다. flag.php경로에 들어갔다고 에러가 나진 않았지만, 화면에 아무것도 출력되지 않는 것을 보아, php파일이 실행되고 있는 것 같았다. 따라서 이 문제는 php 파일을 실행시키지 않고 읽어올 수 있는 방법을 찾는 문제라는 생각이 들었다. · 구글링을 하다보니 한 블로그를 발견했는데, 거기서는 특정폴더에서 php파일을 실행시키지 않게 하려면 .htaccess라는 파일을 하나 만들고, 거기 안에 php_value engine off라는 명령어를 넣어주면 php가 실행되지 않는다고 나와 있었다. · 그래서 그 방법대로 해보니 flag.php에 접속했을 때 코드가 실행되지 않았고, 코드 자체가 화면에 출력되었다.

web hacking 2022.05.22