Sqlite 파일 포맷의 파일을 볼 수 있는 포터블 프로그램 입니다.

 

sqlitebrowser_200_b1_win.zip

 


저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'[+] 유틸리티' 카테고리의 다른 글

Sqlite Viewer  (3) 2012.01.24
Registry (9)에서 쓰였던 python 스크립트  (0) 2012.01.06
ROT-13 Script  (0) 2011.12.15
Hash Script  (0) 2011.12.14
BozoCrack  (0) 2011.12.02
  1. Cyber 2012.04.24 11:08 신고

    Sqlite입니다^^
    많은 분들이 SQLlite로 혼동하시더라구요 ㅎ 수정 부탁드립니다.

  2. 2017.01.09 17:42

    비밀댓글입니다

2자리씩 끊어서 뒤집어주는 python 스크립트...


로직한번 참 간단하다 lol

 
저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'[+] 유틸리티' 카테고리의 다른 글

Sqlite Viewer  (3) 2012.01.24
Registry (9)에서 쓰였던 python 스크립트  (0) 2012.01.06
ROT-13 Script  (0) 2011.12.15
Hash Script  (0) 2011.12.14
BozoCrack  (0) 2011.12.02
포렌식 공부 중 레지스트리에 어떠한 값이 ROT-13으로 인코딩되어 있다는 구문을 보고 한번 만들어 봤다.

알려진 ROT-13 기본알고리즘을 바탕으로 스크립트 코딩 했다.


#ROT13.py
#Made By MaJ3stY
#기본 ROT-13 사용

import sys

rot13 = {'a':'n', 'b':'o', 'c':'p', 'd':'q', 'e':'r', 'f':'s', 'g':'t', 'h':'u',
          'i':'v', 'j':'w', 'k':'x', 'l':'y', 'm':'z', 'n':'a', 'o':'b', 'p':'c',
          'q':'d', 'r':'e', 's':'f', 't':'g', 'u':'h', 'v':'i', 'w':'j', 'x':'k',
          'y':'l', 'z':'m', 'A':'N', 'B':'O', 'C':'P', 'D':'Q', 'E':'R', 'F':'S',
          'G':'T', 'H':'U', 'I':'V', 'J':'W', 'K':'X', 'L':'Y', 'M':'Z', 'N':'A',
          'O':'B', 'P':'C', 'Q':'D', 'R':'E', 'S':'F', 'T':'G', 'U':'H', 'V':'I',
          'W':'J', 'X':'K', 'Y':'L', 'Z':'M', ' ':' '}

def Encode(strings):
    e_result = ''

    for s in strings:
        for key, value in rot13.items():
            if key == s:
                e_result += value

    return e_result


def Decode(strings):
    d_result = ''

    for s in strings:
        for key, value in rot13.items():
            if value == s:
                d_result += key

    return d_result

def Main():
    print ''' You Want to Service Choice number
              1. ROT-13 Encode
              2. ROT-13 Decode
              3. Exit \n'''

    ch = input("Choice Number >>> ")

    if ch == 1:
        e_str = raw_input("Input Strings >>> ")
        print "Encode(%s) >>> " % e_str + Encode(e_str)
    elif ch == 2:
        d_str = raw_input("Input Strings >>> ")
        print "Decode(%s) >>> " % d_str + Decode(d_str)
    elif ch == 3:
        print "Bye, See you again!"
        sys.exit
    else:
        print "Invalied Number!"
        Main()


if __name__ == '__main__':
    Main()

 
저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'[+] 유틸리티' 카테고리의 다른 글

Sqlite Viewer  (3) 2012.01.24
Registry (9)에서 쓰였던 python 스크립트  (0) 2012.01.06
ROT-13 Script  (0) 2011.12.15
Hash Script  (0) 2011.12.14
BozoCrack  (0) 2011.12.02

# -*- coding: cp949 -*-
# hash.py                                        
# Md5, SHA, Base64에 관하여 동작하는 스크립트 입니다   
# 한번에 여러 값을 동시에 hash 할 수 있습니다.
# Made By MaJ3stY                            


from hashlib import *
from base64 import *
import sys


