write-up(web)

    [Webhacking.kr] Challenge old-48 write-up

    [Webhacking.kr] Challenge old-48 write-up

    문제 화면 입니다. 파일과 댓글을 작성할 수 있습니다. 버프스위트로 확인해보면 파일 이름을 조작할 수 있습니다. 파일 이름을 조작해서 xss 코드를 작성할 수 있어서 xss문제인 줄 알았으나 결론적으론 읽어줄 봇이 없어서 xss문제가 아니였습니다. 이 문제에서 중요한 부분은 삭제할 때 입니다. 아파치는 리눅스를 기반으로 만들어져서 rm 명령어를 사용합니다. rm 명령어를 수행할 때 파일 이름을 사용하며 이 값은 사용자가 입력합니다. 사용자의 입력 값에 대한 검증 로직이 존재하지 않으므로 커맨드 인젝션이 가능하게 됩니다. 파일 이름을 아무렇게나 작성해준 뒤 ;ls 를 통해 커맨드 인젝션을 수행하면 플래그를 획득할 수 있습니다!

    [wargame.kr] fly me to the moon

    보호되어 있는 글입니다.

    [Webhacking.kr] Challenge old-37 write-up

    [Webhacking.kr] Challenge old-37 write-up

    문제 화면입니다. view-source 문제 소스 코드입니다. if 문 안을 실행시키려면 타이밍을 맞춰서 해당 시간의 문자열을 가진 파일을 업로드 해야 합니다. 이후 소켓을 통해 플래그를 쏴줍니다. 이를 받기 위해 포트포워딩을 해야 합니다. 버프스위트로 패킷을 잡아서 타이밍에 맞게 전달해주면 플래그가 나옵니다!

    [Webhacking.kr] NotSQL write-up

    [Webhacking.kr] NotSQL write-up

    문제에 접속한 뒤 네트워크 탭을 열고 링크들을 들어가보면 view.php 라는 친구가 무언가 처리를 해주고 있음을 알 수 있습니다. view.php로 가서 에러를 일으켜보면 GraphQL이라는 친구를 db로 사용하고 있음을 알 수 있습니다. 깃허브 치팅시트를 찾아보면 아래와 같은 코드가 있습니다. __schema{queryType{name},mutationType{name},types{kind,name,description,fields(includeDeprecated:true){name,description,args{name,description,type{kind,name,ofType{kind,name,ofType{kind,name,ofType{kind,name,ofType{kind,name,ofType..

    [Dreamhack] funjs write-up

    보호되어 있는 글입니다.