암호 파일의 별은 무엇을 의미합니까?


14

컴퓨터를 부팅해야하는데 암호가 허위 인 것 같습니다. 또한 쓰기를 위해 드라이브를 마운트 할 수 없으며 밉 프로세서이므로 다른 컴퓨터에 고정하여 실행할 수 없습니다.

어쨌든, passwd 파일에는 사용자 이름 뒤에 별표가있는 이와 같은 일부 사용자가 있습니다. 이것은 빈 암호 또는 무엇을 의미합니까?

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
sysadm:*:0:0:System V Administration:/usr/admin:/bin/sh
diag:*:0:996:Hardware Diagnostics:/usr/diags:/bin/csh
daemon:*:1:1:daemons:/:/dev/null
bin:*:2:2:System Tools Owner:/bin:/dev/null
uucp:*:3:5:UUCP Owner:/usr/lib/uucp:/bin/csh
sys:*:4:0:System Activity Owner:/var/adm:/bin/sh
adm:*:5:3:Accounting Files Owner:/var/adm:/bin/sh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh
nuucp::10:10:Remote UUCP User:/var/spool/uucppublic:/usr/lib/uucp/uucico
auditor:*:11:0:Audit Activity Owner:/auditor:/bin/sh
dbadmin:*:12:0:Security Database Owner:/dbadmin:/bin/sh
rfindd:*:66:1:Rfind Daemon and Fsdump:/var/rfindd:/bin/sh

12
DES 비밀번호 해시를 게시했습니다. DES 비밀번호 해시는 요즘 매우 쉽게 깨지기 쉽습니다. 암호를 변경할 때까지이 컴퓨터를 네트워크에 연결하지 마십시오.
Gilles 'SO- 악한 중지'

2
이 컴퓨터를 공개 인터넷 에 전혀 연결하지 않는 것이 좋습니다 . 데이터를 훔칠 수있을 정도로 오랫동안 방화벽이있는 네트워크에 두십시오. 그러나 폐기해야합니다. 운영 체제가 오래된 것이라면 커널의 보안 허점으로 가득 차있을 것입니다 . 예를 들어 예측 가능한 TCP 초기 시퀀스 번호 입니다.
zwol

lp사용자 의 비밀번호 가 엄청나게 약합니다. 또한 DES 기반 암호는 ASCII로 제한되며 8 자만 가능하므로 53 비트 이상의 엔트로피를 얻지 못합니다. 가능하면 더 강력한 해시로 전환하고 비밀번호를 변경하십시오.
kasperd

이전 의견에 숫자 추가 : 랩탑이 lp630 밀리 초 안에 암호를 깨뜨릴 수 있습니다. root암호가 많은 강하다. 나는 그것을 끝내기 전에 5 시간 동안 무차별 대입 공격을시켰다. 이 root5 시간 안에 암호를 깨지 않았습니다 . 그러나 여전히 이전 권장 사항을 따르고 비밀번호를 변경해야합니다.
kasperd

기록을 위해 가장 인기있는 암호는 암호라는 이야기를 알고 있습니까? 잘 password1은 뒤에있을 수 없습니다. 엄청나게 약한.
22:20에

답변:


22

man passwd 를 확인해야합니다 .

암호화 된 비밀번호가 별표 (*)로 설정되면 사용자는 login (1)을 사용하여 로그인 할 수 없지만 rlogin (1)을 사용하여 로그인하고 기존 프로세스를 실행하고 rsh (1), cron을 통해 새 프로세스를 시작할 수 있습니다. (8), at (1) 또는 메일 필터 등입니다. 간단히 셸 필드를 변경하여 계정을 잠그려고하면 같은 결과가 나오고 su (1)을 사용할 수 있습니다.

일반적으로 *비밀번호가 필드 인 계정에는 비밀번호가 없습니다 (예 : 로그인 할 수 없음). 이것은 암호가없는 계정과는 다릅니다. 즉, 암호 필드가 비어 있고 거의 항상 나쁜 습관입니다.


13

암호가있는 계정은 두 번째 필드에서 glob가 base64 인 계정입니다.

root:8sh9JBUR0VYeQ:0:0:Super-User,,,,,,,:/:/bin/ksh
lp:VvHUV8idZH1uM:9:9:Print Spooler Owner:/var/spool/lp:/bin/sh

이 컴퓨터는 기존의 DES 기반 crypt(3)암호 해시를 사용하는 것으로 보입니다 . 이 해시는 현대 표준에 의해 상당히 약합니다. 다른 방법으로 루트 로그인을 할 수 없다면 John the Ripper 또는 유사한 소프트웨어를 사용하여 암호를 무차별 적으로 복구 할 수 있습니다 . 또한 기술적으로는 base64가 아니라 더 오래되고 유사한 인코딩이지만 걱정할 필요는 없습니다.

다른 답변 :*:과 의 차이점 :!:은 너무 새롭기 때문에 문제와 관련이 없습니다. 이 오래된 UNIX 시스템에서는 암호 필드에 표시 할 수있는 항목이 세 가지뿐입니다.