if __name__ == "__main__":
    print '''
              HI! You want to Service choice
              1. Md5 hash
              2. Sha1 hash
              3. Sha224 hash
              4. Sha256 hash
              5. Sha384 hash
              6. Sha512 hash
              7. Base64 Encode
              8. Base64 Decode
              9. World Exit

    usage : python [file] [strings 1] [string 2] 
        ex) python %s strings1, strings2\n''' % sys.argv[0]
    s = 1

    while s:
        try:
            ch = input("Number Choice >>> ")
            s = 0
        except:
            print "\nPlease, Choice Number"
            
    
    if ch == 1:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Md5 hash >>> " + md5(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 2:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Sha1 hash >>> " + sha1(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 3:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Sha224 hash >>> " + sha224(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 4:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Sha256 hash >>> " + sha256(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 5:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Sha384 hash >>> " + sha384(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 6:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Sha512 hash >>> " + sha512(sys.argv[i]).hexdigest()
             except: print "Input Strings"
    elif ch == 7:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Base64 Encode >>> " + b64encode(sys.argv[i])
             except: print "Input Strings"
    elif ch == 8:
        for i in range(1, len(sys.argv)):
             try: print "\n%s" % sys.argv[i] + " Base64 Decode >>> " + b64decode(sys.argv[i])
             except: print "Input Strings"
    elif ch == 9:
        print "Bye, See you again!"
        sys.exit()


[그림 - 실행화면]

코딩 환경 : Win7 SP1 Python 2.7.2
저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'[+] 유틸리티' 카테고리의 다른 글

Registry (9)에서 쓰였던 python 스크립트  (0) 2012.01.06
ROT-13 Script  (0) 2011.12.15
Hash Script  (0) 2011.12.14
BozoCrack  (0) 2011.12.02
Technote 7 취약점 점검 툴  (2) 2011.01.03

보안뉴스(http://www.boannews.com/media/view.asp?idx=28850&kind=1)를 보고 알게 된 툴인데 원리는 참 간단하면서도 위력을 상당합니다.

코드를 보시면 아시겠지만, MD5 해쉬값을 구글에서 검색하여 일치하는 평문을 찾는 방식 입니다.

해킹대회 문제 풀때나 워게임 하실때 많이 사용하는 것을 프로그램으로 만든 것이라고 보면 되겠는데요.

물론 100% 크랙 성공을 보장하는 것은 아니지만, 적은 노력으로 엄청난 성과물을 얻는 건 맞다고 보네요.

아래는 해당 프로그램 소스입니다. ruby 언어로 작성 되었네요.


require 'digest/md5'
require 'net/http'

class BozoCrack

  def initialize(filename)
    @hashes = Array.new
    @cache = Hash.new

    File.new(filename).each_line do |line|
      if m = line.chomp.match(/\b([a-fA-F0-9]{32})\b/)
        @hashes << m[1]
      end
    end
    @hashes.uniq!
    puts "Loaded #{@hashes.count} unique hashes"

    load_cache
  end

  def crack
    @hashes.each do |hash|
      if plaintext = @cache[hash]
        puts "#{hash}:#{plaintext}"
        next
      end
      if plaintext = crack_single_hash(hash)
        puts "#{hash}:#{plaintext}"
        append_to_cache(hash, plaintext)
      end
      sleep 1
    end
  end

  private

  def crack_single_hash(hash)
    response = Net::HTTP.get URI("http://www.google.com/search?q=#{hash}")
    wordlist = response.split(/\s+/)
    if plaintext = dictionary_attack(hash, wordlist)
      return plaintext
    end
    nil
  end

  def dictionary_attack(hash, wordlist)
    wordlist.each do |word|
      if Digest::MD5.hexdigest(word) == hash.downcase
        return word
      end
    end
    nil
  end

  def load_cache(filename = "cache")
    if File.file? filename
      File.new(filename).each_line do |line|
        if m = line.chomp.match(/^([a-fA-F0-9]{32}):(.*)$/)
          @cache[m[1]] = m[2]
        end
      end
    end
  end

  def append_to_cache(hash, plaintext, filename = "cache")
    File.open(filename, "a") do |file|
      file.write "#{hash}:#{plaintext}\n"
    end
  end

end

if ARGV.size == 1
  BozoCrack.new(ARGV[0]).crack
else
  puts "Usage example: ruby bozocrack.rb file_with_md5_hashes.txt"
end
저작자 표시 비영리 변경 금지
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

'[+] 유틸리티' 카테고리의 다른 글

ROT-13 Script  (0) 2011.12.15
Hash Script  (0) 2011.12.14
BozoCrack  (0) 2011.12.02
Technote 7 취약점 점검 툴  (2) 2011.01.03
vmware 이미지 다운받는 곳.  (3) 2009.12.07

+ Recent posts

티스토리 툴바