현재 내 패스워드가 안전한지 알려주는 사이트
구분 | 특징 |
---|---|
암호화 | 양방향성(복호화 가능) |
해쉬 | 단방향성(복호화 불가능) |
공격대상의 ID를 알고 있다는 전제 하에 비밀번호를 알아내는 공격 기법
종류 | 설명 |
---|---|
사전 대입 공격 (Dictionary attack) | 패스워드로 사용할 만한 사전 파일을 미리 만들어 놓고 하나씩 대입하여 패스워드 일치 여부를 확인 |
무차별 대입 공격 (Brute-force attack) | 가능한 모든 경우의 수를 모두 대입 |
레인보우 테이블 공격 (Rainbow table attack) | 패스워드와 해시로 이루어진 체인을 무수히 만들어 테이블에 저장 → 암호화 값을 테이블에서 찾는 방법 |
사회공학 기법 (Social Engineering) | 개인 정보가 들어 있는 비밀번호 사용 자신의 이름을 사용 또는 생년월일, 전화번호 등 상대방을 속여 비밀번호 획득 대화내용을 엿들어서 수집 |
$ vi pword
$ john --format=raw-md5 /usr/share/wordlists/rockyou.txt.gz /TEST/pword
Kali Linux
sudo su
명령어로 관리자 모드
$ cd /TEST
$ cp /etc/passwd passwd
$cp /etc/shadow shadow
$ unshadow passwd shadow |grep '\$y'| tee passcrack
# unshadow passwd shadow : 계정정보 파일과 패스워드 파일을 결합
# |grep '\$y'| : 결합된 파일에서 암호화된 패스워드 찾기
# tee passcrack : passcrack 파일에 grep 명령어로 필터링된 결과를 파일로 저장 후 터미널에 출력
$ john passcrack --wordlist /usr/share/wordlists/fasttrack.txt --format=crypt
$ john -show passcrack
[CentOS 7]
$ su
$ cd /etc/security
$ ls
access.conf
console.perms
limits.d
opasswd
time.conf
chroot.conf
console.perms.d
namespace.conf
pam_env.conf
console.apps
group.conf
namespace.d
pwquality.conf
console.handlers
limits.conf
namespace.init
sepermit.conf
패스워드 복잡도 설정 파일 - pwquality.conf
Defaults:
difok = 5
minlen = 9
dcredit = 1
ucredit = 1
lcredit = 1
ocredit = 1
minclass = 0
maxrepeat = 0
maxclassrepeat = 0
# 주석 필드에 유사하게 지정 불가
gecoscheck = 0
dictpath =