Bug 167654 - Review Request: crack: password cracker
Summary: Review Request: crack: password cracker
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Tom "spot" Callaway
QA Contact: David Lawrence
URL: http://www.crypticide.com/users/alecm...
Whiteboard:
Depends On:
Blocks: FE-ACCEPT
TreeView+ depends on / blocked
 
Reported: 2005-09-06 16:35 UTC by Christian Iseli
Modified: 2013-03-04 16:54 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-09-07 09:39:00 UTC
Type: ---
Embargoed:
kevin: fedora-cvs+


Attachments (Terms of Use)
use words to make a richer dict 1 (1.08 KB, patch)
2005-09-06 18:35 UTC, Tom "spot" Callaway
no flags Details | Diff

Description Christian Iseli 2005-09-06 16:35:29 UTC
Spec Name or Url: ftp://ftp.licr.org/pub/software/unix/crack.spec
SRPM Name or Url: ftp://ftp.licr.org/pub/software/unix/crack-5.0a-0.src.rpm
Description:
Crack is a password guessing program that is designed to quickly locate
insecurities in Unix (or other) password files by scanning the contents of a
password file, looking for users who have misguidedly chosen a weak login
password.

This package creates a group named "crack" and the Crack program puts all
its results in the /var/lib/crack/run directory, which belongs to that group.
Only users in the crack group can use this package.

This is a bit dusty, but still runs quite well.  It's part of many security
SOP, and I think it would be useful to have it in Extras.

Builds in mock.  Runs fine on x86 and x86_64.  Couldn't test ppc.
Rpmlint seems generally happy, but goes a bit haywire on the dictionnary files,
because they start with a hashbang combination...

The LICENSE file is pretty much a verbatim copy of the Artistic license (checked using diff...) so I think it's fine.

Please review :-)

Comment 1 Tom "spot" Callaway 2005-09-06 18:34:22 UTC
Review:

Good:

- rpmlint checks return... well... lots of freaking noise.
E: crack wrong-script-interpreter /var/lib/crack/dict/1/chars.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/chars.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/male-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/male-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/dosref.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/dosref.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/etc-hosts.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/etc-hosts.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/famous.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/famous.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/places.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/places.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/oz.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/oz.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/junk.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/junk.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.german.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.german.dwg 0644
E: crack non-standard-gid /var/lib/crack/run/dict/1.dwg.gz crack
E: crack non-readable /var/lib/crack/run/dict/1.dwg.gz 0640
E: crack wrong-script-interpreter /var/lib/crack/dict/1/asteroids.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/asteroids.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/lcarrol.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/lcarrol.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/roget.words.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/roget.words.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/cis.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/cis.dwg 0644
E: crack non-standard-gid /var/lib/crack/run/dict crack
E: crack non-standard-dir-perm /var/lib/crack/run/dict 02770
E: crack wrong-script-interpreter /var/lib/crack/dict/1/myths-legends.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/myths-legends.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/trek.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/trek.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/dico.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/dico.dwg 0644
E: crack script-without-shellbang /var/lib/crack/scripts/netcrack
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.japanese.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.japanese.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/germanl.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/germanl.dwg 0644
E: crack non-standard-gid /var/lib/crack/run/dict/2.dwg.gz crack
E: crack non-readable /var/lib/crack/run/dict/2.dwg.gz 0640
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.swedish.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.swedish.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/abbr.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/abbr.dwg 0644
E: crack non-standard-gid /var/lib/crack/run/dict/.dictmade crack
W: crack hidden-file-or-dir /var/lib/crack/run/dict/.dictmade
E: crack non-readable /var/lib/crack/run/dict/.dictmade 0640
E: crack wrong-script-interpreter /var/lib/crack/dict/3/koran.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/koran.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/assurnames.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/assurnames.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/chinese.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/chinese.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/colleges.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/colleges.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/jargon.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/jargon.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/unabr.dict.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/unabr.dict.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/domains.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/domains.dwg 0644
E: crack non-standard-gid /var/lib/crack/run/dict/3.dwg.gz crack
E: crack non-readable /var/lib/crack/run/dict/3.dwg.gz 0640
E: crack wrong-script-interpreter /var/lib/crack/dict/1/paradise.lost.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/paradise.lost.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/numbers.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/numbers.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/shakespeare.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/shakespeare.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/antworth.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/antworth.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/female-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/female-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/bad_pws.dat.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/bad_pws.dat.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/sports.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/sports.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/biology.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/biology.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/phrases.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/phrases.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/congress.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/congress.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/surnames.finnish.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/surnames.finnish.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/other-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/other-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/movies.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/movies.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/yiddish.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/yiddish.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/names.french.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/names.french.dwg 0644
E: crack non-standard-gid /var/lib/crack/run crack
E: crack non-standard-dir-perm /var/lib/crack/run 02770
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.italian.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.italian.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/zipcodes.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/zipcodes.dwg 0644
E: crack non-standard-gid /usr/bin/CrackReporter crack
E: crack non-readable /usr/bin/CrackReporter 0750
E: crack non-standard-executable-perm /usr/bin/CrackReporter 0750
E: crack wrong-script-interpreter /var/lib/crack/dict/1/sf.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/sf.dwg 0644
E: crack non-standard-gid /usr/bin/Crack crack
E: crack non-readable /usr/bin/Crack 0750
E: crack non-standard-executable-perm /usr/bin/Crack 0750
E: crack wrong-script-interpreter /var/lib/crack/dict/1/fast-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/fast-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/given-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/given-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.spanish.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.spanish.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/ethnologue.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/ethnologue.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/kjbible.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/kjbible.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/crl.words.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/crl.words.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/family-names.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/family-names.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/unix.dict.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/unix.dict.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/danish.words.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/danish.words.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.norwegian.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.norwegian.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/common-passwords.txt.dwg
"xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/common-passwords.txt.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/cartoon.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/cartoon.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/2/world.factbook.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/2/world.factbook.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/python.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/python.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/1/list.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/1/list.dwg 0644
E: crack wrong-script-interpreter /var/lib/crack/dict/3/words.dutch.dwg "xdawg"
E: crack non-executable-script /var/lib/crack/dict/3/words.dutch.dwg 0644

