파이썬의 tarfile 모듈에서 경로 통과 버그 이해
최근 보안 연구원 팀은 파이썬의 타르 파일 추출 기능에서 열다섯 살짜리 버그를 발견했다고 발표했습니다. 이 취약점은 2007년에 처음 공개되었으며 CVE-2007-4559로 추적되었습니다. 공식 파이썬 문서에 메모가 추가되었지만 버그 자체는 패치되지 않은 채로 남아 있습니다.
이 취약점은 수천 개의 소프트웨어 프로젝트에 영향을 줄 수 있지만 많은 사람들이 상황이나 처리 방법에 익숙하지 않습니다. 그래서 여기 Secure Code Warrior이 취약점을 직접 악용하는 것을 시뮬레이션하여 영향을 직접 확인하고 이 영구 버그의 메커니즘에 대한 실무 경험을 얻을 수 있는 기회를 제공하므로 응용 프로그램을 더 잘 보호할 수 있습니다!
시뮬레이션된 미션 을 지금 사용해 보세요.
취약점: tar 파일 추출 중 경로 통과
경로 또는 디렉터리 탐색은 비위생적인 사용자 입력을 사용하여 파일 경로를 구성하여 공격자가 파일에 액세스하여 파일을 덮어쓰고 임의 코드를 실행할 수 있도록 할 때 발생합니다.
이 취약점은 파이썬의 tarfile 모듈에 존재합니다. tar(테이프 아카이브) 파일은 아카이브라고 하는 단일 파일입니다. 메타 데이터와 함께 여러 파일을 함께 패키지화하며 일반적으로 .tar.gz 또는 . tgz 확장자를 사용하여 인식됩니다. 아카이브의 각 멤버는 파일 이름, 수정 시간, 소유권 등과 같은 메타데이터를 포함하는 TarInfo 개체로 나타낼 수 있습니다.
위험은 아카이브에서 다시 추출 될 수있는 능력에서 발생합니다.
추출할 때 모든 멤버는 쓸 경로가 필요합니다. 이 위치는 기본 경로를 파일 이름으로 조인하여 만들어집니다.
이 경로가 만들어지면 tarfile.extract 또는 tarfile.extractall 함수로 전달되어 추출을 수행합니다.
여기서 문제는 파일 이름의 삭제 부족입니다. 공격자는 도트 도트 슬래시 (.. /), 이로 인해 파일이 의도 된 디렉토리에서 트래버스되어 임의의 파일을 덮어 씁니다. 이것은 결국 원격 코드 실행으로 이어질 수 있으며, 이는 악용에 익숙합니다.
취약점은 식별 방법을 알고 있는 경우 다른 시나리오에서 나타납니다. 파이썬이 tar 파일을 처리하는 것 외에도 zip 파일을 추출하는 데 취약점이 존재합니다. 파이썬이 아닌 다른 언어로 나타난 zip slip 취약점과 같은 다른 이름으로 이것을 잘 알고있을 수 있습니다!
어떻게 위험을 완화 할 수 있습니까?
이 취약점이 수년간 알려져 있음에도 불구하고 파이썬 메인테이너들은 추출 기능이 해야 할 일을 하고 있다고 생각합니다. 이 경우 일부 사람들은 "버그가 아닌 기능"이라고 말할 수 있습니다. 불행히도 개발자는 알 수없는 소스에서 tar 또는 zip 파일을 추출하는 것을 항상 피할 수는 없습니다. 신뢰할 수 없는 입력을 삭제하여 보안 개발 관행의 일환으로 경로 통과 취약점을 방지하는 것은 그들에게 달려 있습니다.
Python으로 보안 코드를 작성하고 위험을 완화하는 방법에 대해 자세히 알고 싶으신가요?
파이썬 챌린지를 무료로 사용해보십시오.
더 많은 무료 코딩 지침을 얻고 싶다면 보안 코드 코치 를 확인하여 안전한 코딩 관행을 계속 활용할 수 있도록 도와주세요.
최근 보안 연구원 팀은 파이썬의 타르 파일 추출 기능에서 열다섯 살짜리 버그를 발견했다고 발표했습니다. 이 취약점은 2007년에 처음 공개되었으며 CVE-2007-4559로 추적되었습니다. 공식 파이썬 문서에 메모가 추가되었지만 버그 자체는 패치되지 않은 채로 남아 있습니다.
Secure Code Warrior 는 전체 소프트웨어 개발 수명 주기에서 코드를 보호하고 사이버 보안을 최우선으로 생각하는 문화를 조성할 수 있도록 도와드립니다. 앱 보안 관리자, 개발자, CISO 등 보안과 관련된 모든 사람이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 도와드릴 수 있습니다.
데모 예약Laura Verheyde는 Secure Code Warrior 의 소프트웨어 개발자로서 취약점을 연구하고 Missions 및 코딩 연구소의 콘텐츠를 제작하는 데 주력하고 있습니다.
최근 보안 연구원 팀은 파이썬의 타르 파일 추출 기능에서 열다섯 살짜리 버그를 발견했다고 발표했습니다. 이 취약점은 2007년에 처음 공개되었으며 CVE-2007-4559로 추적되었습니다. 공식 파이썬 문서에 메모가 추가되었지만 버그 자체는 패치되지 않은 채로 남아 있습니다.
이 취약점은 수천 개의 소프트웨어 프로젝트에 영향을 줄 수 있지만 많은 사람들이 상황이나 처리 방법에 익숙하지 않습니다. 그래서 여기 Secure Code Warrior이 취약점을 직접 악용하는 것을 시뮬레이션하여 영향을 직접 확인하고 이 영구 버그의 메커니즘에 대한 실무 경험을 얻을 수 있는 기회를 제공하므로 응용 프로그램을 더 잘 보호할 수 있습니다!
시뮬레이션된 미션 을 지금 사용해 보세요.
취약점: tar 파일 추출 중 경로 통과
경로 또는 디렉터리 탐색은 비위생적인 사용자 입력을 사용하여 파일 경로를 구성하여 공격자가 파일에 액세스하여 파일을 덮어쓰고 임의 코드를 실행할 수 있도록 할 때 발생합니다.
이 취약점은 파이썬의 tarfile 모듈에 존재합니다. tar(테이프 아카이브) 파일은 아카이브라고 하는 단일 파일입니다. 메타 데이터와 함께 여러 파일을 함께 패키지화하며 일반적으로 .tar.gz 또는 . tgz 확장자를 사용하여 인식됩니다. 아카이브의 각 멤버는 파일 이름, 수정 시간, 소유권 등과 같은 메타데이터를 포함하는 TarInfo 개체로 나타낼 수 있습니다.
위험은 아카이브에서 다시 추출 될 수있는 능력에서 발생합니다.
추출할 때 모든 멤버는 쓸 경로가 필요합니다. 이 위치는 기본 경로를 파일 이름으로 조인하여 만들어집니다.
이 경로가 만들어지면 tarfile.extract 또는 tarfile.extractall 함수로 전달되어 추출을 수행합니다.
여기서 문제는 파일 이름의 삭제 부족입니다. 공격자는 도트 도트 슬래시 (.. /), 이로 인해 파일이 의도 된 디렉토리에서 트래버스되어 임의의 파일을 덮어 씁니다. 이것은 결국 원격 코드 실행으로 이어질 수 있으며, 이는 악용에 익숙합니다.
취약점은 식별 방법을 알고 있는 경우 다른 시나리오에서 나타납니다. 파이썬이 tar 파일을 처리하는 것 외에도 zip 파일을 추출하는 데 취약점이 존재합니다. 파이썬이 아닌 다른 언어로 나타난 zip slip 취약점과 같은 다른 이름으로 이것을 잘 알고있을 수 있습니다!
어떻게 위험을 완화 할 수 있습니까?
이 취약점이 수년간 알려져 있음에도 불구하고 파이썬 메인테이너들은 추출 기능이 해야 할 일을 하고 있다고 생각합니다. 이 경우 일부 사람들은 "버그가 아닌 기능"이라고 말할 수 있습니다. 불행히도 개발자는 알 수없는 소스에서 tar 또는 zip 파일을 추출하는 것을 항상 피할 수는 없습니다. 신뢰할 수 없는 입력을 삭제하여 보안 개발 관행의 일환으로 경로 통과 취약점을 방지하는 것은 그들에게 달려 있습니다.
Python으로 보안 코드를 작성하고 위험을 완화하는 방법에 대해 자세히 알고 싶으신가요?
파이썬 챌린지를 무료로 사용해보십시오.
더 많은 무료 코딩 지침을 얻고 싶다면 보안 코드 코치 를 확인하여 안전한 코딩 관행을 계속 활용할 수 있도록 도와주세요.
최근 보안 연구원 팀은 파이썬의 타르 파일 추출 기능에서 열다섯 살짜리 버그를 발견했다고 발표했습니다. 이 취약점은 2007년에 처음 공개되었으며 CVE-2007-4559로 추적되었습니다. 공식 파이썬 문서에 메모가 추가되었지만 버그 자체는 패치되지 않은 채로 남아 있습니다.
이 취약점은 수천 개의 소프트웨어 프로젝트에 영향을 줄 수 있지만 많은 사람들이 상황이나 처리 방법에 익숙하지 않습니다. 그래서 여기 Secure Code Warrior이 취약점을 직접 악용하는 것을 시뮬레이션하여 영향을 직접 확인하고 이 영구 버그의 메커니즘에 대한 실무 경험을 얻을 수 있는 기회를 제공하므로 응용 프로그램을 더 잘 보호할 수 있습니다!
시뮬레이션된 미션 을 지금 사용해 보세요.
취약점: tar 파일 추출 중 경로 통과
경로 또는 디렉터리 탐색은 비위생적인 사용자 입력을 사용하여 파일 경로를 구성하여 공격자가 파일에 액세스하여 파일을 덮어쓰고 임의 코드를 실행할 수 있도록 할 때 발생합니다.
이 취약점은 파이썬의 tarfile 모듈에 존재합니다. tar(테이프 아카이브) 파일은 아카이브라고 하는 단일 파일입니다. 메타 데이터와 함께 여러 파일을 함께 패키지화하며 일반적으로 .tar.gz 또는 . tgz 확장자를 사용하여 인식됩니다. 아카이브의 각 멤버는 파일 이름, 수정 시간, 소유권 등과 같은 메타데이터를 포함하는 TarInfo 개체로 나타낼 수 있습니다.
위험은 아카이브에서 다시 추출 될 수있는 능력에서 발생합니다.
추출할 때 모든 멤버는 쓸 경로가 필요합니다. 이 위치는 기본 경로를 파일 이름으로 조인하여 만들어집니다.
이 경로가 만들어지면 tarfile.extract 또는 tarfile.extractall 함수로 전달되어 추출을 수행합니다.
여기서 문제는 파일 이름의 삭제 부족입니다. 공격자는 도트 도트 슬래시 (.. /), 이로 인해 파일이 의도 된 디렉토리에서 트래버스되어 임의의 파일을 덮어 씁니다. 이것은 결국 원격 코드 실행으로 이어질 수 있으며, 이는 악용에 익숙합니다.
취약점은 식별 방법을 알고 있는 경우 다른 시나리오에서 나타납니다. 파이썬이 tar 파일을 처리하는 것 외에도 zip 파일을 추출하는 데 취약점이 존재합니다. 파이썬이 아닌 다른 언어로 나타난 zip slip 취약점과 같은 다른 이름으로 이것을 잘 알고있을 수 있습니다!
어떻게 위험을 완화 할 수 있습니까?
이 취약점이 수년간 알려져 있음에도 불구하고 파이썬 메인테이너들은 추출 기능이 해야 할 일을 하고 있다고 생각합니다. 이 경우 일부 사람들은 "버그가 아닌 기능"이라고 말할 수 있습니다. 불행히도 개발자는 알 수없는 소스에서 tar 또는 zip 파일을 추출하는 것을 항상 피할 수는 없습니다. 신뢰할 수 없는 입력을 삭제하여 보안 개발 관행의 일환으로 경로 통과 취약점을 방지하는 것은 그들에게 달려 있습니다.
Python으로 보안 코드를 작성하고 위험을 완화하는 방법에 대해 자세히 알고 싶으신가요?
파이썬 챌린지를 무료로 사용해보십시오.
더 많은 무료 코딩 지침을 얻고 싶다면 보안 코드 코치 를 확인하여 안전한 코딩 관행을 계속 활용할 수 있도록 도와주세요.
아래 링크를 클릭하여 이 자료의 PDF를 다운로드하세요.
Secure Code Warrior 는 전체 소프트웨어 개발 수명 주기에서 코드를 보호하고 사이버 보안을 최우선으로 생각하는 문화를 조성할 수 있도록 도와드립니다. 앱 보안 관리자, 개발자, CISO 등 보안과 관련된 모든 사람이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 도와드릴 수 있습니다.
보고서 보기데모 예약Laura Verheyde는 Secure Code Warrior 의 소프트웨어 개발자로서 취약점을 연구하고 Missions 및 코딩 연구소의 콘텐츠를 제작하는 데 주력하고 있습니다.
최근 보안 연구원 팀은 파이썬의 타르 파일 추출 기능에서 열다섯 살짜리 버그를 발견했다고 발표했습니다. 이 취약점은 2007년에 처음 공개되었으며 CVE-2007-4559로 추적되었습니다. 공식 파이썬 문서에 메모가 추가되었지만 버그 자체는 패치되지 않은 채로 남아 있습니다.
이 취약점은 수천 개의 소프트웨어 프로젝트에 영향을 줄 수 있지만 많은 사람들이 상황이나 처리 방법에 익숙하지 않습니다. 그래서 여기 Secure Code Warrior이 취약점을 직접 악용하는 것을 시뮬레이션하여 영향을 직접 확인하고 이 영구 버그의 메커니즘에 대한 실무 경험을 얻을 수 있는 기회를 제공하므로 응용 프로그램을 더 잘 보호할 수 있습니다!
시뮬레이션된 미션 을 지금 사용해 보세요.
취약점: tar 파일 추출 중 경로 통과
경로 또는 디렉터리 탐색은 비위생적인 사용자 입력을 사용하여 파일 경로를 구성하여 공격자가 파일에 액세스하여 파일을 덮어쓰고 임의 코드를 실행할 수 있도록 할 때 발생합니다.
이 취약점은 파이썬의 tarfile 모듈에 존재합니다. tar(테이프 아카이브) 파일은 아카이브라고 하는 단일 파일입니다. 메타 데이터와 함께 여러 파일을 함께 패키지화하며 일반적으로 .tar.gz 또는 . tgz 확장자를 사용하여 인식됩니다. 아카이브의 각 멤버는 파일 이름, 수정 시간, 소유권 등과 같은 메타데이터를 포함하는 TarInfo 개체로 나타낼 수 있습니다.
위험은 아카이브에서 다시 추출 될 수있는 능력에서 발생합니다.
추출할 때 모든 멤버는 쓸 경로가 필요합니다. 이 위치는 기본 경로를 파일 이름으로 조인하여 만들어집니다.
이 경로가 만들어지면 tarfile.extract 또는 tarfile.extractall 함수로 전달되어 추출을 수행합니다.
여기서 문제는 파일 이름의 삭제 부족입니다. 공격자는 도트 도트 슬래시 (.. /), 이로 인해 파일이 의도 된 디렉토리에서 트래버스되어 임의의 파일을 덮어 씁니다. 이것은 결국 원격 코드 실행으로 이어질 수 있으며, 이는 악용에 익숙합니다.
취약점은 식별 방법을 알고 있는 경우 다른 시나리오에서 나타납니다. 파이썬이 tar 파일을 처리하는 것 외에도 zip 파일을 추출하는 데 취약점이 존재합니다. 파이썬이 아닌 다른 언어로 나타난 zip slip 취약점과 같은 다른 이름으로 이것을 잘 알고있을 수 있습니다!
어떻게 위험을 완화 할 수 있습니까?
이 취약점이 수년간 알려져 있음에도 불구하고 파이썬 메인테이너들은 추출 기능이 해야 할 일을 하고 있다고 생각합니다. 이 경우 일부 사람들은 "버그가 아닌 기능"이라고 말할 수 있습니다. 불행히도 개발자는 알 수없는 소스에서 tar 또는 zip 파일을 추출하는 것을 항상 피할 수는 없습니다. 신뢰할 수 없는 입력을 삭제하여 보안 개발 관행의 일환으로 경로 통과 취약점을 방지하는 것은 그들에게 달려 있습니다.
Python으로 보안 코드를 작성하고 위험을 완화하는 방법에 대해 자세히 알고 싶으신가요?
파이썬 챌린지를 무료로 사용해보십시오.
더 많은 무료 코딩 지침을 얻고 싶다면 보안 코드 코치 를 확인하여 안전한 코딩 관행을 계속 활용할 수 있도록 도와주세요.