Đã phát hiện lỗ hổng trong xterm dẫn đến thực thi mã

Dễ bị tổn thương

Nếu bị khai thác, những lỗ hổng này có thể cho phép kẻ tấn công truy cập trái phép vào thông tin nhạy cảm hoặc thường gây ra sự cố

Gần đây tin tức đã phá vỡ rằng một lỗ hổng đã được tìm thấy trong trình giả lập thiết bị đầu cuối xterm (đã được lập danh mục theo CVE-2022-45063), sự cố cho phép thực thi các lệnh shell khi một số trình tự thoát nhất định được xử lý trong thiết bị đầu cuối.

Về vấn đề nó được đề cập rằng là do lỗi trong quá trình xử lý mã thoát 50 được sử dụng để đặt hoặc nhận các tùy chọn phông chữ. Nếu phông chữ được yêu cầu không tồn tại, thao tác sẽ trả về tên của phông chữ được chỉ định trong yêu cầu.

Vấn đề nằm ở dãy OSC 50, để cấu hình và tư vấn Đài phun nước. Nếu một nguồn nhất định không tồn tại, nó không được đặt mà là một truy vấn sẽ trả lại tên đã được đặt. Các ký tự điều khiển không được được bao gồm, nhưng chuỗi phản hồi có thể được kết thúc bằng ^G. Phía đông về cơ bản cung cấp cho chúng tôi một nguyên hàm để trả lại văn bản cho thiết bị đầu cuối và kết thúc bằng ^G.

Các ký tự điều khiển không thể được chèn trực tiếp trong tên, nhưng chuỗi trả về có thể được kết thúc bằng chuỗi "^G", mà trong zsh, khi chế độ chỉnh sửa dòng kiểu vi được kích hoạt, sẽ thực hiện thao tác mở rộng danh sách, thao tác này có thể được sử dụng để thực thi các lệnh mà không cần nhấn phím enter một cách rõ ràng.

Đối với một cuộc tấn công trong trường hợp đơn giản nhất, nó đủ để hiển thị nội dung của một tệp được thiết kế đặc biệt trên màn hình, chẳng hạn như sử dụng tiện ích mèo hoặc dán một dòng từ khay nhớ tạm.

Theo mặc định, Debian, Red Hat và các ứng dụng khác vô hiệu hóa thao tác phông chữ , nhưng người dùng có thể kích hoạt lại chúng thông qua một tùy chọn hoặc menu cấu hình. Ngoài ra, xterm ngược dòng không không tắt chúng theo mặc định, vì vậy một số bản phân phối bao gồm một Cấu hình mặc định dễ bị tổn thương.

Để khai thác thành công lỗ hổng, người dùng phải sử dụng trình bao Zsh với trình chỉnh sửa dòng lệnh (chế độ vi-cmd) được đổi thành chế độ "vi", thường không được sử dụng theo mặc định trong các bản phân phối.

Về cơ bản, chúng ta cần:
zsh
chế độ chỉnh sửa dòng hoạt động theo kiểu vi
sao chép văn bản của trojan vào khay nhớ tạm
dán nó vào zsh

Điều này có thể được thực hiện tự động, nhiều trang web sửa đổi văn bản khi nó được sao chép vào khay nhớ tạm. Vì vậy, tôi chỉ sử dụng bộ đệm lựa chọn mà trình duyệt không truy cập được. Chỉ trong gtk3 và đặc biệt là ff, chúng liên tục bị hỏng vì một lý do nào đó, thật mệt mỏi.

Vấn đề cũng không xuất hiện khi xterm được đặt thành allowWindowOps=false hoặc allowFontOps=false. Ví dụ, cấu hình allowFontOps=false nó được đặt trên OpenBSD, Debian và RHEL, nhưng không được thực thi theo mặc định trên Arch Linux.

Theo nhật ký thay đổi và tuyên bố của nhà nghiên cứu đã xác định vấn đề, lỗ hổng đã sửa trong phiên bản xterm 375, nhưng theo các nguồn khác, lỗ hổng tiếp tục xuất hiện trong xterm 375 của Arch Linux.

Điều này có nghĩa là để khai thác lỗ hổng này, người dùng phải
sử dụng Zsh ở chế độ chỉnh sửa dòng vi (thường thông qua $EDITOR có "vi" trong
nó là). Mặc dù hơi mơ hồ, nhưng điều này không hoàn toàn chưa từng xảy ra.
cài đặt.

Trong thiết lập đó, một cái gì đó như:
printf "\e]50;i\$(touch /tmp/hack-like-its-1999)\a\e]50;?\a"> cve-2022-45063
cat cve-2022-45063 # hoặc cách khác để chuyển cái này cho nạn nhân

Cuối cùng, như mọi khi, người dùng của các hệ thống bị ảnh hưởng nên cập nhật hệ thống của họ, bởi vì như bạn sẽ biết khi các lỗ hổng bảo mật được biết đến, các nhà phát triển phải sửa các lỗi này, vì phần lớn cách thức khai thác các lỗi này đã được tiết lộ.

điều đáng nói là thao tác phông chữ không được phép trong cài đặt mặc định của xterm của một số bản phân phối Linux, vì vậy không phải tất cả các bản phân phối đều dễ bị lỗi này. Đối với những người quan tâm đến việc theo dõi việc xuất bản các bản sửa lỗi theo bản phân phối, họ có thể làm như vậy trên các trang này: DebianRHELFedoraSUSEUbuntuArch LinuxOpenBSDFreeBSDNetBSD.

Nếu bạn là muốn biết thêm về nó, bạn có thể kiểm tra các chi tiết Trong liên kết sau đây.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.