From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Jul 14 10:10:05 2008 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8AA361065677 for ; Mon, 14 Jul 2008 10:10:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 6B7078FC1B for ; Mon, 14 Jul 2008 10:10:05 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.2/8.14.2) with ESMTP id m6EAA5Rp006691 for ; Mon, 14 Jul 2008 10:10:05 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.2/8.14.1/Submit) id m6EAA5gr006690; Mon, 14 Jul 2008 10:10:05 GMT (envelope-from gnats) Resent-Date: Mon, 14 Jul 2008 10:10:05 GMT Resent-Message-Id: <200807141010.m6EAA5gr006690@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Dax Labrador Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 50BC61065675 for ; Mon, 14 Jul 2008 10:04:56 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21]) by mx1.freebsd.org (Postfix) with ESMTP id 4537F8FC21 for ; Mon, 14 Jul 2008 10:04:56 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from www.freebsd.org (localhost [127.0.0.1]) by www.freebsd.org (8.14.2/8.14.2) with ESMTP id m6EA4u00007698 for ; Mon, 14 Jul 2008 10:04:56 GMT (envelope-from nobody@www.freebsd.org) Received: (from nobody@localhost) by www.freebsd.org (8.14.2/8.14.1/Submit) id m6EA4uj7007697; Mon, 14 Jul 2008 10:04:56 GMT (envelope-from nobody) Message-Id: <200807141004.m6EA4uj7007697@www.freebsd.org> Date: Mon, 14 Jul 2008 10:04:56 GMT From: Dax Labrador To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Cc: Subject: ports/125595: [UPDATE] security/rainbowcrack: patch X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jul 2008 10:10:05 -0000 >Number: 125595 >Category: ports >Synopsis: [UPDATE] security/rainbowcrack: patch >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: update >Submitter-Id: current-users >Arrival-Date: Mon Jul 14 10:10:05 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Dax Labrador >Release: FreeBSD 7.0-RELEASE i386 >Organization: >Environment: FreeBSD cerrgglobal.com 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Feb 24 19:59:52 UTC 2008 root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 >Description: Taking maintainership Updated the MASTER SITE Changed the maintainer Patch rainbowcrack to support NTLM, MD2, MD4 and RIPEMD160 algorithm. >How-To-Repeat: >Fix: Patch attached with submission follows: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # rainbowcrack/ # rainbowcrack/Makefile # rainbowcrack/distinfo # rainbowcrack/pkg-descr # rainbowcrack/pkg-plist # rainbowcrack/files # rainbowcrack/files/patch-HashAlgorithm.cpp # rainbowcrack/files/patch-HashAlgorithm.h # rainbowcrack/files/patch-HashRoutine.cpp # echo c - rainbowcrack/ mkdir -p rainbowcrack/ > /dev/null 2>&1 echo x - rainbowcrack/Makefile sed 's/^X//' >rainbowcrack/Makefile << 'END-of-rainbowcrack/Makefile' X# New ports collection makefile for: rainbowcrack X# Date created: 8 May 2006 X# Whom: bryan@freshdns.net X# X# $FreeBSD: ports/security/rainbowcrack/Makefile,v 1.4 2008/02/28 15:55:05 erwin Exp $ X# X XPORTNAME= rainbowcrack XPORTVERSION= 1.2 XCATEGORIES= security XMASTER_SITES= http://cerrg.com/dax/rainbowcrack/ X XMAINTAINER= semprix@bsdmail.org XCOMMENT= Hash cracker that precomputes plaintext - ciphertext pairs in advance X X.include X X.if ${ARCH} == "ia64" || ${ARCH} == "sparc64" XBROKEN= does not compile on ia64 or sparc64 X.endif X Xpost-patch: X @${REINPLACE_CMD} -e 's|g++|$$(CXX) $$(CXXFLAGS)|; s|\-O3||' \ X ${WRKSRC}/${MAKEFILE} X Xdo-install: X.for f in rcrack rtgen rtdump rtsort X ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/bin X.endfor X ${MKDIR} ${EXAMPLESDIR} X ${INSTALL_DATA} ${WRKSRC}/charset.txt ${EXAMPLESDIR} X X.include END-of-rainbowcrack/Makefile echo x - rainbowcrack/distinfo sed 's/^X//' >rainbowcrack/distinfo << 'END-of-rainbowcrack/distinfo' XMD5 (rainbowcrack-1.2.tar.gz) = bf806a618206147d83d26a7e162acfe1 XSHA256 (rainbowcrack-1.2.tar.gz) = d035cb12c0f762fac78f617dea246c5cf4b7503c3b173c3871663eaa3f02b6b4 XSIZE (rainbowcrack-1.2.tar.gz) = 16215 END-of-rainbowcrack/distinfo echo x - rainbowcrack/pkg-descr sed 's/^X//' >rainbowcrack/pkg-descr << 'END-of-rainbowcrack/pkg-descr' XRainbowCrack is a general propose implementation of Philippe Oechslin's faster Xtime-memory trade-off technique. X XIn short, the RainbowCrack tool is a hash cracker. A traditional brute force Xcracker tries all possible plaintexts one by one in cracking time. It is time Xconsuming to break complex passwords this way. The idea of time-memory trade-off Xis to do all cracking time computation in advance and store the result in files Xso called "rainbow table". It does take a long time to precompute the tables. XBut once the one time precomputation is finished, a time-memory trade-off Xcracker can be hundreds of times faster than a brute force cracker, with the Xhelp of precomputed tables. X XWWW: http://www.antsight.com/zsl/rainbowcrack/ END-of-rainbowcrack/pkg-descr echo x - rainbowcrack/pkg-plist sed 's/^X//' >rainbowcrack/pkg-plist << 'END-of-rainbowcrack/pkg-plist' Xbin/rcrack Xbin/rtgen Xbin/rtdump Xbin/rtsort X%%EXAMPLESDIR%%/charset.txt X@dirrm %%EXAMPLESDIR%% END-of-rainbowcrack/pkg-plist echo c - rainbowcrack/files mkdir -p rainbowcrack/files > /dev/null 2>&1 echo x - rainbowcrack/files/patch-HashAlgorithm.cpp sed 's/^X//' >rainbowcrack/files/patch-HashAlgorithm.cpp << 'END-of-rainbowcrack/files/patch-HashAlgorithm.cpp' X--- rainbowcrack-1.2/src/HashAlgorithm.cpp.orig 2003-11-23 00:33:22.000000000 -0500 X+++ rainbowcrack-1.2/src/HashAlgorithm.cpp 2008-07-14 09:51:30.000000000 -0400 X@@ -6,9 +6,14 @@ X X #include "HashAlgorithm.h" X X+#include "Public.h" X+ X #include X+#include X+#include X #include X #include X+#include X #ifdef _WIN32 X #pragma comment(lib, "libeay32.lib") X #endif X@@ -48,6 +53,29 @@ X des_ecb_encrypt((des_cblock*)magic, (des_cblock*)pHash, ks, DES_ENCRYPT); X } X X+void HashNTLM(unsigned char* pPlain, int nPlainLen, unsigned char* pHash) X+{ X+ unsigned char UnicodePlain[MAX_PLAIN_LEN * 2]; X+ int i; X+ for (i = 0; i < nPlainLen; i++) X+ { X+ UnicodePlain[i * 2] = pPlain[i]; X+ UnicodePlain[i * 2 + 1] = 0x00; X+ } X+ X+ MD4(UnicodePlain, nPlainLen * 2, pHash); X+} X+ X+void HashMD2(unsigned char* pPlain, int nPlainLen, unsigned char* pHash) X+{ X+ MD2(pPlain, nPlainLen, pHash); X+} X+ X+void HashMD4(unsigned char* pPlain, int nPlainLen, unsigned char* pHash) X+{ X+ MD4(pPlain, nPlainLen, pHash); X+} X+ X void HashMD5(unsigned char* pPlain, int nPlainLen, unsigned char* pHash) X { X MD5(pPlain, nPlainLen, pHash); X@@ -57,3 +85,8 @@ X { X SHA1(pPlain, nPlainLen, pHash); X } X+ X+void HashRIPEMD160(unsigned char* pPlain, int nPlainLen, unsigned char* pHash) X+{ X+ RIPEMD160(pPlain, nPlainLen, pHash); X+} END-of-rainbowcrack/files/patch-HashAlgorithm.cpp echo x - rainbowcrack/files/patch-HashAlgorithm.h sed 's/^X//' >rainbowcrack/files/patch-HashAlgorithm.h << 'END-of-rainbowcrack/files/patch-HashAlgorithm.h' X--- rainbowcrack-1.2/src/HashAlgorithm.h.orig 2003-11-23 00:33:18.000000000 -0500 X+++ rainbowcrack-1.2/src/HashAlgorithm.h 2008-07-14 09:51:44.000000000 -0400 X@@ -8,7 +8,13 @@ X #define _HASHALGORITHM_H X X void HashLM(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X+void HashNTLM(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X+ X+void HashMD2(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X+void HashMD4(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X void HashMD5(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X+ X void HashSHA1(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X+void HashRIPEMD160(unsigned char* pPlain, int nPlainLen, unsigned char* pHash); X X #endif END-of-rainbowcrack/files/patch-HashAlgorithm.h echo x - rainbowcrack/files/patch-HashRoutine.cpp sed 's/^X//' >rainbowcrack/files/patch-HashRoutine.cpp << 'END-of-rainbowcrack/files/patch-HashRoutine.cpp' X--- rainbowcrack-1.2/src/HashRoutine.cpp.orig 2003-11-23 00:33:16.000000000 -0500 X+++ rainbowcrack-1.2/src/HashRoutine.cpp 2008-07-14 09:52:05.000000000 -0400 X@@ -18,8 +18,12 @@ X // Notice: MIN_HASH_LEN <= nHashLen <= MAX_HASH_LEN X X AddHashRoutine("lm", HashLM, 8); X+ AddHashRoutine("ntlm", HashNTLM, 16); X+ AddHashRoutine("md2", HashMD2, 16); X+ AddHashRoutine("md4", HashMD4, 16); X AddHashRoutine("md5", HashMD5, 16); X AddHashRoutine("sha1", HashSHA1, 20); X+ AddHashRoutine("ripemd160", HashRIPEMD160, 20); X } X X CHashRoutine::~CHashRoutine() END-of-rainbowcrack/files/patch-HashRoutine.cpp exit >Release-Note: >Audit-Trail: >Unformatted: