'ssh'에 해당되는 글 3건

  1. 2009.08.31 apache.org 해킹당해 (8)
  2. 2008.04.06 openssh 5.0 릴리즈 (2)
  3. 2007.05.20 sshfs로 원격 파일시스템을 마운트해서 사용하기
IT이야기2009. 8. 31. 19:07
지난 금요일(8.28일)에 Apache Software Foundation의 웹사이트가 해킹을 당해 서비스를 일시 중지한 적이 있다. F-Secure의 'Apache.org hack'을 읽은 금요일 밤에 접속했을 때는 웹서비스는 정상적으로 복구된 상태였다.

apache


다행인 것은 공격자는 Apache 웹서버 자체의 S/W적인 취약점이나 SSH의 취약점이 아닌 SSH key 인증을 이용해서 접근했다. minotaur.apache.org(people.apache.org로 알려진 서버) 서버에 파일을 업로드 한 것이다. 이 minotaur 서버는 Apache 커미터들에게 쉘 계정을 제공하는 서버이다.

ASF측에서는 예방차원에서 서버를 모두 shutdown했다. 그리고 초기 조사 이후에 apache.org 서비스를 eris.apache.org(이 서버는 공격 당하지 않은 안전한 서버)로 DNS를 변경했고, 이 서버를 통해 공지페이지를 제공했다. 그 이후 유럽의 장애 대처 및 백업 서버인 aurora.apache.org 서버(이 서버 또한 안전한 서버)로 서비스를 변경했다. 현재 aurora.apache.org IP와 www.apache.org IP가 같은 것을 보면 아직 유럽의 임시 서버를 통해서 서비스가 되고 있는 것으로 보인다.

공격자는 www.apache.org 내의 CGI 스크립트를 포함하여 몇몇 파일을 생성까지 했다. 그런데, ASF의 서버들은 rsync의 자동화처리(cron에 등록되어 있을 것 같음)를 통해서 파일을 각 서버로 자동 배포하는 구조로 되어 있다. 공격자가 생성한 몇몇 파일들이 자동적으로 sync가 되었는데, 복구는 ZFS 스냅샷으로 이전 상태로 복원했다고 한다. ZFS 파일시스템의 우수성을 다시 한번 느끼게 한다.

참고로 ZFS파일시스템은 주기적으로 snapshot을 실행(zfs snapshot -r ... 형식) 한다면, 적은 공간으로 파일시스템을 원하는 시점으로 되돌릴 수 있다(zfs rollback). ZFS에 대해서는 'FreeBSD 7에서 ZFS 사용 (유연성은 좋으나, 성능은 불만족)' (2009.2월)을 읽어보기 바란다.

apache.org 얘기로 돌아가서, 공격자가 서버 접속해서 상위 권한을 획득하지는 않았다. 하지만 다운로드 받는 분들은 디지털 signature 체크(MD5 등)를 하길 바란다. 자세한 글은 아파치 인프라팀의 'apache.org downtime - initial report' 글에 있다.

서버 운영자들 중 PW없이 접속하도록 SSH 인증키를 만들어 놓곤 한다. 그러나 이 키들이 노출됐을 때 얼마나 위험한 것인지 잘 아셔야 한다. 그리고, 왜 이런 오픈소스 진영의 서버들을 해킹하려고 시도하는지, 안타깝다. 그런 노력(?)을 하려거든, 오픈소스 진영에 기부나 할 것이지...

Posted by 좋은진호

댓글을 달아 주세요

  1. 아파치가 해킹당했다고 하셔서 보안문제가 발생한 줄 알고 식겁했습니다. 회사사이트가 BSD+APM이라…
    일단 패치가 필요한 문제는 아니었네요. 그래도 뜻밖이로군요. 뭐하러 그걸 해킹했을라나요;

    2009.08.31 19:49 [ ADDR : EDIT/ DEL : REPLY ]
    • BSD유저세요? 반갑네요. ^^

      만약 소스코드라도 위조되고, 그 순간에 다운로드 받은 유저들이 많았다면 큰일날 뻔 했어요. 천만다행입니다. 저런 일은 하지 말아야 하는데... ㅠ.ㅠ

      2009.08.31 23:42 신고 [ ADDR : EDIT/ DEL ]
  2. 마지막 문장 공감합니다.
    오픈소스 진영 왜 해킹하고 그러는지 ㅡㅡ^

    2009.09.01 00:28 [ ADDR : EDIT/ DEL : REPLY ]
  3. 범인은 오픈소스가 항상 눈엣가시였던 반대 진영? (농담입니다.)

    2009.09.04 22:56 [ ADDR : EDIT/ DEL : REPLY ]
    • 알고 봤더니 공격자가 리눅스와 openssh를 열렬히 지지한 사람이더라... ㅋㅋ (농담입니다.)

      2009.09.05 00:08 신고 [ ADDR : EDIT/ DEL ]
  4. 호비스

    PC방 같은 공공장소에서 인증키로 접속을 했다가 캐쉬나 메모리해킹툴에 걸렸을수도 있겠내요.
    반대 진영일 가능성도 있고요. 여튼 이번 일로 보안의 중요성에 좀더 각인되었기를...

    2009.09.21 21:51 [ ADDR : EDIT/ DEL : REPLY ]
    • 예. 그러게요. 외부의 보안 사고를 통해 보안 인식의 변화가 생긴다면 좋은 약이 되는 것 같습니다.

      2009.09.23 08:37 신고 [ ADDR : EDIT/ DEL ]

IT이야기2008. 4. 6. 22:55
사용자 삽입 이미지

X11-forwarding 커넥션에서 hijacking할 수 있는 취약점을 해결했다. SSH 프로토콜 1.3, 1.5, 2.0을 완벽히 지원한다.

Security:
 * CVE-2008-1483: Avoid possible hijacking of X11-forwarded connections
   by refusing to listen on a port unless all address families bind successfully.

http://www.openssh.com/txt/release-5.0
Posted by 좋은진호
TAG openssh, ssh

댓글을 달아 주세요

  1. 서버관리자들, 바빠지겠네요.

    2008.04.07 13:07 [ ADDR : EDIT/ DEL : REPLY ]
    • 아니요.
      openssh 4.9에서 X11Forwarding을 Yes로 사용하는 버전에 한정될 겁니다.
      그리고, 배포판에서 제공된 패키지를 사용하는 서버는 대부분 해당사항이 없을 것으로 보입니다.. 혹 해당 버전을 쓰더라도 쉽게 업데이트 가능한 패치버전이 제공 될 듯.

      2008.04.07 18:50 신고 [ ADDR : EDIT/ DEL ]

시스템이야기2007. 5. 20. 23:27
1. sshfs와 FUSE 개요

얼마전에 'Redhat Enterprise Linux securely mount remote Linux / UNIX directory or file system using SSHFS' 제목의 글을 봤다.
예전에도 sshfs에 대한 글들은 봤으나 사용은 해보지 않다가 scp로 파일 복사를 자주 해야했던 최근 일을 떠올렸다. 좀 더 편하고 나은 방법이 있는데, 굳이 돌아갈 필요가 뭐가 있겠는가. 일상적인 사용을 위해 하나씩 살펴보았다.

ssh를 통해 원격지 파일시스템을 로컬에 마운트하는 sshfs를 사용하기 위해서는 먼저 FUSE가 필요하다.
FUSE(Filesystem in Userspace)은 커널이 아닌 유저공간에서 구현할 수 있는 파일시스템으로 Linux, FreeBSD, Max OSX(MaxFUSE라고 부릅니다.)에서 사용할 수 있다. 이들 OS에서는 FUSE 기반의 다양한 파일시스템을 맛 볼 수 있다.

- 지금 소개하는 sshfs를 비롯하여,
- 리눅스에서 NTFS파일시스템을 사용하기 위한 ntfsmount,
- 리눅스에서 NTFS파일시스템을 읽고 쓸수 있는 Captive NTFS,
  ( Captive NTFS에 대해서는 2003년 11월에 '리눅스에서 NTFS 파일시스템 읽고 쓰기'란 제목의 글을 써둔게 있으니 참고하기 바란다. )
- NTFS파일시스템을 읽고 쓰는 또다른 드라이버인 NTFS-3G,
- BitTorrent 의 파일형식인 .torrent 를 파일시스템으로 마운트하는 BitTorrent File System,
- 오픈솔라리스의 ZFS 파일시스템을 리눅스에서 사용하기 위한 ZFS on FUSE, ( 'Google Summer of Code 2006'의 결과물 중 하나 )
- Gmail을 파일시스템처럼 사용하는 GmailFS

등 FUSE로 인해 파일시스템의 확장은 벽이 없어졌다.
FUSE는 현재 리눅서 커널 2.6.14 이상에 공식적으로 포함되어 있지만, 리눅스 2.6.14이상을 쓰지 않아도 된다. 커널에 포함이 안되어 있을 뿐 FUSE 받아서 설치하면 되니깐.

2. FUSE와 sshfs 설치

FUSE와 sshfs 설치는 너무 쉬우니 간단히 설명한다.

http://fuse.sourceforge.net/ 에서 FUSE 소스를 받는다.
리눅스 커널 2.6.9 이상인 경우는 FUSE 2.6.X 버전을 받고, 커널 2.6.9보다 낮고 2.4.21보다 높으면 FUSE 2.5.x 버전을 받으면 된다.

./configure
make
make install

그리고, /etc/ld.so.conf 에 /usr/local/lib 를 넣고 ldconfig 명령을 내려준다.

sshfs를 설치해보자. sshfs 홈( http://fuse.sourceforge.net/sshfs.html )에서 소스를 받는다.

./configure
make
make install

3. sshfs로 마운트하기

sshfs 명령 사용은 간단하다. ssh와 scp 명령과 비슷하다. 다음 명령을 보면 접속할 서버명과 마운트할 포인트만 지정해주면 끝난다.

$ sshfs truefeel@coffeenix: /home/truefeel/mount/master/
Password: <-- ssh 암호 입력

사용 완료했으면 unmount를 해보자. unmount는 fusermount 명령 또는 umount 명령으로 할 수 있다.

$ fusermount -u /home/truefeel/mount/master/

자세한 글은 http://coffeenix.net/board_view.php?bd_code=1491 에 올려놓았다. (너무 딱딱해지는 블로그가 싫어요. ^^)
Posted by 좋은진호

댓글을 달아 주세요