Today I Learned_DreamHack

최지웅·2023년 9월 21일
0

Today I Learned

목록 보기
4/238

오늘은..조금 쉬엄쉬엄했다...

  1. 시스템 해킹 stage 4 문제를 최대한 분석해보았다.

/home/shellbasic/flage_name_is_loooooong경로가 저장되어있는 곳 찾기
main+51 mmap@plt함수실행
main+64 init call
main+75 banned_execve
main+95 printf@plt호출
main+117 read@plt호출
qword ptr [rbp - 0x10] 에 저장한다.
x/s 0x7ffff7e82a37에 "H=
main+139 call rdx ; //<0x7ffff7ffa000>
0x7ffff7ffa000 에서 push 0x6a 뒤 or and and ...연산시작. or연산에서 막힌것을 보니 여기까지인듯
0x7ffff7ffa000에 입력값 저장.

main+139에서 si로 내부 들어가니 새로운 코드. rdx에 저장된 함수 내부 로직인듯 
0x7ffff7ffa000    cmp    rax, 0x6b73617b
0x7ffff7ffa006    jge    0x7ffff7ffa012                <0x7ffff7ffa012>
 ↓
0x7ffff7ffa012    add    byte ptr [rax], al

H={ask} 입력값 기준 우선 jge를 통과, 다만 바로 다음줄에서 막힘 
H={hello} 새로운 내부로직
0x7ffff7ffa000    cmp    rax, 0x6c65687b
0x7ffff7ffa006    insb   byte ptr [rdi], dx
0x7ffff7ffa007    outsd  dx, dword ptr [rsi]
0x7ffff7ffa008    jge    0x7ffff7ffa014                <0x7ffff7ffa014>
 ↓
0x7ffff7ffa014    add    byte ptr [rax], al 

결국 풀진 못했지만 경로명을 아스키코드형식으로 나누어 stack에 넣어야 하는 것과 만들어진 코드를 셸코드로 만들어서 입력해야한다는 정도?

그래서 문제는 짬짬히 도전해보기로 하고 웹해킹 트랙을 들어갔다.

  1. 웹해킹 stage 2진행중
    HTTP요청의 시작줄은 Method(GET) 요청 URI HTTP버전으로 구성된다.
    HTTP응답의 시작줄은 HTTP버전 statusCode 처리사유로 구성된다.
    StatusCode는 3자리 중 첫번째 자리수에 따라 5가지 클래스로 분류된다.
    1xx요청을 제대로 받아 처리가 진행중
    2xx
    요청이 제대로 처리됨(200 성공)
    3xx요청을 처리하려면 클라이언트가 추가동작을 취해야함(302 다른URI)
    4xx
    클라이언트가 잘못된 요청을 보내 실패(400 문법오류 401인증오류 403권한오류 404리소스가 없음)
    5xx_서버에 에러가 발생하여 처리실패, 클라이언트 요청은 유효했음.

기본적인 HTTP프로토콜에 대한 이해를 공부하고 있다.

  1. 랜섬웨어 제작 회의
    보안동아리 1주차 회의날인데 python의 Fernet모듈을 암호화 복호화에 사용하기로 했고
    특정 경로의 파일을 암호화해보고 나아가 MBR(Master Boot Record)영역을 암호화하여 부팅시에도 뜨게하는 PETYA랜섬웨어 방식도 고려해보기로 했다.
    큰 틀은 잡혀진 상태라 우선 git을 파두고 다음 주차까지 자유주제로 기술블로그, 논문, 랜선웨어 코드 등을 리뷰하는 시간을 갖도록 했다.
  2. 데이터베이스 학습공동체 1주차 오답노트 작성
    원래 어제까지였는데 호다닥 해서 냈다.. NoSQL이 비관계형이고 비정형데이터를 다루기에 원활한 복구나 안정성보장을 못한다는 것, 데이터 베이스 정의중에 통합데이터와 저장데이터를 햇갈려했는데 통합데이터는 데이터를 통합하여 중복을 최소화 한다는 것이었고 저장데이터는 중복을 최소화하여 저장한다는 말이 아니라 컴퓨터가 접근할 수 있는 매체에 저장된다는 것이었다.
    통합데이터가 중복을 방지하는 의미라는 것은 혼동을 막기위해 외워둬야겠다..!
profile
이제 3학년..

0개의 댓글