내가 사용하는 네이버 웨일 브라우저에서 이벤트를 한다.

https://whale.naver.com/event2018-christmas/?fbclid=IwAR3qO6IpMrvs8sQePrMsPkgxHUIxhFcB_7ijs5ID_igctFM8AnMXrrsDvJs


이벤트 선물이 맥북 에어 128GB와 아이폰 XS 64GB ,에어팟, 네이버페이 돈을 준다. 솔깃하고 페이스북을 보고 참여하게 되었다.


친구의 추천으로 네이버 웨일을 사용하게 되었는데 먼저 가장 편리한게 다른 브라우저와 달리 즐겨찾기를 할 때 위에 상단에 뜨는데 이것도 디렉토리에 넣어서 쉽게 쉽게 구분할 수 있어서 정말 좋고 사이바바에 자주 쓰는 파파고, 페이스북, 유튜브 등을 넣어놔서 더욱 더 편리하게 이용할 수 있어서 좋습니다. 공부를 할 때는 스페이스 기능을 이용해 화면 2개로 나눠서 필요할거 창 하나 띄우고 하나는 할 거 할 때 정말 유용했어요. 제가 이 네이버 웨일을 사용하는 걸 보고 저희 학교 애들도 네이버 웨일을 사용하고 있습니다. 그리고 무엇보다 좋았던게 다양한 테마와 새 탭을 눌렀을 때 시계 출현..! 할 일 적기나 날씨 실시간검색어가 나왔던게 정말 좋았습니다. 네이버 웨일 화이팅! 



'일상' 카테고리의 다른 글

메리 웨일 크리스마스!  (0) 18:52:14
2018/12/9 계획  (0) 2018.12.09
2018년 12월 2일  (0) 2018.12.02
공부할것들  (0) 2018.10.28
2018년 2학기 기말 전  (0) 2018.10.14
github 블로그 만들었습니다  (0) 2018.09.13

2018 OtterCTF Writeup

1 - What the password? - 100pt

you got a sample of rick's PC's memory. can you get his user password?

format: CTF{...}

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 hashdump -s 0xfffff8a0016d4010

Volatility Foundation Volatility Framework 2.6
Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
Rick:1000:aad3b435b51404eeaad3b435b51404ee:518172d012f97d3a8fcc089615283940:::

