[프로그래머스] 문자열 다루기 기본
[프로그래머스] 문자열 다루기 기본
2020.10.06def solution(s): if len(s) == 4: if s.isdigit() == True: return True else : return False elif len(s) == 6: if s.isdigit() == True: return True else : return False else : return False isdigit 함수를 통해서 문자열이 숫자로만 이루어졌는지 확인할수 있다.
[프로그래머스] 두 정수 사이의 합
[프로그래머스] 두 정수 사이의 합
2020.10.06def solution(a, b): if a == b: return a else: if a > b : a, b = b, a return sum(range(a,b+1)) a와 b의 값이 같다면, a를 반화해주고, 그렇지 않다면, 먼저 a와 b가 어떤 관계인지 알아야 한다. 만약 a의 값이 b보다 크게 될경우, 작은 수를 앞에 놔줘야 하므로, a, b = b, a를 통해서 위치를 바꿔주고, sum함수를 통해서 두 정수 사이의 값들을 더해준다.
[프로그래머스] 가운데 글자 가져오기
[프로그래머스] 가운데 글자 가져오기
2020.10.06가운데 글자를 반환하는 함수를 작성해 보자. 먼저 문자열의 길이를 len 함수를 통해서 파악한 수, 짝수개인지 홀수개인지 확인하기 위해서 연산을 진행했다. value = num % 2 if value == 1: number = int(num / 2) result = s[number] return result else : number = int(num / 2) result = s[number - 1] + s[number] return result 만약에 홀수개이라면, number의 문자열 길이를 2로 나누고, 그 나눈값의 몫의 정수형을 되돌려준다. 하지만, 짝수개라면, 두글자를 반화해야하므로, 몫에서 1을 뺀값과 몫을 되돌려준다.
[프로그래머스] 서울에서 김서방 찾기
[프로그래머스] 서울에서 김서방 찾기
2020.10.06문제에서는 리스트를 주어지고, 그 리스트 안에는 무조건 김서방이 존재한다고 한다. 파이썬에서는 리스트에 특정값이 있다면, index 함수를 이용해서 어느 위치에 있는지 알수 있다. 다른 사람의 풀이를 보면, 이렇게 하는 방법도 있다고 한다.
MAGNET Axiom - User Guide (Korean) #13 클라우드 소스 이미징
MAGNET Axiom - User Guide (Korean) #13 클라우드 소스 이미징
2020.10.05[ Magnet Axiom Process ] (Reference : Magnet Axiom Korean User Guide) // Thanks Magnet Forensics Company! 참고 ) 본 Magnet Axiom Korean User Guide를 참고해도 된다고 허락을 구했습니다! AXIOM Process의 클라우드 증거 소스를 선택할 때 대상의 로그인 정보를 사용하여 다양한 클라우드 기반 플랫폼에서 증거를 얻을 수 있습니다. 일부 플랫폼에서는 Magnet AXIOM 가 스캔 중 발견하거나 자체적으로 생성하는 인증 토큰을 사용하여 대상의 계정에 로그인할 수도 있습니다. Magnet AXIOM Cloud의 서비스가 지원하는 것은 다음과 같습니다. Apple Box.com DropBox IMAP..
[ios Forensics] 아이폰 카카오톡 포렌식 - #2 DB 복호화
[ios Forensics] 아이폰 카카오톡 포렌식 - #2 DB 복호화
2020.10.05오랜만에 아이폰 카카오톡 포렌식에 관련해서 글을 쓰게 되었습니다 :) blog.system32.kr/160?category=824834 [ios Forensics] 아이폰 카카오톡 포렌식 - #1 DB 추출 오늘은 아이폰에서 카카오톡 DB를 추출해 보도록 하겠습니다. 먼저 준비물입니다! 1. 아이폰 (탈옥되어있어야한다.) 2. 분석이 가능한 컴퓨터 3. 근성 위 세가지만 가지고 계시다면 충분히 카카오� blog.system32.kr 저번 포스팅을 참고하시면 DB 추출 방법에 대해서 확인 하실수 있습니다. 먼저 복호화 하기 앞서, 복호화 방법에 대해서는 기본 구조만 알려줄것이며, 전체 소스는 공개하지 않습니다. ios용 카카오톡의 데이터 베이스를 복호화 하기 위해서는, 먼저 키값을 찾으셔야 합니다. 키값의..
[Ubuntu] 우분투에 Nodejs와 Yarn 설치
[Ubuntu] 우분투에 Nodejs와 Yarn 설치
2020.10.04Nodejs 설치 $ sudo apt-get update $ sudo apt-get install -y build-essential $ sudo apt-get install curl $ curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -- $ sudo apt-get install -y node.js 설치 버전 확인 $ node -v $ npm -v Yarn 설치 $ npm install -g yarn 설치 버전 확인 $ yarn -v
[HMCTF] Q 39번
[HMCTF] Q 39번
2020.10.04파일을 확인해 보자. 문제라는 바이너리가 주어졌고, HxD를 통해서 확인해본결과 시그니쳐가 PK임을 확인할 수 있다. xlsx 파일로 변환해주고 열어보자. FLAG : 디지털포렌식
[HMCTF] Q 16번
[HMCTF] Q 16번
2020.10.04문제 내용 : Find Key 문제 파일에는 Kakao.bmp 라는 파일이 존재한다. 단순히 스테가노 그래피 문제로 추정을 할 수 있다. 그래서 binwalk를 통해서 살펴보았다. Binwalk를 통해서 파일을 확인해본 결과 어디서 많이 본 것들이 확인된다. 바로 OpenStego 스테가노그래피 도구를 사용한 것이다. 바로 OpenStego를 통해서 추출한다. keyword.txt 파일이 추출됐음을 알 수 있다. FLAG : SEAGATE
[HMCTF] Q 22번
[HMCTF] Q 22번
2020.10.0415번 연계 문제라고한다. 15번 문제에서는 RecycleBin.zip 파일이 주어졌고, 휴지통 분석으로 추측 할 수 있다. 막상 압축을 해제하고 보면 파일이 존재하지 않는다. RecycleBin의 특성상 숨겨져 있기 때문이다. 폴더가 총 3개 존재하며 FTK Imager을 통해서 파일들을 추출한다. 파일들을 추출하고, 의심되는 파일을 확인한다. 파일에서 잔액으로 추정되는 파일을 찾을 수 있었고, 5월달의 금액을 확인한다. 잔액은 185000으로 확인이 되고, 파일 명을 확인해야 한다. 삭제된 파일의 경우 데이터는 $RI를 통해서 저장되고, 파일명의 경우 $II 로 저장이 된다. 파일 명을 확인 할 수 있었다. FLAG : 2020file.xlsx_185000
[HMCTF] Q 15번
[HMCTF] Q 15번
2020.10.04RecycleBin.zip의 MD5 해쉬값을 구하라고 한다. 간단히 HashTab을 사용해서 구할 수 있다. FLAG : EF6A629D231BDF9E8683A1D8B157695B
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #3 인터넷 분석(Edge)
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #3 인터넷 분석(Edge)
2020.09.29사용 프로그램 : Magnet Axiom Examine [ Internet Analyze ] 웹 관련된 증거가 총 25,959개가 발견이 되었다. 먼저 Edge 브라우저를 사용한 증거에 대해서 분석을 시작한다. [ Edge / Internet Explorer 10-11] 먼저 다운로드된 기록을 확인한다. 다운로드 기록을 보게 되면 총 5개의 다운로드 흔적을 발견할 수 있는데, 시스템에 악영향을 미칠 수 있는 파일들을 다운로드한 것으로 볼 수 있다. Index Access Time URL Redirect URL Download Path 1 2017-07-12 AM 9:34:32 https://www.dropbox.com/home?preview=toolkit1.zip https://dl.dropboxuser..
[system32.kr] RSA105
[system32.kr] RSA105
2020.09.28n : 1456399453977767831632133678171234488371152951818943413923368088226340960451415386969950170210432268247957389750387240663589048350690689681398208968664219200613089632993237447069071449467519364836978373192775472754878256372344268178057459663190141539526333696826139644446214112925571619731058027587768130485856270580768692138445256514885011326742866575803050603531467925243902296991329559730652..
[system32.kr] RSA104
[system32.kr] RSA104
2020.09.28import flag p=random_prime(2**1024,2**2048) q=random_prime(2**1024,2**2048) m=int("".join(map(lambda x: "%x"%ord(x),flag.RSA104)),16) d=2 n=p*q ph=lcm(p-1,q-1) while True: if gcd(d,ph) == 1: if gcd(inverse_mod(d,ph),ph) == 1: break d=random_prime(2**32,(2**196)//3) e = inverse_mod(d,ph) c=power_mod(m,e,n) print("n : %d"%n) print("e : %d"%e) print("c : %d"%c) ''' n : 30324775617121599690386242476..
[system32.kr] RSA103
[system32.kr] RSA103
2020.09.28n = 5231715459084393470799848298571662724907551105155011643478409857720815376071530326336270342836729521650887447021941945982636656440070124742186888747441191594335769416498023742698732970965424828646736630284201210289332908921486953996304711416523888581428373796251066637284669705431064756709446951784263451286224041886593958196097315171362093464992019585032314773768219556642601318406430558157354..
[system32.kr] RSA102
[system32.kr] RSA102
2020.09.28n = 17492679505633780091591558120277848189 e = 65537 c = 494188309631797349948909951854662875 RSA101 문제 ) blog.system32.kr/195 [system32.kr] RSA101 p = 11820547749265118607908336189140061659994883367758644383099900753008997316272341754974105712436833864387373302687964986221522289414610698068230842231006759 q = 207647838869071544764422239229558.. blog.system32.kr 101 문제에서는 p, q, e, c가 주어졌지만 이번엔 n..
[system32.kr] RSA101
[system32.kr] RSA101
2020.09.28p = 11820547749265118607908336189140061659994883367758644383099900753008997316272341754974105712436833864387373302687964986221522289414610698068230842231006759 q = 2076478388690715447644222392295584753007140199740835763821170999934221864895193172716587341806099928941239417181782165665806324184552950128351328886814107 e = 65537 c = 15175007508230661949213125841853820919948368859221761481847700530..
[2020 DFC] 2020 디지털포렌식 챌린지 - 104 - Event Log Analysis
[2020 DFC] 2020 디지털포렌식 챌린지 - 104 - Event Log Analysis
2020.09.281. Why did the user fail to Windows backup? (15 points)2. Find all connected wireless AP SSIDs. (15 points)3. Find the manufacturer, model and serial number of the external storage device(s) that the user connected. (20 points)4. Write the list of ZIP files detected by AV on the user’s PC. (20 points)5. When did the user perform the VPN connection and disconnection? (yyyy-mm-dd hh:mm UTC + 0) (3..
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #2 운영체제 정보
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #2 운영체제 정보
2020.09.27[ 시나리오 ] OO회사는 국토해양부로부터 국토이용계획에 관한 용역과제 수행 경력이 있는 부동산 개발 업체이다. 최근 OO회사의 IT관리자 ◇◇◇는 다크 웹을 통해 수개월 안에 개발 예정 중인 OO회사의 도시개발 계획 자료가 불법 거래된다는 제보를 받았다. 이 도시개발 계획에는 국가에서 부지를 매입해야 하는 위치와 가격정보 등이 포함되어 있어 사전 유출될 경우 부동산 중개인 등에게 악용될 수 있다. 이에 따라 위 OO회사에서는 국토해양부로부터 개발계획을 수주받은 자료가 저장되어 있던 담당자 △△△의 PC를 귀하에게 분석 의뢰하였다. 당신은 분석 의뢰받은 PC 하드디스크로부터 자료의 사전 유출경로 및 범인의 단서를 찾을 수 있는 증거를 수집하고, 이를 분석∙설명하는 취지로 『증거분석 보고서』를 작성하여 제..
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #1 이미징
[Magnet Axiom] 제 5회 디지털 범인을 찾아라 분석 #1 이미징
2020.09.27오늘은 "제5회 디지털 범인을 찾아라" 대회의 분석을 작성해보겠습니다. [2020-09-27] [ 시나리오 ] OO회사는 국토해양부로부터 국토이용계획에 관한 용역과제 수행 경력이 있는 부동산 개발 업체이다. 최근 OO회사의 IT관리자 ◇◇◇는 다크 웹을 통해 수개월 안에 개발 예정 중인 OO회사의 도시개발 계획 자료가 불법 거래된다는 제보를 받았다. 이 도시개발 계획에는 국가에서 부지를 매입해야 하는 위치와 가격정보 등이 포함되어 있어 사전 유출될 경우 부동산 중개인 등에게 악용될 수 있다. 이에 따라 위 OO회사에서는 국토해양부로부터 개발계획을 수주받은 자료가 저장되어 있던 담당자 △△△의 PC를 귀하에게 분석 의뢰하였다. 당신은 분석 의뢰받은 PC 하드디스크로부터 자료의 사전 유출경로 및 범인의 단서..