alice::1001:1001:Alice Can Log In Without A Password:/home/alice:/bin/ksh
bob:WSy1W41d4D1Gw:1002:1002:Bob Must Supply A Password:/home/bob:/bin/ksh
carol:ANYTHING ELSE:1003:1003:Carol Cannot Log In At All:/home/carol:/bin/ksh

비밀번호 필드의 내용이 비어 있으면 비밀번호없이 로그인 할 수 있습니다.

필드의 내용이 crypt일부 비밀번호 의 유효한 해시 인 경우 해당 비밀번호로 로그인 할 수 있습니다.

그렇지 않으면 해당 사용자로 로그인 할 수 없습니다. *사용하는 일반적인 방법 일뿐입니다. 시각적으로 유효한 암호 해시는 아닙니다. passwd프로그램을 작성한 사람이 선택했을 것입니다 .

(로그인 할 수없는 비밀번호 파일에 사용자 ID를 갖는 요점은 여전히 ​​파일을 소유 할 수 있고 cron작업을 가질 수 있으며 데몬이 setuid해당 ID를 가정하는 데 사용할 수 있다는 것입니다. 실제로 모든 데몬을 실행하는 것이 가장 좋습니다. ( root이러한 사용자 ID에서 ( 로 실행할 필요는 없음 )), 따라서 해당 ID 에서 데몬 실행되고 있다는 확신이 있습니다.

( /dev/null쉘 필드에있는 계정 정기적으로 로그인 할뿐만 아니라 해당 사용자 ID로 프로그램을 실행 root하는 su데 사용할 수 없도록 잠겨 있습니다. 요즘에는 그 목적을 위해 보거나 사용할 가능성이 훨씬 높습니다 . 존재하지 않으며 전자는 쉘 스크립트입니다.)/bin/false/sbin/nologin

Bob의 암호는 "bobpassw"이며 이전 알고리즘을 사용하여 암호화되었지만 최신 Linux 시스템에서는 컴퓨터에서 동일한 암호와 소금으로 생성 한 것이 아닐 수도 있습니다. 이전 알고리즘이 좋지 않은 것으로 간주되는 이유 중 하나 더 이상 암호의 상한은 8 자입니다.)

(시스템이 DES 기반 암호 해싱을 사용하고 있기 때문에, 섀도 파일을 사용 하지 않고 , 루트 쉘이 /bin/ksh더 새롭고 인체 공학적인 것이 아니라 시스템이 실제로 오래되었다는 것을 알고 있습니다.)


나는 밥의 암호가 고기를 먹지 않는다고 생각했다.
Joshua

@Joshua 지금 고쳤습니다 :)
zwol

컴퓨터로 부팅해야하는 경우 복구 모드에서 부팅하거나 USB 라이브 CD / DVD로 부팅하고 암호를 john ripper를 사용하는 것보다 다른 암호로 변경하는 것이 더 빠르지 않습니까?
YoMismo

@YoMismo 컴퓨터는이 오래된하지 않을 수 있습니다 (내 추측은 1990 년대 초 출신이다) 복구 모드. 이동식 미디어로 부팅 할 수는 있지만 부팅 가능한 CD 나 테이프 등을 찾기가 매우 어려울 수 있습니다. 현대의 liveCD는 확실히 작동 하지 않을 것입니다.
zwol

@zwol 나는 그의 오래된 시스템에 대한 실제 배포판과 chroot로 시스템을 시작하려고 할 것이다. 아마도 passwd--bind / dev / sys ...를 마운트 할 필요는 없을 것이다 .
YoMismo

8

즉, 직접 로그인 할 수 없습니다. 서비스를 실행하거나 rlogin에 사용되는 사용자입니다. https://en.wikipedia.org/wiki/Passwd#Password_file을 확인 하십시오.


이 컴퓨터는 꽤 오래되었습니다. 시간이 지남에 따라 의미가 바뀌 었는지 확신 할 수 없었습니다.
j0h

@WouterVerhelst : 로그인 할 수 없습니다. rlogin에 대해 비활성화되지 않았습니다. 답을보다 자세히 살펴 봐야합니다.
Brian

나는 대답을 바꿨다. @WouterVerhelst가 더 정확하기를 바랍니다.
Marco

3

실제 질문에 대해서는 taliezin의 답변을 참조하십시오 (그리고 그중 하나를 수락하십시오)

다른 문제점 정보 : 디스크에서 문자열 8sh9JBUR0VYeQ를 검색하여 디스크 블록이있는 디스크 블록을 찾으십시오. 그런 다음 해당 디스크 블록을 파일로 복사하고 해당 문자열을 알려진 비밀번호 해시 (이전 암호 () 하나-길이가 같고 디스크 블록을 이전 위치에 다시 기록하십시오. 디스크의 전체 백업을 수행 할 수도 있습니다. 이 방법은 파일 크기를 변경하지 않기 때문에 파일 시스템 메타 데이터를 업데이트 할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.