hivescan 해준걸 hashdump떠서 봤는데 이렇게 3개의 계정이 나왔다.

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 lsadump
Volatility Foundation Volatility Framework 2.6
DefaultPassword
0x00000000 28 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   (...............
0x00000010 4d 00 6f 00 72 00 74 00 79 00 49 00 73 00 52 00   M.o.r.t.y.I.s.R.
0x00000020 65 00 61 00 6c 00 6c 00 79 00 41 00 6e 00 4f 00   e.a.l.l.y.A.n.O.
0x00000030 74 00 74 00 65 00 72 00 00 00 00 00 00 00 00 00   t.t.e.r.........

DPAPI_SYSTEM
0x00000000 2c 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ,...............
0x00000010 01 00 00 00 36 9b ba a9 55 e1 92 82 09 e0 63 4c   ....6...U.....cL
0x00000020 20 74 63 14 9e d8 a0 4b 45 87 5a e4 bc f2 77 a5   .tc....KE.Z...w.
0x00000030 25 3f 47 12 0b e5 4d a5 c8 35 cf dc 00 00 00 00   %?G...M..5......

lsadump 떠줘서 가져왔다.

예시 : https://www.aldeid.com/wiki/Volatility/Retrieve-password

lsadump plugin : https://github.com/volatilityfoundation/volatility/blob/master/volatility/plugins/registry/lsadump.py

FLAG : CTF{MortyIsReallyAnOtter}


2 - General Info - 75pt

Let's start easy - whats the PC's name and IP address?

format: CTF{flag}

PC name

hive스캔을 먼저 떠줬다.

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 hivescan

그리고 컴퓨터 이름이 저장된 레지스트리로 가서 가져왔다.

컴퓨터 이름 레지스트리 : HKLM\SYSTEM\ControlSet00X\Control\ComputerName\ActiveComputerName

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 printkey -o 0xfffff8a000024010 -K \ControlSet001\\Control\\ComputerName\\ActiveComputerName
Volatility Foundation Volatility Framework 2.6
Legend: (S) = Stable   (V) = Volatile

----------------------------
Registry: \REGISTRY\MACHINE\SYSTEM
Key name: ActiveComputerName (V)
Last updated: 2018-08-04 19:26:11 UTC+0000

Subkeys:

Values:
REG_SZ       ComputerName   : (V) WIN-LO6FAF3DTFE

FLAG : CTF{WIN-LO6FAF3DTFE}

PC IP

netscan 해줘서 local Adress를 가져왔다.

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 netscan

FLAG : CTF{192.168.202.131}


3 - Play Time - 50pt

Rick just loves to play some good old videogames. can you tell which game is he playing? whats the IP address of the server?

format: CTF{flag}

Game name

프로세스 목록들보면 LunarMs.exe라는 게임을 하고 있었다.

FLAG : CTF{LunarMS}

Server IP

netscan따서 192.168.202.131과 LunarMs의 Foreign Address를 가져왔다.

FLAG : CTF{77.102.199.102}


4 - Name Game - 100pt

We know that the account was logged in to a channel called Lunar-3. what is the account name?

format: CTF{flag}

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 memdump -p 708 -D .

먼저 LunarMS 게임을 덤프 떠서 가져온다. LunarMS의 pid는 708이다

strings -a 708.dmp > prob3.txt

거기서 strings로 따서 Lunar-3를 검색해보면 Lunar-3 밑에 0tt3r8r33z3 가 적혀있었다. FLAG같아서 인증했다.

FLAG : CTF{CTF{0tt3r8r33z3}}


5 - Name Game2 - 150pt

From a little research we found that the username of the logged on character is always after this signature: 0x64 0x??{6-8} 0x40 0x06 0x??{18} 0x5a 0x0c 0x00{2} What's rick's character's name?

format: CTF{...}

No Solve...


6 - Silly Rick - 100pt

Silly rick always forgets his email's password, so he uses a Stored Password Services online to store his password. He always copy and paste the password so he will not get it wrong. whats rick's email password?

format: CTF{flag}

복사 붙여넣기를 사용한다고 했다. clipboard 플러그인을 사용해서 해당 값을 가져왔다.

$ vol.py -f OtterCTF.vmem --profile=Win7SP1x64 clipboard
Volatility Foundation Volatility Framework 2.6
Session   WindowStation Format                         Handle Object             Data
---------- ------------- ------------------ ------------------ ------------------ --------------------------------------------------
        1 WinSta0       CF_UNICODETEXT               0x602e3 0xfffff900c1ad93f0 M@il_Pr0vid0rs
        1 WinSta0       CF_TEXT                         0x10 ------------------
        1 WinSta0       0x150133L             0x200000000000 ------------------
        1 WinSta0       CF_TEXT                           0x1 ------------------
        1 ------------- ------------------           0x150133 0xfffff900c1c1adc0

FLAG : CTF{M@il_Pr0vid0rs}


7 - Hide And Seek - 100pt

The reason that we took rick's PC memory dump is because there was a malware infection. Please find the malware process name (including the extension)

BEAWARE! There are only 3 attempts to get the right flag!

format: CTF{flag}

FLAG : CTF{vmware-tray.exe}


10 - Bit 4 Bit - 100pt

We've found out that the malware is a ransomware. Find the attacker's bitcoin address.

format: CTF{...}

vol.py -f OtterCTF.vmem --profile=Win7SP1x64 procdump -D dump/ -p 3720

https://transfer.sh/Dss8z/hidd.exe 이걸 사용해 비트코인 주소를 뽑아낼 수 있다.

FLAG : CTF{1MmpEmebJkqXG8nQv4cjJSmxZQFVmFo63M}


11 - Graphics is for the weak - 150pt

There's something fishy in the malware's graphics.

format: CTF{...}

dnspy를 이용해서 열면 확인할 수있다.

FLAG : CTF{S0_Just_M0v3_Socy}

'CTF WriteUp' 카테고리의 다른 글

2018 OtterCTF Writeup  (0) 2018.12.11
2018HCTF equation  (0) 2018.12.04
2018AjouCTF EasyPeasy  (0) 2018.12.04

https://github.com/gentilkiwi/mimikatz/releases


mimikatz.pdf


mimikatz 사용법과 메타익스플로잇에 관한 설명



Volatility mimikatz plugin


https://github.com/volatilityfoundation/community/blob/master/FrancescoPicasso/mimikatz.py


vol.py --plugins=./plugin/ -f .vmem --profile=Win7SP1x64 mimikatz


'Hacking' 카테고리의 다른 글

mimikatz  (0) 2018.12.11

시험끝나고 할거


블로그 공모전


포트폴리오 준비 + 자소서 https://github.com/realsung/Vol_Automation-Tool (마무리하기)


Python Angr 정리 + 문제 좀 풀어보기 (simulation도 찾아보기)


직계 프로젝트 준비


동아리 시연회 준비


ROOT CTF 대회 2018.12.22 09:00 ~ 2018.12.23 21:00 (36시간)


크리스마스 CTF 대회


Github Commit


'일상' 카테고리의 다른 글

메리 웨일 크리스마스!  (0) 18:52:14
2018/12/9 계획  (0) 2018.12.09
2018년 12월 2일  (0) 2018.12.02
공부할것들  (0) 2018.10.28
2018년 2학기 기말 전  (0) 2018.10.14
github 블로그 만들었습니다  (0) 2018.09.13

암스트롱수

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <stdio.h>
 
int main(){
    int n,m,i,copy,sum;
    scanf("%d %d",&n,&m);
    for(i=n; i<=m; i++){
        copy=i;
        sum=0;
        while(copy>0){
            sum+=(copy%10)*(copy%10)*(copy%10);
            copy= copy/10;
        }
        if(sum==i)
            printf("%d ",i);
    }
 
    return 0;
}
cs



최단거리

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
int main(){
    int n,*arr,min,i;
    scanf("%d",&n);
    arr =(int*)malloc(sizeof(int)*n);
    for(i=0; i<n; i++){
        scanf("%d",arr+i);
    }
    min = arr[1- arr[0];
    for(i=2; i<n; i++){
        if(arr[i] - arr[i-1< min){
            min = arr[i] - arr[i-1];
        }
    }
    printf("%d",min);
    return 0;
 
}
cs



레고블럭

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
#include <stdio.h>
#include <stdlib.h>
 
int main(){
    int n, *arr, max, i, cnt=1;
    scanf("%d",&n);
    arr = (int*)malloc(sizeof(int)*n);
    for(i=0; i<n; i++){
        scanf("%d", arr+i);
    }
    max = arr[0]; //max는 앞에 보이는 블럭의 높이
    for(i=1; i<n; i++){ //블럭을 좌>우로 순회 (왼쪽이 앞)
        if(arr[i] > max){ //앞에 보이는 블럭보다 뒤에 블럭이 더 크면
            max = arr[i]; //max를 바꿔줌
            cnt++//보이는 블록수 +1
        }
    }
    printf("%d " ,cnt); //왼쪽에서 봤을 때 블록 수
    cnt = 1;
    max = arr[n-1];
    for(i=n-2; i>=0; i--){ //블럭을 우>좌로 순회(오른쪽이 앞)
        if(arr[i] > max){
            max = arr[i];
            cnt++;
        }
    }
    printf("%d", cnt);
    return 0;
}
cs


'C > 알고리즘' 카테고리의 다른 글

C언어 암스트롱수,최단거리,레고블럭  (0) 2018.12.06

+ Recent posts

티스토리 툴바