• Docs

    Side Channel Attack on WWW 2

    이전 게시물에서 쿠키의 Samesite 속성이 Lax가 아닐 경우에 어떤 Side Channel Attack 공격이 가능한지 알아보았습니다.크롬이 80버전으로 업데이트되면서 Lax가 기본값이 되어 심각도가 충분히 떨어졌다고 생각하여 공개했는데, COVID-19때문에 해당 조치가 rollback 되었죠. 기왕 공개한거 해당 취약점을 여러 버그바운티 프로그램을 통해 제보한 결과를 보면서, 이 기술 부채의 심각성을 직접 느껴봅시다.각 사례가 어느 벤더인지는 명시하지 않겠습니다. 첫 번째 사례입니다.응답코드를 사용해서 권한 여부를 판별할 수…

  • Docs

    Side Channel Attack on WWW

    서문 약 2개월 전 크롬 80버전이 릴리즈 되었습니다.여러 변경이 있었지만 가장 중요한 패치는 역시 쿠키의 Samesite 옵션의 기본값이 Lax로 변경된 것이었죠.그런데 80버전이 릴리즈되기 전까지, 다시 말해 Samesite=Lax가 되기 전까지 셀 수 없을 정도로 많은, 우리가 아는 대부분의 웹사이트에 특정 종류의 취약점이 존재했습니다.과연 어떤 취약점이 존재했는지 알아보고, 그렇다면 Samesite=Lax 가 이 취약점으로부터 안전해지는 완벽한 대안인지 고민해봅시다. https://blog.chromium.org/2020/04/temporarily-rolling-back-samesite.htmlCOVID-19때문에 해당 조치가 rollback 되었습니다.이것은…

  • Docs

    Host split attack

    BlackHat, Defcon 시즌이 끝났습니다. 블랙햇 USA는 세계에서 가장 큰 해킹 컨퍼런스인만큼, 매년 흥미로운 발표가 있기 마련이죠. 올해에는 MS의 한 연구원이 Host split attack 이라는 발표를 내놓았는데 내용이 재미있어 정리해서 올립니다. 이 공격을 이해하기 위해서는 먼저 IDN(Internationalized Domain Name)에 대해서 이해를 해야합니다.IDN은 아스키코드가 아닌 다른 문자를 포함하는 도메인을 의미하는데, 가끔 보이는 어쩌구.한국 같은 도메인 역시 한글은 아스키코드가 아니므로 IDN입니다.이 IDN은 단지…

  • Docs

    Webhacking Techtree

    2019년 중순 기준으로 해킹의 분야 중에서 수 년 째 포너블의 강세가 계속되고 있습니다.그러나 실무에서는 웹해킹의 비중이 아직도 압도적으로 높습니다.모의해킹 업무를 나가면 90%는 웹이고 나머지 10%는 모바일이더라 라는 말도 있죠.정립된 웹해킹 공부 순서가 필요하다고 생각해 글을 작성합니다. 먼저 모든 해킹에 해당되는 말이지만, 해킹은 프로그래머의 실수를 잡아내는 학문이기에 프로그래밍 능력이 선결되어야 합니다.따라서 여러분이 첫 번째로 해야 할 일은 프로그래밍 능력을 기르기 위해…

  • Docs

    Relative Path Overwrite

    개요 Relative Path Overwrite (RPO) 는 브라우저와 서버가 상대경로를 해석하는 과정에서의 동작 차이를 악용한 최신 공격기법이다.이 기법을 이해하기에 앞서 URL의 상대경로와 절대경로의 차이에 대해 알아보자.절대경로는 프로토콜과 도메인 이름을 포함한 목적지 주소의 전체 URL을 의미한다.반면에 상대경로는 목적지의 프로토콜이나 도메인을 특정하지 않는다. 절대경로https://rubiya.kr/static/ 상대경로static/somedirectory 여기서 상대경로의 2가지 사용법이 존재한다.첫 번째로 우리는 현재 경로에서 “xyz”라는 디렉토리를 찾을 수 있다.두 번째로 directory traversal 기술을…

  • Docs

    브라우저 XSS 필터 우회의 모든 것

    이 글은 XSS Auditor, XSS 필터의 우회에 대해 다루고 있다.대상은 Chrome, Firefox, Edge, IE11, Safari, Opera 이다.만약 당신이 취약점 진단 업무를 하고있다면 XSS 필터의 우회가 가능하다는 사실을 널리 알리기 위해서 더 많은 우회 방법을 찾아서 알려주십시오.또한 이 글은 일반적인 상황에서 우회 가능한 케이스에 대해서만 다루고 있다.여기에서 다루지 않더라도 실제 상황에서는 더 다양한 방법이 있을 수 있다.당신이 보안 담당자라면 XSS 필터의…

  • Docs

    strtoupper(<ſcript>)

    해당 문서는 위의 트윗을 보고 추가적인 연구를 진행해 Theori 내부 세미나에서 발표한 결과물이다.(사장님 허락받고 올린다) (%C4%B1) 는 LATIN SMALL LETTER DOTLESS I를, (%E2%84%AA) KELVIN SIGN을, (%C5%BF) 는 LATIN SMALL LETTER LONG S를, (%C4%B0) 는 LATIN CAPITAL LETTER I WITH DOT ABOVE 를 의미한다. 그런데 자바스크립트 환경에서 %C4%B1를 touppercase() 하면 == “I”가, %c5%bf를 touppercase()하면 == “S”가 되고, %E2%84%AA 를 tolowercase() 하면…

  • WriteUp

    holyshield 2012 Web1 writeup

    Web1 서버는 iis 7.5버전이 설치되어 있었고 ‘This website has been attacked. So, password link is missing now’ 즉, 패스워드 링크를 찾는게 문제였기에 IIS Short File/Foder Name Disclosure 라는 취약점으로 삽질을 했다. 관련 문서 : http://soroush.secproject.com/downloadable/microsoft_iis_tilde_character_vulnerability_feature.pdf /ip/admin/*~1*/.aspx 로 접속했을때 Error Code 0x00000000 가 뜨는것으로 보아 admin디렉토리에 1개 이상의 파일이나 폴더가 존재한다는것을 알 수 있었고 /ip/a*~1*/.aspx /ip/b*~1*/.aspx /ip/c*~1*/.aspx 처럼 한 글자씩 bruteforce해서…

  • WriteUp

    suninatas.com sqli vuln

    suninatas.com 사이트가 처음 만들어졌을때 일체의 시큐어코딩이 적용되지 않아서 sqli, 파일다운로드 공격을 성공해서 Hall of fame 에 이름을 올렸었다. 그런데 올해 초에 다시 한번 SQL Injection 을 성공했는데 mssql 환경에서의 공격경험이 재미있었던지라 공격 과정을 포스팅하겠다. 취약점은 QnA 게시판의 글 수정 기능에서 터진다. 글 수정을 눌러보면 http://suninatas.com/board/view.asp?licen=add_del&idx=2592&num=313&divi=Free 이렇게 뜨는데 idx 인자를 조작이 가능하다. mssql은 서로 다른 타입의 값을 비교해주면 앞의 인자를 에러메세지에서…

  • WriteUp

    webhacking.kr sqli vulns

    45번 문제의 소스다 $_GET[id]=mb_convert_encoding($_GET[id],’utf-8′,’euc-kr’); $data=@mysql_fetch_array(mysql_query(“select id from members where id=’$_GET[id]’ and pw=md5(‘$_GET[pw]’)”)); if(eregi(“admin”,$_GET[id])) exit(); if(eregi(“from”,$_GET[id])) exit(); if(eregi(“union”,$_GET[id])) exit(); if(eregi(“limit”,$_GET[id])) exit(); if(eregi(“union”,$_GET[pw])) exit(); if(eregi(“pw”,$_GET[pw])) exit(); if(eregi(“=”,$_GET[pw])) exit(); if(eregi(“>”,$_GET[pw])) exit(); if(eregi(“”,$_GET[pw])) exit(); if(eregi(“