关联漏洞
标题:
Sudo 缓冲区错误漏洞
(CVE-2021-3156)
描述:Sudo是一款使用于类Unix系统的,允许用户通过安全的方式使用特殊的权限执行命令的程序。 Sudo 1.9.5p2 之前版本存在缓冲区错误漏洞,攻击者可使用sudoedit -s和一个以单个反斜杠字符结束的命令行参数升级到root。
介绍
# DASICS CVE-2021-3156
## 版本要求
`sudo`:1.8.31
`glibc`:2.31
`Linux`:4.18 或 5.10.167-gee203559bc0b-dirty
## 使用方法
为了方便,在编译 `Linux` 时,不能使用 `initramfs` 方式,而使用本仓库中提供的 `rootfs.img` 作为根目录启动,内部包含了支持 `sudo` 以及 `nss` 服务正常工作的必要配置文件,是一个极其简单的发行版。
利用 `DASICS_QEMU` 提供的 `qemu` 以 `rootfs.img` 为根目录启动 `bbl`。此外,也可以利用 `OpenSBI` 启动 `linux`。示例命令如下:
```shell
#!/bin/sh
qemu-system-riscv64 -M virt -m 1G \
-cpu rv64 \
-nographic \
-kernel bbl \
-drive file=rootfs.img,format=raw,id=hd0 \
-device virtio-blk-device,drive=hd0 \
-append "console=ttyS0 rw root=/dev/vda" \
-bios none -s
```
进入 `busybox` 命令行界面后执行如下命令:
```shell
$ su wanghan
$ cd
$ whoami
$ ./expolit
$ whoami
```
由于系统启动进入命令行界面后便是 `root` 权限,此时可以使用 `passwd` 轻松修改密码。
## 效果演示
<img src="image/image-20231230223439990.png" alt="image-20231230223439990" style="zoom: 50%;" />
可见,`expolit` 实现了提权,并可以稳定复现。
文件快照
[4.0K] /data/pocs/a45021b8b5e58611790c27b8be2a0269af67df50
├── [4.0K] CVE-2021-3156
│ ├── [2.0K] exploit.c
│ ├── [ 245] Makefile
│ ├── [ 692] README.md
│ └── [1.3K] shellcode.c
├── [4.0K] image
│ └── [ 23K] image-20231230223439990.png
├── [ 729] Makefile
├── [1.2K] README.md
├── [ 64M] rootfs.img
├── [ 237] run_qemu.sh
└── [4.0K] sudo
├── [ 94K] ABOUT-NLS
├── [1.0K] aclocal.m4
├── [ 462] autogen.sh
├── [ 29] ChangeLog
├── [ 43K] config.guess
├── [ 38K] config.h
├── [ 36K] config.h.in
├── [406K] config.log
├── [ 63K] config.status
├── [ 36K] config.sub
├── [791K] configure
├── [142K] configure.ac
├── [4.0K] doc
│ ├── [4.8K] CONTRIBUTORS
│ ├── [ 12K] cvtsudoers.man.in
│ ├── [ 11K] cvtsudoers.mdoc
│ ├── [ 11K] cvtsudoers.mdoc.in
│ ├── [1.2K] fixman.sh
│ ├── [ 92] fixmdoc.sed
│ ├── [2.9K] HISTORY
│ ├── [ 12K] LICENSE
│ ├── [ 15K] Makefile
│ ├── [ 15K] Makefile.in
│ ├── [7.7K] schema.ActiveDirectory
│ ├── [2.2K] schema.iPlanet
│ ├── [2.6K] schema.olcSudo
│ ├── [2.5K] schema.OpenLDAP
│ ├── [ 18K] sudo.conf.man.in
│ ├── [ 141] sudo.conf.man.in.sed
│ ├── [ 18K] sudo.conf.mdoc
│ ├── [ 18K] sudo.conf.mdoc.in
│ ├── [ 43K] sudoers.ldap.man.in
│ ├── [ 42K] sudoers.ldap.mdoc
│ ├── [ 42K] sudoers.ldap.mdoc.in
│ ├── [138K] sudoers.man.in
│ ├── [1.8K] sudoers.man.in.sed
│ ├── [133K] sudoers.mdoc
│ ├── [133K] sudoers.mdoc.in
│ ├── [9.4K] sudoers_timestamp.man.in
│ ├── [9.2K] sudoers_timestamp.mdoc
│ ├── [9.2K] sudoers_timestamp.mdoc.in
│ ├── [ 37K] sudo.man.in
│ ├── [1.5K] sudo.man.in.sed
│ ├── [ 34K] sudo.mdoc
│ ├── [ 35K] sudo.mdoc.in
│ ├── [ 68K] sudo_plugin.man.in
│ ├── [ 66K] sudo_plugin.mdoc
│ ├── [ 67K] sudo_plugin.mdoc.in
│ ├── [ 12K] sudoreplay.man.in
│ ├── [ 11K] sudoreplay.mdoc
│ ├── [ 11K] sudoreplay.mdoc.in
│ ├── [ 15K] TROUBLESHOOTING
│ ├── [ 22K] UPGRADE
│ ├── [ 11K] visudo.man.in
│ ├── [ 10K] visudo.mdoc
│ └── [ 11K] visudo.mdoc.in
├── [4.0K] examples
│ ├── [2.4K] Makefile
│ ├── [2.3K] Makefile.in
│ ├── [1.2K] pam.conf
│ ├── [2.3K] sudo.conf
│ ├── [4.1K] sudoers
│ └── [1.0K] syslog.conf
├── [4.0K] include
│ ├── [4.0K] compat
│ │ ├── [1.3K] charclass.h
│ │ ├── [3.0K] endian.h
│ │ ├── [1.4K] fnmatch.h
│ │ ├── [3.4K] getaddrinfo.h
│ │ ├── [3.0K] getopt.h
│ │ ├── [3.4K] glob.h
│ │ ├── [3.2K] nss_dbdefs.h
│ │ ├── [4.0K] sha2.h
│ │ └── [ 914] stdbool.h
│ ├── [2.2K] Makefile
│ ├── [2.2K] Makefile.in
│ ├── [ 16K] sudo_compat.h
│ ├── [3.4K] sudo_conf.h
│ ├── [ 13K] sudo_debug.h
│ ├── [1.9K] sudo_digest.h
│ ├── [2.1K] sudo_dso.h
│ ├── [8.4K] sudo_event.h
│ ├── [ 10K] sudo_fatal.h
│ ├── [2.4K] sudo_gettext.h
│ ├── [2.2K] sudo_lbuf.h
│ ├── [8.0K] sudo_plugin.h
│ ├── [ 26K] sudo_queue.h
│ ├── [1.8K] sudo_rand.h
│ └── [ 11K] sudo_util.h
├── [ 266] indent.pro
├── [4.0K] init.d
│ ├── [ 436] aix.sh.in
│ ├── [ 478] hpux.sh.in
│ ├── [ 305] sudo.conf
│ └── [ 303] sudo.conf.in
├── [ 38K] INSTALL
├── [ 15K] INSTALL.configure
├── [4.0K] install-sh
├── [4.0K] lib
│ ├── [4.0K] util
│ │ ├── [7.9K] aix.c
│ │ ├── [4.7K] arc4random.c
│ │ ├── [2.2K] arc4random_uniform.c
│ │ ├── [5.3K] chacha_private.h
│ │ ├── [3.6K] closefrom.c
│ │ ├── [3.7K] digest.c
│ │ ├── [3.5K] digest_gcrypt.c
│ │ ├── [4.0K] digest_openssl.c
│ │ ├── [ 23K] event.c
│ │ ├── [5.7K] event_poll.c
│ │ ├── [7.7K] event_select.c
│ │ ├── [7.7K] fatal.c
│ │ ├── [ 18K] fnmatch.c
│ │ ├── [ 12K] getaddrinfo.c
│ │ ├── [6.2K] getcwd.c
│ │ ├── [2.1K] getdelim.c
│ │ ├── [ 14K] getentropy.c
│ │ ├── [ 13K] getgrouplist.c
│ │ ├── [1.8K] gethostname.c
│ │ ├── [ 17K] getopt_long.c
│ │ ├── [6.5K] gettime.c
│ │ ├── [3.2K] getusershell.c
│ │ ├── [2.6K] gidlist.c
│ │ ├── [ 22K] glob.c
│ │ ├── [5.5K] inet_ntop.c
│ │ ├── [5.8K] inet_pton.c
│ │ ├── [1.2K] isblank.c
│ │ ├── [1.8K] key_val.c
│ │ ├── [7.7K] lbuf.c
│ │ ├── [2.9K] locking.c
│ │ ├── [ 74K] Makefile
│ │ ├── [ 74K] Makefile.in
│ │ ├── [1.4K] memrchr.c
│ │ ├── [2.3K] memset_s.c
│ │ ├── [1.7K] mksiglist.c
│ │ ├── [4.7K] mksiglist.h
│ │ ├── [1.7K] mksigname.c
│ │ ├── [4.3K] mksigname.h
│ │ ├── [3.1K] mktemp.c
│ │ ├── [1.9K] nanosleep.c
│ │ ├── [3.8K] parseln.c
│ │ ├── [1.8K] pipe2.c
│ │ ├── [2.4K] progname.c
│ │ ├── [2.7K] pw_dup.c
│ │ ├── [1.7K] reallocarray.c
│ │ ├── [4.0K] regress
│ │ │ ├── [4.0K] fnmatch
│ │ │ │ ├── [1.8K] fnm_test.c
│ │ │ │ └── [ 235] fnm_test.in
│ │ │ ├── [4.0K] getdelim
│ │ │ │ └── [3.6K] getdelim_test.c
│ │ │ ├── [4.0K] getgrouplist
│ │ │ │ └── [2.8K] getgrouplist_test.c
│ │ │ ├── [4.0K] glob
│ │ │ │ ├── [ 654] files
│ │ │ │ ├── [4.8K] globtest.c
│ │ │ │ └── [ 939] globtest.in
│ │ │ ├── [4.0K] mktemp
│ │ │ │ └── [5.0K] mktemp_test.c
│ │ │ ├── [4.0K] parse_gids
│ │ │ │ └── [3.3K] parse_gids_test.c
│ │ │ ├── [4.0K] progname
│ │ │ │ └── [1.8K] progname_test.c
│ │ │ ├── [4.0K] strsig
│ │ │ │ └── [6.5K] strsig_test.c
│ │ │ ├── [4.0K] strsplit
│ │ │ │ └── [3.4K] strsplit_test.c
│ │ │ ├── [4.0K] strtofoo
│ │ │ │ ├── [2.1K] strtobool_test.c
│ │ │ │ ├── [3.0K] strtoid_test.c
│ │ │ │ ├── [2.1K] strtomode_test.c
│ │ │ │ └── [3.6K] strtonum_test.c
│ │ │ ├── [4.0K] sudo_conf
│ │ │ │ ├── [3.2K] conf_test.c
│ │ │ │ ├── [2.4K] test1.in
│ │ │ │ ├── [ 211] test1.out.ok
│ │ │ │ ├── [ 0] test2.in
│ │ │ │ ├── [ 70] test2.out.ok
│ │ │ │ ├── [ 134] test3.in
│ │ │ │ ├── [ 204] test3.out.ok
│ │ │ │ ├── [ 90] test4.err.ok
│ │ │ │ ├── [ 25] test4.in
│ │ │ │ ├── [ 70] test4.out.ok
│ │ │ │ ├── [ 72] test5.err.ok
│ │ │ │ ├── [ 17] test5.in
│ │ │ │ ├── [ 70] test5.out.ok
│ │ │ │ ├── [ 18] test6.in
│ │ │ │ ├── [ 70] test6.out.ok
│ │ │ │ ├── [ 188] test7.in
│ │ │ │ └── [ 258] test7.out.ok
│ │ │ ├── [4.0K] sudo_parseln
│ │ │ │ ├── [1.6K] parseln_test.c
│ │ │ │ ├── [2.3K] test1.in
│ │ │ │ ├── [ 636] test1.out.ok
│ │ │ │ ├── [ 114] test2.in
│ │ │ │ ├── [ 72] test2.out.ok
│ │ │ │ ├── [ 27] test3.in
│ │ │ │ ├── [ 33] test3.out.ok
│ │ │ │ ├── [ 54] test4.in
│ │ │ │ ├── [ 63] test4.out.ok
│ │ │ │ ├── [ 2] test5.in
│ │ │ │ ├── [ 0] test5.out.ok
│ │ │ │ ├── [ 50] test6.in
│ │ │ │ └── [ 48] test6.out.ok
│ │ │ ├── [4.0K] tailq
│ │ │ │ └── [6.2K] hltq_test.c
│ │ │ └── [4.0K] vsyslog
│ │ │ └── [4.0K] vsyslog_test.c
│ │ ├── [2.6K] secure_path.c
│ │ ├── [1.7K] setgroups.c
│ │ ├── [ 15K] sha2.c
│ │ ├── [3.0K] sig2str.c
│ │ ├── [1.7K] siglist.in
│ │ ├── [ 37K] snprintf.c
│ │ ├── [4.2K] str2sig.c
│ │ ├── [2.0K] strlcat.c
│ │ ├── [1.9K] strlcpy.c
│ │ ├── [1.5K] strndup.c
│ │ ├── [1.3K] strnlen.c
│ │ ├── [1.8K] strsignal.c
│ │ ├── [2.1K] strsplit.c
│ │ ├── [2.1K] strtobool.c
│ │ ├── [3.2K] strtoid.c
│ │ ├── [2.0K] strtomode.c
│ │ ├── [4.8K] strtonum.c
│ │ ├── [ 18K] sudo_conf.c
│ │ ├── [ 24K] sudo_debug.c
│ │ ├── [7.1K] sudo_dso.c
│ │ ├── [7.7K] term.c
│ │ ├── [8.5K] ttyname_dev.c
│ │ ├── [2.0K] ttysize.c
│ │ ├── [3.2K] util.exp
│ │ ├── [2.6K] util.exp.in
│ │ ├── [5.4K] utimens.c
│ │ └── [2.3K] vsyslog.c
│ └── [4.0K] zlib
│ ├── [5.1K] adler32.c
│ ├── [2.6K] compress.c
│ ├── [ 14K] crc32.c
│ ├── [ 30K] crc32.h
│ ├── [ 77K] deflate.c
│ ├── [ 13K] deflate.h
│ ├── [ 678] gzclose.c
│ ├── [6.7K] gzguts.h
│ ├── [ 16K] gzlib.c
│ ├── [ 20K] gzread.c
│ ├── [ 19K] gzwrite.c
│ ├── [ 22K] infback.c
│ ├── [ 13K] inffast.c
│ ├── [ 427] inffast.h
│ ├── [6.2K] inffixed.h
│ ├── [ 54K] inflate.c
│ ├── [6.5K] inflate.h
│ ├── [ 13K] inftrees.c
│ ├── [2.9K] inftrees.h
│ ├── [8.0K] Makefile.in
│ ├── [ 43K] trees.c
│ ├── [8.3K] trees.h
│ ├── [2.9K] uncompr.c
│ ├── [ 17K] zconf.h.in
│ ├── [ 997] zlib.exp
│ ├── [ 94K] zlib.h
│ ├── [7.1K] zutil.c
│ └── [7.0K] zutil.h
├── [332K] libtool
├── [2.6K] log2cl.pl
├── [317K] ltmain.sh
├── [4.0K] m4
│ ├── [2.7K] ax_append_flag.m4
│ ├── [3.2K] ax_check_compile_flag.m4
│ ├── [3.0K] ax_check_link_flag.m4
│ ├── [2.0K] ax_func_getaddrinfo.m4
│ ├── [2.8K] ax_func_snprintf.m4
│ ├── [303K] libtool.m4
│ ├── [6.0K] lt~obsolete.m4
│ ├── [ 14K] ltoptions.m4
│ ├── [4.3K] ltsugar.m4
│ ├── [ 699] ltversion.m4
│ └── [ 15K] sudo.m4
├── [ 12K] Makefile
├── [ 12K] Makefile.in
├── [ 24K] MANIFEST
├── [8.4K] mkdep.pl
├── [1.6K] mkinstalldirs
├── [ 12K] mkpkg
├── [112K] NEWS
├── [5.7K] pathnames.h
├── [5.3K] pathnames.h.in
├── [4.0K] plugins
│ ├── [4.0K] group_file
│ │ ├── [4.0K] getgrent.c
│ │ ├── [3.3K] group_file.c
│ │ ├── [ 13] group_file.exp
│ │ ├── [6.9K] Makefile
│ │ ├── [6.8K] Makefile.in
│ │ └── [5.0K] plugin_test.c
│ ├── [4.0K] sample
│ │ ├── [6.4K] Makefile
│ │ ├── [6.3K] Makefile.in
│ │ ├── [ 919] README
│ │ ├── [ 13K] sample_plugin.c
│ │ └── [ 24] sample_plugin.exp
│ ├── [4.0K] sudoers
│ │ ├── [9.9K] alias.c
│ │ ├── [2.6K] audit.c
│ │ ├── [4.0K] auth
│ │ │ ├── [2.6K] afs.c
│ │ │ ├── [8.2K] aix_auth.c
│ │ │ ├── [5.4K] API
│ │ │ ├── [5.8K] bsdauth.c
│ │ │ ├── [7.2K] dce.c
│ │ │ ├── [4.8K] fwtk.c
│ │ │ ├── [ 10K] kerb5.c
│ │ │ ├── [ 21K] pam.c
│ │ │ ├── [3.5K] passwd.c
│ │ │ ├── [4.4K] rfc1938.c
│ │ │ ├── [3.3K] secureware.c
│ │ │ ├── [6.4K] securid5.c
│ │ │ ├── [4.4K] sia.c
│ │ │ ├── [ 14K] sudo_auth.c
│ │ │ └── [5.6K] sudo_auth.h
│ │ ├── [4.3K] base64.c
│ │ ├── [4.4K] boottime.c
│ │ ├── [7.0K] bsm_audit.c
│ │ ├── [1.1K] bsm_audit.h
│ │ ├── [9.6K] check.c
│ │ ├── [3.3K] check.h
│ │ ├── [ 38K] cvtsudoers.c
│ │ ├── [3.1K] cvtsudoers.h
│ │ ├── [ 30K] cvtsudoers_json.c
│ │ ├── [ 18K] cvtsudoers_ldif.c
│ │ ├── [ 13K] cvtsudoers_pwutil.c
│ │ ├── [ 29K] defaults.c
│ │ ├── [3.7K] defaults.h
│ │ ├── [ 12K] def_data.c
│ │ ├── [ 13K] def_data.h
│ │ ├── [9.0K] def_data.in
│ │ ├── [1.6K] digestname.c
│ │ ├── [5.6K] editor.c
│ │ ├── [ 38K] env.c
│ │ ├── [2.7K] env_pattern.c
│ │ ├── [4.0K] file.c
│ │ ├── [2.9K] filedigest.c
│ │ ├── [5.0K] find_path.c
│ │ ├── [ 15K] fmtsudoers.c
│ │ ├── [3.5K] gc.c
│ │ ├── [4.5K] gentime.c
│ │ ├── [ 41K] getdate.c
│ │ ├── [ 22K] getdate.y
│ │ ├── [3.4K] getspwuid.c
│ │ ├── [2.1K] gmtoff.c
│ │ ├── [2.0K] goodpath.c
│ │ ├── [ 62K] gram.c
│ │ ├── [1.4K] gram.h
│ │ ├── [ 31K] gram.y
│ │ ├── [6.0K] group_plugin.c
│ │ ├── [2.2K] hexchar.c
│ │ ├── [1.4K] ins_2001.h
│ │ ├── [1.4K] ins_classic.h
│ │ ├── [1.6K] ins_csops.h
│ │ ├── [2.0K] ins_goons.h
│ │ ├── [1.8K] ins_python.h
│ │ ├── [1.7K] insults.h
│ │ ├── [3.9K] interfaces.c
│ │ ├── [1.8K] interfaces.h
│ │ ├── [ 34K] iolog.c
│ │ ├── [1.5K] iolog_files.h
│ │ ├── [2.3K] iolog.h
│ │ ├── [7.5K] iolog_path.c
│ │ ├── [ 11K] iolog_util.c
│ │ ├── [ 57K] ldap.c
│ │ ├── [ 28K] ldap_conf.c
│ │ ├── [ 15K] ldap_util.c
│ │ ├── [3.0K] linux_audit.c
│ │ ├── [ 985] linux_audit.h
│ │ ├── [4.4K] locale.c
│ │ ├── [ 29K] logging.c
│ │ ├── [2.9K] logging.h
│ │ ├── [2.2K] logwrap.c
│ │ ├── [160K] Makefile
│ │ ├── [160K] Makefile.in
│ │ ├── [5.7K] match_addr.c
│ │ ├── [ 18K] match.c
│ │ ├── [ 15K] match_command.c
│ │ ├── [3.4K] match_digest.c
│ │ ├── [4.0K] mkdefaults
│ │ ├── [2.8K] mkdir_parents.c
│ │ ├── [ 24K] parse.c
│ │ ├── [ 14K] parse.h
│ │ ├── [ 21K] parse_ldif.c
│ │ ├── [4.0K] po
│ │ │ ├── [ 33K] ast.mo
│ │ │ ├── [ 78K] ast.po
│ │ │ ├── [ 43K] ca.mo
│ │ │ ├── [ 71K] ca.po
│ │ │ ├── [ 49K] cs.mo
│ │ │ ├── [ 85K] cs.po
│ │ │ ├── [ 45K] da.mo
│ │ │ ├── [ 80K] da.po
│ │ │ ├── [ 51K] de.mo
│ │ │ ├── [ 86K] de.po
│ │ │ ├── [ 50K] el.mo
│ │ │ ├── [ 67K] el.po
│ │ │ ├── [ 47K] eo.mo
│ │ │ ├── [ 82K] eo.po
│ │ │ ├── [6.3K] eu.mo
│ │ │ ├── [ 39K] eu.po
│ │ │ ├── [ 43K] fi.mo
│ │ │ ├── [ 92K] fi.po
│ │ │ ├── [ 55K] fr.mo
│ │ │ ├── [ 93K] fr.po
│ │ │ ├── [9.3K] fur.mo
│ │ │ ├── [ 58K] fur.po
│ │ │ ├── [ 50K] hr.mo
│ │ │ ├── [ 89K] hr.po
│ │ │ ├── [ 25K] hu.mo
│ │ │ ├── [ 66K] hu.po
│ │ │ ├── [ 49K] it.mo
│ │ │ ├── [ 84K] it.po
│ │ │ ├── [ 56K] ja.mo
│ │ │ ├── [ 96K] ja.po
│ │ │ ├── [ 51K] ko.mo
│ │ │ ├── [ 85K] ko.po
│ │ │ ├── [1.9K] lt.mo
│ │ │ ├── [ 38K] lt.po
│ │ │ ├── [ 48K] nb.mo
│ │ │ ├── [ 84K] nb.po
│ │ │ ├── [ 38K] nl.mo
│ │ │ ├── [ 74K] nl.po
│ │ │ ├── [ 50K] pl.mo
│ │ │ ├── [ 84K] pl.po
│ │ │ ├── [ 50K] pt_BR.mo
│ │ │ ├── [ 89K] pt_BR.po
│ │ │ ├── [ 48K] pt.mo
│ │ │ ├── [ 83K] pt.po
│ │ │ ├── [ 757] README
│ │ │ ├── [ 11K] ru.mo
│ │ │ ├── [ 53K] ru.po
│ │ │ ├── [4.8K] sk.mo
│ │ │ ├── [ 50K] sk.po
│ │ │ ├── [ 36K] sl.mo
│ │ │ ├── [ 53K] sl.po
│ │ │ ├── [ 56K] sr.mo
│ │ │ ├── [ 87K] sr.po
│ │ │ ├── [ 62K] sudoers.pot
│ │ │ ├── [ 48K] sv.mo
│ │ │ ├── [ 85K] sv.po
│ │ │ ├── [ 14K] tr.mo
│ │ │ ├── [ 44K] tr.po
│ │ │ ├── [ 67K] uk.mo
│ │ │ ├── [101K] uk.po
│ │ │ ├── [ 53K] vi.mo
│ │ │ ├── [ 92K] vi.po
│ │ │ ├── [ 45K] zh_CN.mo
│ │ │ ├── [ 84K] zh_CN.po
│ │ │ ├── [ 45K] zh_TW.mo
│ │ │ └── [ 80K] zh_TW.po
│ │ ├── [ 28K] policy.c
│ │ ├── [4.0K] prompt.c
│ │ ├── [ 29K] pwutil.c
│ │ ├── [2.2K] pwutil.h
│ │ ├── [ 12K] pwutil_impl.c
│ │ ├── [2.7K] rcstr.c
│ │ ├── [ 14K] redblack.c
│ │ ├── [1.8K] redblack.h
│ │ ├── [4.0K] regress
│ │ │ ├── [4.0K] check_symbols
│ │ │ │ └── [2.8K] check_symbols.c
│ │ │ ├── [4.0K] cvtsudoers
│ │ │ │ ├── [3.8K] sudoers
│ │ │ │ ├── [ 593] sudoers.defs
│ │ │ │ ├── [ 23] test10.out.ok
│ │ │ │ ├── [ 137] test10.sh
│ │ │ │ ├── [ 296] test11.out.ok
│ │ │ │ ├── [ 142] test11.sh
│ │ │ │ ├── [ 317] test12.out.ok
│ │ │ │ ├── [ 139] test12.sh
│ │ │ │ ├── [ 307] test13.out.ok
│ │ │ │ ├── [ 139] test13.sh
│ │ │ │ ├── [ 268] test14.out.ok
│ │ │ │ ├── [ 140] test14.sh
│ │ │ │ ├── [ 32] test15.out.ok
│ │ │ │ ├── [ 154] test15.sh
│ │ │ │ ├── [ 18] test16.out.ok
│ │ │ │ ├── [ 165] test16.sh
│ │ │ │ ├── [ 20] test17.out.ok
│ │ │ │ ├── [ 167] test17.sh
│ │ │ │ ├── [ 18] test18.out.ok
│ │ │ │ ├── [ 154] test18.sh
│ │ │ │ ├── [ 337] test19.out.ok
│ │ │ │ ├── [ 157] test19.sh
│ │ │ │ ├── [ 411] test1.out.ok
│ │ │ │ ├── [ 129] test1.sh
│ │ │ │ ├── [ 162] test20.conf
│ │ │ │ ├── [ 24] test20.out.ok
│ │ │ │ ├── [ 210] test20.sh
│ │ │ │ ├── [ 222] test21.conf
│ │ │ │ ├── [ 438] test21.out.ok
│ │ │ │ ├── [ 239] test21.sh
│ │ │ │ ├── [ 595] test22.out.ok
│ │ │ │ ├── [1.4K] test22.sh
│ │ │ │ ├── [ 593] test23.out.ok
│ │ │ │ ├── [ 200] test23.sh
│ │ │ │ ├── [1.8K] test24.out.ok
│ │ │ │ ├── [ 182] test24.sh
│ │ │ │ ├── [ 595] test25.out.ok
│ │ │ │ ├── [1.1K] test25.sh
│ │ │ │ ├── [ 246] test26.err.ok
│ │ │ │ ├── [ 0] test26.out.ok
│ │ │ │ ├── [ 960] test26.sh
│ │ │ │ ├── [ 369] test27.out.ok
│ │ │ │ ├── [ 177] test27.sh
│ │ │ │ ├── [ 190] test28.out.ok
│ │ │ │ ├── [1.4K] test28.sh
│ │ │ │ ├── [ 95] test29.out.ok
│ │ │ │ ├── [1.2K] test29.sh
│ │ │ │ ├── [ 334] test2.out.ok
│ │ │ │ ├── [ 151] test2.sh
│ │ │ │ ├── [ 692] test30.out.ok
│ │ │ │ ├── [ 305] test30.sh
│ │ │ │ ├── [ 239] test31.conf
│ │ │ │ ├── [ 442] test31.out.ok
│ │ │ │ ├── [ 252] test31.sh
│ │ │ │ ├── [ 49] test32.err.ok
│ │ │ │ ├── [2.1K] test32.out.ok
│ │ │ │ ├── [ 442] test32.sh
│ │ │ │ ├── [ 145] test33.out.ok
│ │ │ │ ├── [1.2K] test33.sh
│ │ │ │ ├── [ 158] test3.out.ok
│ │ │ │ ├── [ 130] test3.sh
│ │ │ │ ├── [ 130] test4.out.ok
│ │ │ │ ├── [ 152] test4.sh
│ │ │ │ ├── [ 184] test5.out.ok
│ │ │ │ ├── [ 130] test5.sh
│ │ │ │ ├── [ 21] test6.out.ok
│ │ │ │ ├── [ 135] test6.sh
│ │ │ │ ├── [ 60] test7.out.ok
│ │ │ │ ├── [ 131] test7.sh
│ │ │ │ ├── [ 27] test8.out.ok
│ │ │ │ ├── [ 133] test8.sh
│ │ │ │ ├── [ 53] test9.out.ok
│ │ │ │ └── [ 131] test9.sh
│ │ │ ├── [4.0K] env_match
│ │ │ │ ├── [2.2K] check_env_pattern.c
│ │ │ │ └── [ 887] data
│ │ │ ├── [4.0K] iolog_path
│ │ │ │ ├── [5.0K] check_iolog_path.c
│ │ │ │ └── [ 876] data
│ │ │ ├── [4.0K] iolog_plugin
│ │ │ │ └── [9.3K] check_iolog_plugin.c
│ │ │ ├── [4.0K] iolog_util
│ │ │ │ └── [4.5K] check_iolog_util.c
│ │ │ ├── [4.0K] logging
│ │ │ │ ├── [3.0K] check_wrap.c
│ │ │ │ ├── [ 311] check_wrap.in
│ │ │ │ └── [8.0K] check_wrap.out.ok
│ │ │ ├── [4.0K] parser
│ │ │ │ ├── [3.7K] check_addr.c
│ │ │ │ ├── [ 341] check_addr.in
│ │ │ │ ├── [3.4K] check_base64.c
│ │ │ │ ├── [3.7K] check_digest.c
│ │ │ │ ├── [4.6K] check_digest.out.ok
│ │ │ │ ├── [5.1K] check_fill.c
│ │ │ │ ├── [2.7K] check_gentime.c
│ │ │ │ └── [2.8K] check_hexchar.c
│ │ │ ├── [4.0K] starttime
│ │ │ │ └── [3.0K] check_starttime.c
│ │ │ ├── [4.0K] sudoers
│ │ │ │ ├── [ 1] test10.in
│ │ │ │ ├── [ 4] test10.json.ok
│ │ │ │ ├── [ 0] test10.ldif.ok
│ │ │ │ ├── [ 12] test10.out.ok
│ │ │ │ ├── [ 1] test10.toke.ok
│ │ │ │ ├── [ 6] test11.in
│ │ │ │ ├── [ 0] test11.json.ok
│ │ │ │ ├── [ 0] test11.ldif.ok
│ │ │ │ ├── [ 37] test11.out.ok
│ │ │ │ ├── [ 13] test11.toke.ok
│ │ │ │ ├── [ 17] test12.in
│ │ │ │ ├── [ 0] test12.json.ok
│ │ │ │ ├── [ 0] test12.ldif.ok
│ │ │ │ ├── [ 37] test12.out.ok
│ │ │ │ ├── [ 27] test12.toke.ok
│ │ │ │ ├── [ 16] test13.in
│ │ │ │ ├── [ 0] test13.json.ok
│ │ │ │ ├── [ 0] test13.ldif.ok
│ │ │ │ ├── [ 37] test13.out.ok
│ │ │ │ ├── [ 26] test13.toke.ok
│ │ │ │ ├── [ 291] test14.in
│ │ │ │ ├── [1.0K] test14.json.ok
│ │ │ │ ├── [ 286] test14.ldif2sudo.ok
│ │ │ │ ├── [ 412] test14.ldif.ok
│ │ │ │ ├── [ 303] test14.out.ok
│ │ │ │ ├── [ 154] test14.toke.ok
│ │ │ │ ├── [ 65] test15.in
│ │ │ │ ├── [ 405] test15.json.ok
│ │ │ │ ├── [ 46] test15.ldif2sudo.ok
│ │ │ │ ├── [ 160] test15.ldif.ok
│ │ │ │ ├── [ 42] test15.out.ok
│ │ │ │ ├── [ 29] test15.toke.ok
│ │ │ │ ├── [ 104] test16.in
│ │ │ │ ├── [ 501] test16.json.ok
│ │ │ │ ├── [ 46] test16.ldif2sudo.ok
│ │ │ │ ├── [ 160] test16.ldif.ok
│ │ │ │ ├── [ 66] test16.out.ok
│ │ │ │ ├── [ 54] test16.toke.ok
│ │ │ │ ├── [ 623] test17.in
│ │ │ │ ├── [4.7K] test17.json.ok
│ │ │ │ ├── [ 628] test17.ldif2sudo.ok
│ │ │ │ ├── [2.0K] test17.ldif.ok
│ │ │ │ ├── [ 539] test17.out.ok
│ │ │ │ ├── [ 651] test17.toke.ok
│ │ │ │ ├── [ 359] test18.in
│ │ │ │ ├── [ 0] test18.json.ok
│ │ │ │ ├── [ 0] test18.ldif.ok
│ │ │ │ ├── [ 140] test18.out.ok
│ │ │ │ ├── [ 520] test18.toke.ok
│ │ │ │ ├── [ 687] test19.in
│ │ │ │ ├── [4.9K] test19.json.ok
│ │ │ │ ├── [ 727] test19.ldif2sudo.ok
│ │ │ │ ├── [1.9K] test19.ldif.ok
│ │ │ │ ├── [ 580] test19.out.ok
│ │ │ │ ├── [ 492] test19.toke.ok
│ │ │ │ ├── [ 447] test1.in
│ │ │ │ ├── [4.0K] test1.json.ok
│ │ │ │ ├── [ 411] test1.ldif2sudo.ok
│ │ │ │ ├── [1.6K] test1.ldif.ok
│ │ │ │ ├── [ 334] test1.out.ok
│ │ │ │ ├── [ 294] test1.toke.ok
│ │ │ │ ├── [ 486] test20.in
│ │ │ │ ├── [2.1K] test20.json.ok
│ │ │ │ ├── [ 458] test20.ldif2sudo.ok
│ │ │ │ ├── [ 660] test20.ldif.ok
│ │ │ │ ├── [ 470] test20.out.ok
│ │ │ │ ├── [ 523] test20.toke.ok
│ │ │ │ ├── [ 894] test21.in
│ │ │ │ ├── [3.3K] test21.json.ok
│ │ │ │ ├── [ 858] test21.ldif2sudo.ok
│ │ │ │ ├── [1.1K] test21.ldif.ok
│ │ │ │ ├── [ 870] test21.out.ok
│ │ │ │ ├── [ 858] test21.toke.ok
│ │ │ │ ├── [ 117] test22.in
│ │ │ │ ├── [2.2K] test22.json.ok
│ │ │ │ ├── [ 147] test22.ldif2sudo.ok
│ │ │ │ ├── [ 652] test22.ldif.ok
│ │ │ │ ├── [ 104] test22.out.ok
│ │ │ │ ├── [ 79] test22.sudo.ok
│ │ │ │ ├── [ 99] test22.toke.ok
│ │ │ │ ├── [1.7K] test2.in
│ │ │ │ ├── [ 10K] test2.json.ok
│ │ │ │ ├── [ 704] test2.ldif2sudo.ok
│ │ │ │ ├── [2.9K] test2.ldif.ok
│ │ │ │ ├── [1.1K] test2.out.ok
│ │ │ │ ├── [2.8K] test2.toke.ok
│ │ │ │ ├── [ 201] test3.in
│ │ │ │ ├── [ 975] test3.json.ok
│ │ │ │ ├── [ 0] test3.ldif2sudo.ok
│ │ │ │ ├── [ 247] test3.ldif.ok
│ │ │ │ ├── [ 149] test3.out.ok
│ │ │ │ ├── [ 187] test3.toke.ok
│ │ │ │ ├── [ 192] test4.in
│ │ │ │ ├── [ 0] test4.json.ok
│ │ │ │ ├── [ 0] test4.ldif.ok
│ │ │ │ ├── [ 79] test4.out.ok
│ │ │ │ ├── [ 103] test4.toke.ok
│ │ │ │ ├── [ 84] test5.in
│ │ │ │ ├── [ 0] test5.json.ok
│ │ │ │ ├── [ 0] test5.ldif.ok
│ │ │ │ ├── [ 37] test5.out.ok
│ │ │ │ ├── [ 84] test5.toke.ok
│ │ │ │ ├── [ 348] test6.in
│ │ │ │ ├── [3.8K] test6.json.ok
│ │ │ │ ├── [ 122] test6.ldif2sudo.ok
│ │ │ │ ├── [1.1K] test6.ldif.ok
│ │ │ │ ├── [ 205] test6.out.ok
│ │ │ │ ├── [ 460] test6.toke.ok
│ │ │ │ ├── [ 164] test7.in
│ │ │ │ ├── [ 0] test7.json.ok
│ │ │ │ ├── [ 0] test7.ldif.ok
│ │ │ │ ├── [ 37] test7.out.ok
│ │ │ │ ├── [ 248] test7.toke.ok
│ │ │ │ ├── [ 161] test8.in
│ │ │ │ ├── [ 0] test8.json.ok
│ │ │ │ ├── [ 0] test8.ldif.ok
│ │ │ │ ├── [ 99] test8.out.ok
│ │ │ │ ├── [ 193] test8.toke.ok
│ │ │ │ ├── [ 0] test9.in
│ │ │ │ ├── [ 4] test9.json.ok
│ │ │ │ ├── [ 0] test9.ldif.ok
│ │ │ │ ├── [ 12] test9.out.ok
│ │ │ │ └── [ 0] test9.toke.ok
│ │ │ ├── [4.0K] testsudoers
│ │ │ │ ├── [ 210] group
│ │ │ │ ├── [ 80] test1.out.ok
│ │ │ │ ├── [ 248] test1.sh
│ │ │ │ ├── [ 15] test2.inc
│ │ │ │ ├── [ 108] test2.out.ok
│ │ │ │ ├── [ 246] test2.sh
│ │ │ │ ├── [ 108] test3.out.ok
│ │ │ │ ├── [ 558] test3.sh
│ │ │ │ ├── [ 127] test4.out.ok
│ │ │ │ ├── [ 240] test4.sh
│ │ │ │ ├── [ 256] test5.out.ok
│ │ │ │ ├── [ 614] test5.sh
│ │ │ │ ├── [ 108] test6.out.ok
│ │ │ │ ├── [ 112] test6.sh
│ │ │ │ ├── [ 108] test7.out.ok
│ │ │ │ └── [ 113] test7.sh
│ │ │ └── [4.0K] visudo
│ │ │ ├── [ 17] test10.out.ok
│ │ │ ├── [ 302] test10.sh
│ │ │ ├── [ 17] test1.out.ok
│ │ │ ├── [ 189] test1.sh
│ │ │ ├── [ 41] test2.err.ok
│ │ │ ├── [ 0] test2.out.ok
│ │ │ ├── [ 297] test2.sh
│ │ │ ├── [ 78] test3.err.ok
│ │ │ ├── [ 17] test3.out.ok
│ │ │ ├── [ 481] test3.sh
│ │ │ ├── [ 17] test4.out.ok
│ │ │ ├── [ 237] test4.sh
│ │ │ ├── [ 17] test5.out.ok
│ │ │ ├── [ 127] test5.sh
│ │ │ ├── [ 17] test6.out.ok
│ │ │ ├── [ 601] test6.sh
│ │ │ ├── [ 17] test7.out.ok
│ │ │ ├── [ 704] test7.sh
│ │ │ ├── [ 67] test8.err.ok
│ │ │ ├── [ 33] test8.out.ok
│ │ │ ├── [ 803] test8.sh
│ │ │ ├── [ 17] test9.out.ok
│ │ │ └── [ 202] test9.sh
│ │ ├── [ 54K] set_perms.c
│ │ ├── [3.4K] solaris_audit.c
│ │ ├── [1.0K] solaris_audit.h
│ │ ├── [ 21K] sssd.c
│ │ ├── [8.5K] starttime.c
│ │ ├── [2.4K] strlist.c
│ │ ├── [1.3K] strlist.h
│ │ ├── [2.6K] stubs.c
│ │ ├── [3.1K] sudoers
│ │ ├── [ 37K] sudoers.c
│ │ ├── [4.6K] sudoers_debug.c
│ │ ├── [2.5K] sudoers_debug.h
│ │ ├── [ 84] sudoers.exp
│ │ ├── [ 13K] sudoers.h
│ │ ├── [3.1K] sudoers.in
│ │ ├── [3.9K] sudoers_version.h
│ │ ├── [3.8K] sudo_ldap_conf.h
│ │ ├── [1.6K] sudo_ldap.h
│ │ ├── [7.4K] sudo_nss.c
│ │ ├── [1.6K] sudo_nss.h
│ │ ├── [1.8K] sudo_printf.c
│ │ ├── [ 44K] sudoreplay.c
│ │ ├── [ 15K] testsudoers.c
│ │ ├── [2.8K] timeout.c
│ │ ├── [ 31K] timestamp.c
│ │ ├── [1.6K] timestr.c
│ │ ├── [171K] toke.c
│ │ ├── [1.4K] toke.h
│ │ ├── [ 27K] toke.l
│ │ ├── [5.4K] toke_util.c
│ │ ├── [8.8K] tsdump.c
│ │ ├── [8.4K] tsgetgrpw.c
│ │ ├── [2.0K] tsgetgrpw.h
│ │ └── [ 35K] visudo.c
│ └── [4.0K] system_group
│ ├── [6.5K] Makefile
│ ├── [6.3K] Makefile.in
│ ├── [4.2K] system_group.c
│ └── [ 13] system_group.exp
├── [4.0K] po
│ ├── [ 19K] ast.mo
│ ├── [ 30K] ast.po
│ ├── [ 19K] ca.mo
│ ├── [ 28K] ca.po
│ ├── [ 19K] cs.mo
│ ├── [ 31K] cs.po
│ ├── [ 18K] da.mo
│ ├── [ 30K] da.po
│ ├── [ 21K] de.mo
│ ├── [ 31K] de.po
│ ├── [ 19K] eo.mo
│ ├── [ 32K] eo.po
│ ├── [ 19K] es.mo
│ ├── [ 32K] es.po
│ ├── [6.6K] eu.mo
│ ├── [ 16K] eu.po
│ ├── [ 20K] fi.mo
│ ├── [ 34K] fi.po
│ ├── [ 20K] fr.mo
│ ├── [ 33K] fr.po
│ ├── [ 18K] fur.mo
│ ├── [ 27K] fur.po
│ ├── [ 17K] gl.mo
│ ├── [ 28K] gl.po
│ ├── [ 19K] hr.mo
│ ├── [ 32K] hr.po
│ ├── [ 20K] hu.mo
│ ├── [ 29K] hu.po
│ ├── [ 20K] it.mo
│ ├── [ 30K] it.po
│ ├── [ 23K] ja.mo
│ ├── [ 36K] ja.po
│ ├── [ 21K] ko.mo
│ ├── [ 32K] ko.po
│ ├── [ 19K] nb.mo
│ ├── [ 31K] nb.po
│ ├── [ 17K] nl.mo
│ ├── [ 25K] nl.po
│ ├── [2.9K] nn.mo
│ ├── [ 27K] nn.po
│ ├── [ 20K] pl.mo
│ ├── [ 30K] pl.po
│ ├── [ 20K] pt_BR.mo
│ ├── [ 33K] pt_BR.po
│ ├── [ 19K] pt.mo
│ ├── [ 30K] pt.po
│ ├── [ 757] README
│ ├── [ 24K] ru.mo
│ ├── [ 35K] ru.po
│ ├── [ 15K] sk.mo
│ ├── [ 25K] sk.po
│ ├── [ 16K] sl.mo
│ ├── [ 22K] sl.po
│ ├── [ 24K] sr.mo
│ ├── [ 35K] sr.po
│ ├── [ 22K] sudo.pot
│ ├── [ 19K] sv.mo
│ ├── [ 31K] sv.po
│ ├── [ 19K] tr.mo
│ ├── [ 32K] tr.po
│ ├── [ 26K] uk.mo
│ ├── [ 37K] uk.po
│ ├── [ 21K] vi.mo
│ ├── [ 35K] vi.po
│ ├── [ 17K] zh_CN.mo
│ ├── [ 30K] zh_CN.po
│ ├── [ 18K] zh_TW.mo
│ └── [ 29K] zh_TW.po
├── [246K] pp
├── [3.1K] README
├── [7.8K] README.LDAP
├── [4.0K] src
│ ├── [4.7K] conversation.c
│ ├── [6.6K] env_hooks.c
│ ├── [ 12K] exec.c
│ ├── [6.4K] exec_common.c
│ ├── [ 23K] exec_monitor.c
│ ├── [ 18K] exec_nopty.c
│ ├── [ 53K] exec_pty.c
│ ├── [4.8K] get_pty.c
│ ├── [6.8K] hooks.c
│ ├── [7.9K] limits.c
│ ├── [ 12K] load_plugins.c
│ ├── [ 39K] Makefile
│ ├── [ 39K] Makefile.in
│ ├── [ 11K] net_ifs.c
│ ├── [1.4K] openbsd.c
│ ├── [ 23K] parse_args.c
│ ├── [2.3K] preload.c
│ ├── [6.3K] preserve_fds.c
│ ├── [4.0K] regress
│ │ ├── [4.0K] noexec
│ │ │ └── [4.8K] check_noexec.c
│ │ └── [4.0K] ttyname
│ │ └── [2.6K] check_ttyname.c
│ ├── [ 14K] selinux.c
│ ├── [7.3K] sesh.c
│ ├── [5.0K] signal.c
│ ├── [3.4K] solaris.c
│ ├── [ 42K] sudo.c
│ ├── [ 31K] sudo_edit.c
│ ├── [3.3K] sudo_exec.h
│ ├── [7.8K] sudo.h
│ ├── [7.2K] sudo_noexec.c
│ ├── [4.3K] sudo_plugin_int.h
│ ├── [1.7K] sudo_usage.h
│ ├── [1.7K] sudo_usage.h.in
│ ├── [2.2K] tcsetpgrp_nobg.c
│ ├── [ 12K] tgetpass.c
│ ├── [9.5K] ttyname.c
│ └── [ 11K] utmp.c
├── [ 17K] sudo.pp
└── [7.8K] TODO
52 directories, 845 files
备注
1. 建议优先通过来源进行访问。
2. 如果因为来源失效或无法访问,请发送邮箱到 f.jinxu#gmail.com 索取本地快照(把 # 换成 @)。
3. 神龙已为您对POC代码进行快照,为了长期维护,请考虑为本地POC付费,感谢您的支持。