본문 바로가기

전체 글40

[Dreamhack] baby-linux 문제 풀이 웹 해킹에 관한 문제이므로 http:// host : port로 접속한다. 우선, 이 웹 서비스에서 F12(관리자 모드)를 통해 정보를 확인해 보자. Baby Linux echo $() Submit Result 하지만, 위의 index.html 코드로 딱히, 힌트가 될만한 정보를 찾지 못하였다. 다시, 문제로 돌아가보자. 이 웹 서비스는 리눅스 명령어를 실행하는 사이트이다. 여기서, 우리가 찾아야 할 파일은 flag.txt이다. 이 파일의 위치를 찾기 전에 ls -l 명령어를 통해 작업 공간을 확인해 보자. 아래는 Result이다. total 24 -rwxr-xr-x 1 root root 884 Apr 21 2023 app.py drwxr-xr-x 3 root root 4096 Apr 21 2023 dr.. 2023. 11. 19.
리눅스 권한- 유저(user)와 그룹(group) 리눅스의 권한 시스템을 설명하기 위해서는 유저와 그룹에 대한 개념을 알아야 한다. 유저 : 이름과 고유한 사용자 ID(UID)를 가지고 있는 사용자이다. 그룹 : 여러 유저가 속할 수 있는 집단이다. 이 또한, 그룹 이름과 고유한 그룹 ID(GID)를 가지고 있다. 유저가 파일이나 디렉터리와 같은 시스템 자원에 접근할 때, 유저의 UID와 해당 유저가 속한 그룹의 GID를 확인하여 접근에 대한 권한을 가지고 있는지를 판단해서 제어를 한다. / etc / passwd 는 리눅스의 유저 정보를 담고 있는 텍스트 파일이다. 여기서, 각 사용자의 이름, 사용자 ID, 속해있는 그룹 ID 등의 정보를 포함한다. 아래와 같이 cat 명령어로 / etc / passwd 파일의 내용을 확인할 수 있다. user@use.. 2023. 11. 19.
리눅스 기본 명령어와 와일드 카드(wildcards), 리다이렉션(redirection), 파이프(pipe) 1. id : 현재 User의 ID와 User가 속해 있는 Group ID를 보여준다. user@user-virtual-machine:~$ id uid=1000(user) gid=1000(user) groups=1000(user),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),122(lpadmin),135(lxd),136(sambashare) 2. sudo apt update : 설치 가능한 소프트웨어 패키지를 업데이트한다. 어떤 버전을 설치할 수 있는 지도 업데이트 한다. user@user-VirtualBox:~$ sudo apt update [sudo] password for user: Get:1 http://security.ubuntu.com/ubuntu jamm.. 2023. 11. 18.
[Dreamhack] 64se64 문제 풀이 웹해킹 문제이므로 https:// host : port로 서버에 접속한다. http://host3.dreamhack.games:15250/ 그러면, 문제 설명에서 말하는 html 페이지가 나오는데, 소스 코드를 확인하기 위해서 관리자 모드(F12)로 들어가 준다. Welcome! 👋 위의 html 소스 코드에서 hidden 되어 있는 수상한 텍스트가 발견이 되었다. input 태그의 name 값에서 64 se64 인코딩 되어 있다는 사실과 함께, value 값을 보면 Base64로 인코딩(Encoding) 되어 있는 문자열을 확인할 수 있다. 그래서, value 값을 Base64로 디코딩(Decoding)하는 과정이 필요하다. https://www.base64decode.org/ko/ 위의 사이트에 들어.. 2023. 11. 17.