Basically, it sums up to:

- rpmlint thinks the dict files are scripts. They're not. So we can ignore all that.
- rpmlint is concerned about the restrictive permissions on some of the files.
I'm not. So we can ignore that too.

- package name ok
- meets PackagingGuidelines
- license ok (Artistic), license in %doc, matches code
- spec file is in am. english, legible
- source matches upstream
- source compiles and runs on ppc (FC-4)
- no unnecessary buildrequires
- no locales
- no libs, no need for -docs
- not relocatable
- no duplicate files
- macro use is consistent
- code not content (dicts acceptable content)
- permissions restrictive, but ok
- clean ok
- no need for -devel
- no need for .desktop
- scriplet ok

Minor nitpick:

- When it generates dict 1, it looks for /usr/dict/*words* ... to really make
this dict useful, you'll want to add BuildRequires: words, and make it look in
/usr/share/dict/*words* instead. But you can do that before you commit. I'll
also attach a patch for the spec file to enable this.

APPROVED.

Comment 2 Tom "spot" Callaway 2005-09-06 18:35:52 UTC
Created attachment 118520 [details]
use words to make a richer dict 1

Comment 3 Christian Iseli 2005-09-07 09:39:00 UTC
Thanks for the review and the patch.
Patch applied.
Imported to CVS.
Owners updated.
Build completed.
Closing... :-)

Comment 4 Warren Togami 2005-09-07 09:46:40 UTC
Christian is officially now Fedora's crack dealer. =)


Comment 5 Christian Iseli 2007-12-10 08:52:22 UTC
Package Change Request
======================
Package Name: crack
New Branches: EL-4 EL-5


Comment 6 Kevin Fenzi 2007-12-10 16:37:44 UTC
cvs done.

Comment 7 john jone 2013-03-04 15:17:02 UTC
.Crc all day

Comment 8 Christian Iseli 2013-03-04 16:54:14 UTC
Hi,

(In reply to comment #7)
> .Crc all day

--verbose please ?


Note You need to log in before you can comment on or make changes to this bug.