├── D^3CTF2019_Showhub ├── .gitignore ├── README.md ├── apache2 │ ├── 000-default.conf │ ├── Dockerfile │ └── apache2.conf ├── ats-etc │ └── trafficserver │ │ ├── body_factory │ │ └── default │ │ │ ├── .body_factory_info │ │ │ ├── README │ │ │ ├── access#denied │ │ │ ├── access#proxy_auth_required │ │ │ ├── access#ssl_forbidden │ │ │ ├── cache#not_in_cache │ │ │ ├── cache#read_error │ │ │ ├── congestion#retryAfter │ │ │ ├── connect#dns_failed │ │ │ ├── connect#failed_connect │ │ │ ├── connect#hangup │ │ │ ├── default │ │ │ ├── interception#no_host │ │ │ ├── redirect#moved_permanently │ │ │ ├── redirect#moved_temporarily │ │ │ ├── request#cycle_detected │ │ │ ├── request#invalid_content_length │ │ │ ├── request#no_content_length │ │ │ ├── request#no_host │ │ │ ├── request#scheme_unsupported │ │ │ ├── request#syntax_error │ │ │ ├── response#bad_response │ │ │ ├── response#bad_version │ │ │ ├── timeout#activity │ │ │ ├── timeout#inactivity │ │ │ ├── transcoding#unsupported │ │ │ └── urlrouting#no_mapping │ │ ├── cache.config │ │ ├── cache.config_1 │ │ ├── cluster.config │ │ ├── cluster.config_1 │ │ ├── congestion.config │ │ ├── congestion.config_1 │ │ ├── hosting.config │ │ ├── hosting.config_1 │ │ ├── icp.config │ │ ├── ip_allow.config │ │ ├── ip_allow.config_1 │ │ ├── log_hosts.config │ │ ├── log_hosts.config_1 │ │ ├── logging.config │ │ ├── logging.config_1 │ │ ├── metrics.config │ │ ├── metrics.config_1 │ │ ├── parent.config │ │ ├── parent.config_1 │ │ ├── plugin.config │ │ ├── plugin.config_1 │ │ ├── records.config │ │ ├── records.config_1 │ │ ├── remap.config │ │ ├── remap.config_1 │ │ ├── socks.config │ │ ├── socks.config_1 │ │ ├── splitdns.config │ │ ├── splitdns.config_1 │ │ ├── ssl_multicert.config │ │ ├── ssl_multicert.config_1 │ │ ├── storage.config │ │ ├── storage.config_1 │ │ ├── trafficserver-release │ │ ├── vaddrs.config │ │ ├── vaddrs.config_1 │ │ ├── volume.config │ │ └── volume.config_1 ├── docker-compose.yml ├── flag ├── htdocs │ ├── .htaccess │ ├── Controllers │ │ ├── BaseController.php │ │ ├── IndexController.php │ │ ├── LoginController.php │ │ ├── LogoutController.php │ │ ├── ManageController.php │ │ ├── RegisterController.php │ │ └── WebConsoleController.php │ ├── Core │ │ ├── App.php │ │ ├── Mysql.php │ │ ├── Request.php │ │ └── framework.php │ ├── Models │ │ ├── Model.php │ │ └── User.php │ ├── Templates │ │ ├── 403.html │ │ ├── 404.html │ │ ├── index.html │ │ ├── layout.html │ │ ├── webconsole.html │ │ └── welcome.html │ ├── app.sql │ ├── composer.json │ ├── composer.lock │ ├── config.php │ ├── index.php │ └── static │ │ ├── arispods_pro.jpg │ │ ├── clothes.jpg │ │ └── cosmetics.jpg ├── nginx │ └── default.conf ├── run │ ├── apache2.sh │ ├── ats.sh │ └── nginx.sh ├── smuggling_payload └── to-player │ └── www.tar.gz ├── D^3CTF2021_real_cloud ├── .gitattributes ├── .images │ ├── image-20210309235445715.png │ ├── image-20210310161854461.png │ ├── image-20210310162429028.png │ ├── image-20210310163123500.png │ ├── image-20210310185835793.png │ └── image-20210311215422732.png ├── README.md ├── WriteUp.md ├── frontend │ ├── index.html │ └── static │ │ ├── css │ │ └── tabler.min.css │ │ └── js │ │ └── tabler.min.js ├── k8s │ ├── code │ │ ├── d3cloud-1.0-SNAPSHOT-jar-with-dependencies.jar │ │ └── optionsHandler.py │ ├── fission-all-1.11.2.yaml │ ├── flag.yaml │ ├── initFission.sh │ └── nginx.yaml ├── oss │ ├── Caddyfile │ ├── docker-compose.yaml │ ├── init.sh │ ├── mc │ └── minio └── payload.json └── HCTF2018_kzone ├── Dockerfile ├── README.md ├── apache2.conf ├── docker-compose.yml ├── hctf.sql ├── init.sh ├── start_up.sh ├── uninstall.sh └── web ├── 2018.php ├── Default account&password.txt ├── Tutorial.txt ├── admin ├── delete.php ├── index.php ├── list.php ├── login.php └── pass.php ├── config.php ├── include ├── common.php ├── db.class.php ├── function.php ├── kill.intercept.php ├── member.php ├── os.php └── safe.php ├── index.php ├── install.sql ├── robots.txt └── www.zip /D^3CTF2019_Showhub/.gitignore: -------------------------------------------------------------------------------- 1 | **Cache/ 2 | !.gitkeep 3 | .idea/ 4 | vendor/ 5 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/README.md: -------------------------------------------------------------------------------- 1 | # D^3CTF 2019 Showhub 2 | 3 | ## 题目情况 4 | 5 | | Name | Description | Score|Solved| 6 | | ------ | ------ | ---- | ---- | 7 | | Showhub | Showhub is a fashion-focused community built on a self-developed framework.Download this framework here | 880.7 | 2 | 8 | 9 | ## 如何启动 10 | 11 | ```shell 12 | cd htdocs/ 13 | composer install 14 | docker-compose up -d 15 | ``` 16 | 17 | ## 出题思路以及Write Up: 18 | 19 | ### insert on duplicate key update 注入 20 | 21 | 题目给出了框架部分的源码,只有基本的 MVC 的实现和用户注册登录的逻辑代码。简单审计一下应该就可以发现在`Model::prepareUpdate`和`Model::prepareInsert`这两个方法中存在`格式化字符串SQL注入` 22 | 23 | ```php 24 | static private function ($baseSql, $args) 25 | { 26 | $i = 0; 27 | if (!empty($args)) { 28 | foreach ($args as $column => $value) { 29 | $value = addslashes($value); 30 | if ($value !== null) { 31 | if ($i !== count($args) - 1) { 32 | $baseSql = sprintf($baseSql, "`$column`,%s", "'$value',%s"); 33 | } else { 34 | $baseSql = sprintf($baseSql, "`$column`", "'$value'"); 35 | } 36 | } 37 | $i++; 38 | } 39 | } 40 | 41 | return $baseSql; 42 | } 43 | 44 | static private function prepareUpdate($baseSql, $args) 45 | { 46 | $i = 0; 47 | if (!empty($args)) { 48 | foreach ($args as $column => $value) { 49 | $value = addslashes($value); 50 | if ($value !== null) { 51 | if ($i !== count($args) - 1) { 52 | $baseSql = sprintf($baseSql, "`$column`='$value',%s"); 53 | } else { 54 | $baseSql = sprintf($baseSql, "`$column`='$value'"); 55 | } 56 | } 57 | $i++; 58 | } 59 | } 60 | 61 | return $baseSql; 62 | } 63 | ``` 64 | 65 | 而只有`prepareInsert`方法在用户注册时被触发了,那么我们就拥有了一个`insert`注入。这时候大多数人第一时间的想法都是通过`insert`时间盲注注出管理员密码。然而管理员的密码强度足够,并不能根据其hash值推出明文。 66 | 67 | 这时候就涉及到了一个比较冷门的`insert`注入技巧,就是 `insert on duplicate key update` ,它能够让我们在新插入的一个数据和原有数据发生重复时,修改原有数据。那么我们通过这个技巧修改管理员的密码即可。 68 | 69 | payload:`admin%1$',0x60) on duplicate key update password=0x38643936396565663665636164336332396133613632393238306536383663663063336635643561383661666633636131323032306339323361646336633932#` 70 | 71 | ### HTTP走私 72 | 73 | 成为管理员之后,还需要满足`Client-IP` 为内网 IP。因为这里的`Client-IP`头是反代层面设置的(set $Client-IP $remote_addr), 所以无法通过前端修改请求头来伪造。 74 | 75 | 这时可以从服务器返回的`Server`头中发现,反代是`ATS7.1.2` 那么应该很敏感的想到通过`HTTP走私` 来绕过反代,规避反代设置`Client-IP`。这里需要构造两次走私,一次是访问`/WebConsole`拿到执行命令的接口,一次是访问接口执行命令,构造走私`payload`的过程很有意思,但是嘴上说起来就索然无味了,所以我这里就直接放出我最终的`payload`,不再多说这部分都有哪些坑了,真正有兴趣的同学强烈建议先别看`payload`,自己动手实践一下。 76 | 77 | [payload](./smuggling_payload) 78 | 79 | ### 拓展 80 | 81 | 在当前题目的环境基础上进行少量修改,走私的情况就会发生微小的变化,可能会导致部分`payload`失效。探究这些变化发生的原因,可以帮助你更深入的理解`HTTP走私`,也可能会帮助你发现一些有趣的特性~,欢迎并期待各位师傅随时找我探讨。 82 | 83 | 1. 在`htdocs/Controllers/WebConsoleController.php`将判断内网ip的代码改成直接与`"127.0.0.1"`进行比较(不影响我给出的`payload`,但影响网上流传的部分`payload`) 84 | 85 | 2. 尝试修改`ats-etc/trafficserver/remap.config` 内的配置,使`ATS` 直接反代`Apache`(影响我上面给出的`payload`) 86 | 87 | ## 感谢 88 | 89 | 感谢@spine、@Alias、@Annevi 、@E99plant在出题过程中对我的帮助。 90 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/apache2/000-default.conf: -------------------------------------------------------------------------------- 1 | 2 | # The ServerName directive sets the request scheme, hostname and port that 3 | # the server uses to identify itself. This is used when creating 4 | # redirection URLs. In the context of virtual hosts, the ServerName 5 | # specifies what hostname must appear in the request's Host: header to 6 | # match this virtual host. For the default virtual host (this file) this 7 | # value is not decisive as it is used as a last resort host regardless. 8 | # However, you must set it for any further virtual host explicitly. 9 | #ServerName www.example.com 10 | 11 | ServerAdmin webmaster@localhost 12 | DocumentRoot /var/www/html 13 | 14 | # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, 15 | # error, crit, alert, emerg. 16 | # It is also possible to configure the loglevel for particular 17 | # modules, e.g. 18 | #LogLevel info ssl:warn 19 | 20 | Options -Indexes +FollowSymlinks 21 | AllowOverride All 22 | Require all granted 23 | 24 | 25 | ErrorLog ${APACHE_LOG_DIR}/error.log 26 | CustomLog ${APACHE_LOG_DIR}/access.log combined 27 | 28 | # For most configuration files from conf-available/, which are 29 | # enabled or disabled at a global level, it is possible to 30 | # include a line for only one particular virtual host. For example the 31 | # following line enables the CGI configuration for this host only 32 | # after it has been globally disabled with "a2disconf". 33 | #Include conf-available/serve-cgi-bin.conf 34 | 35 | 36 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/apache2/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM ubuntu:18.04 2 | 3 | #更换apt源 4 | RUN sed -i "s/security.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g" /etc/apt/sources.list && sed -i "s/archive.ubuntu.com/mirrors.tuna.tsinghua.edu.cn/g" /etc/apt/sources.list 5 | #RUN sed -i "s/ppa\.launchpad\.net/lanuchpad.moruy.cn/g" /etc/apt/sources.list.d/*.list 6 | #安装更新及安装必备软件 7 | RUN apt-get update && export DEBIAN_FRONTEND=noninteractive && apt-get install -y apt-utils apache2 mysql-client php7.2 libapache2-mod-php vim curl 8 | RUN apt-get -y upgrade && apt-get -y install php7.2-curl php7.2-mysqli php7.2-gd php7.2-mbstring php7.2-xml php7.2-curl 9 | 10 | #修改apache2配置 11 | RUN rm -rf /etc/apache2/apache2.conf /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-enabled/000-default.conf 12 | COPY 000-default.conf /etc/apache2/sites-available/000-default.conf 13 | COPY apache2.conf /etc/apache2/apache2.conf 14 | RUN chmod 644 /etc/apache2/apache2.conf /etc/apache2/sites-available/000-default.conf && ln -s /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-enabled 15 | RUN a2enmod rewrite 16 | USER root 17 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/apache2/apache2.conf: -------------------------------------------------------------------------------- 1 | # This is the main Apache server configuration file. It contains the 2 | # configuration directives that give the server its instructions. 3 | # See http://httpd.apache.org/docs/2.4/ for detailed information about 4 | # the directives and /usr/share/doc/apache2/README.Debian about Debian specific 5 | # hints. 6 | # 7 | # 8 | # Summary of how the Apache 2 configuration works in Debian: 9 | # The Apache 2 web server configuration in Debian is quite different to 10 | # upstream's suggested way to configure the web server. This is because Debian's 11 | # default Apache2 installation attempts to make adding and removing modules, 12 | # virtual hosts, and extra configuration directives as flexible as possible, in 13 | # order to make automating the changes and administering the server as easy as 14 | # possible. 15 | 16 | # It is split into several files forming the configuration hierarchy outlined 17 | # below, all located in the /etc/apache2/ directory: 18 | # 19 | # /etc/apache2/ 20 | # |-- apache2.conf 21 | # | `-- ports.conf 22 | # |-- mods-enabled 23 | # | |-- *.load 24 | # | `-- *.conf 25 | # |-- conf-enabled 26 | # | `-- *.conf 27 | # `-- sites-enabled 28 | # `-- *.conf 29 | # 30 | # 31 | # * apache2.conf is the main configuration file (this file). It puts the pieces 32 | # together by including all remaining configuration files when starting up the 33 | # web server. 34 | # 35 | # * ports.conf is always included from the main configuration file. It is 36 | # supposed to determine listening ports for incoming connections which can be 37 | # customized anytime. 38 | # 39 | # * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/ 40 | # directories contain particular configuration snippets which manage modules, 41 | # global configuration fragments, or virtual host configurations, 42 | # respectively. 43 | # 44 | # They are activated by symlinking available configuration files from their 45 | # respective *-available/ counterparts. These should be managed by using our 46 | # helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See 47 | # their respective man pages for detailed information. 48 | # 49 | # * The binary is called apache2. Due to the use of environment variables, in 50 | # the default configuration, apache2 needs to be started/stopped with 51 | # /etc/init.d/apache2 or apache2ctl. Calling /usr/bin/apache2 directly will not 52 | # work with the default configuration. 53 | 54 | 55 | # Global configuration 56 | # 57 | 58 | # 59 | # ServerRoot: The top of the directory tree under which the server's 60 | # configuration, error, and log files are kept. 61 | # 62 | # NOTE! If you intend to place this on an NFS (or otherwise network) 63 | # mounted filesystem then please read the Mutex documentation (available 64 | # at ); 65 | # you will save yourself a lot of trouble. 66 | # 67 | # Do NOT add a slash at the end of the directory path. 68 | # 69 | #ServerRoot "/etc/apache2" 70 | 71 | # 72 | # The accept serialization lock file MUST BE STORED ON A LOCAL DISK. 73 | # 74 | #Mutex file:${APACHE_LOCK_DIR} default 75 | 76 | # 77 | # The directory where shm and other runtime files will be stored. 78 | # 79 | 80 | DefaultRuntimeDir ${APACHE_RUN_DIR} 81 | 82 | # 83 | # PidFile: The file in which the server should record its process 84 | # identification number when it starts. 85 | # This needs to be set in /etc/apache2/envvars 86 | # 87 | PidFile ${APACHE_PID_FILE} 88 | 89 | # 90 | # Timeout: The number of seconds before receives and sends time out. 91 | # 92 | Timeout 300 93 | 94 | # 95 | # KeepAlive: Whether or not to allow persistent connections (more than 96 | # one request per connection). Set to "Off" to deactivate. 97 | # 98 | KeepAlive On 99 | 100 | # 101 | # MaxKeepAliveRequests: The maximum number of requests to allow 102 | # during a persistent connection. Set to 0 to allow an unlimited amount. 103 | # We recommend you leave this number high, for maximum performance. 104 | # 105 | MaxKeepAliveRequests 100 106 | 107 | # 108 | # KeepAliveTimeout: Number of seconds to wait for the next request from the 109 | # same client on the same connection. 110 | # 111 | KeepAliveTimeout 5 112 | 113 | 114 | # These need to be set in /etc/apache2/envvars 115 | User ${APACHE_RUN_USER} 116 | Group ${APACHE_RUN_GROUP} 117 | 118 | # 119 | # HostnameLookups: Log the names of clients or just their IP addresses 120 | # e.g., www.apache.org (on) or 204.62.129.132 (off). 121 | # The default is off because it'd be overall better for the net if people 122 | # had to knowingly turn this feature on, since enabling it means that 123 | # each client request will result in AT LEAST one lookup request to the 124 | # nameserver. 125 | # 126 | HostnameLookups Off 127 | 128 | # ErrorLog: The location of the error log file. 129 | # If you do not specify an ErrorLog directive within a 130 | # container, error messages relating to that virtual host will be 131 | # logged here. If you *do* define an error logfile for a 132 | # container, that host's errors will be logged there and not here. 133 | # 134 | ErrorLog ${APACHE_LOG_DIR}/error.log 135 | 136 | # 137 | # LogLevel: Control the severity of messages logged to the error_log. 138 | # Available values: trace8, ..., trace1, debug, info, notice, warn, 139 | # error, crit, alert, emerg. 140 | # It is also possible to configure the log level for particular modules, e.g. 141 | # "LogLevel info ssl:warn" 142 | # 143 | LogLevel warn 144 | 145 | # Include module configuration: 146 | IncludeOptional mods-enabled/*.load 147 | IncludeOptional mods-enabled/*.conf 148 | 149 | # Include list of ports to listen on 150 | Include ports.conf 151 | 152 | 153 | # Sets the default security model of the Apache2 HTTPD server. It does 154 | # not allow access to the root filesystem outside of /usr/share and /var/www. 155 | # The former is used by web applications packaged in Debian, 156 | # the latter may be used for local directories served by the web server. If 157 | # your system is serving content from a sub-directory in /srv you must allow 158 | # access here, or in any related virtual host. 159 | 160 | Options FollowSymLinks 161 | AllowOverride None 162 | Require all denied 163 | 164 | 165 | 166 | AllowOverride None 167 | Require all granted 168 | 169 | 170 | 171 | Options Indexes FollowSymLinks 172 | AllowOverride All 173 | Require all granted 174 | 175 | 176 | # 177 | # Options Indexes FollowSymLinks 178 | # AllowOverride None 179 | # Require all granted 180 | # 181 | 182 | 183 | 184 | 185 | # AccessFileName: The name of the file to look for in each directory 186 | # for additional configuration directives. See also the AllowOverride 187 | # directive. 188 | # 189 | AccessFileName .htaccess 190 | 191 | # 192 | # The following lines prevent .htaccess and .htpasswd files from being 193 | # viewed by Web clients. 194 | # 195 | 196 | Require all denied 197 | 198 | 199 | 200 | # 201 | # The following directives define some format nicknames for use with 202 | # a CustomLog directive. 203 | # 204 | # These deviate from the Common Log Format definitions in that they use %O 205 | # (the actual bytes sent including headers) instead of %b (the size of the 206 | # requested file), because the latter makes it impossible to detect partial 207 | # requests. 208 | # 209 | # Note that the use of %{X-Forwarded-For}i instead of %h is not recommended. 210 | # Use mod_remoteip instead. 211 | # 212 | LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined 213 | LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined 214 | LogFormat "%h %l %u %t \"%r\" %>s %O" common 215 | LogFormat "%{Referer}i -> %U" referer 216 | LogFormat "%{User-agent}i" agent 217 | 218 | # Include of directories ignores editors' and dpkg's backup files, 219 | # see README.Debian for details. 220 | 221 | # Include generic snippets of statements 222 | IncludeOptional conf-enabled/*.conf 223 | 224 | # Include the virtual host configurations: 225 | IncludeOptional sites-enabled/*.conf 226 | 227 | # vim: syntax=apache ts=4 sw=4 sts=4 sr noet 228 | ServerName localhost:80 229 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/.body_factory_info: -------------------------------------------------------------------------------- 1 | # .body_factory_info 2 | # 3 | # The .body_factory_info file contains descriptive information 4 | # about the error pages in this directory. 5 | # 6 | # Currently, .body_factory_info contains information which 7 | # indicates the character set and natural language of the error 8 | # pages in this directory. For example, to describe Korean 9 | # web pages encoded in the iso-2022-kr character set, you might 10 | # add these lines to .body_factory_info file: 11 | # 12 | # Content-Language: kr 13 | # Content-Charset: iso-2022-kr 14 | # 15 | # If this file is empty, or only contains comments, the default is 16 | # assumed: English text in the standard utf-8 character set. 17 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/README: -------------------------------------------------------------------------------- 1 | This directory contains customizable error page templates for the 2 | Apache Traffic Server. 3 | 4 | You can edit the files in this directory to customized HTML error 5 | response pages. The HTML bodies can include ATS logging format 6 | fields, which will be replaced by the current values before the pages 7 | are served to the user. 8 | 9 | You can also include sets of directories, each in a different language, 10 | for serving multi-lingual error pages. 11 | 12 | Each directory of error pages include a .body_factory_info file, which 13 | contains optional information about the language and character set of 14 | the error page contents. 15 | 16 | See the Traffic Server Administrator's Guide and Release Notes for more 17 | information. 18 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/access#denied: -------------------------------------------------------------------------------- 1 | 2 | 3 | Access Denied 4 | 5 | 6 | 7 |

Access Denied

8 |
9 | 10 | 11 | Description: You are not allowed to access the document you requested. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/access#proxy_auth_required: -------------------------------------------------------------------------------- 1 | 2 | 3 | Proxy Authentication Required 4 | 5 | 6 | 7 |

Proxy Authentication Required

8 |
9 | 10 | 11 | Description: Please login with username and password. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/access#ssl_forbidden: -------------------------------------------------------------------------------- 1 | 2 | 3 | SSL Port Forbidden 4 | 5 | 6 | 7 |

SSL Port Forbidden

8 |
9 | 10 | 11 | Description: You have made a request for a secure SSL connection to a 12 | forbidden port number. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/cache#not_in_cache: -------------------------------------------------------------------------------- 1 | 2 | 3 | Not In Cache 4 | 5 | 6 | 7 |

Not In Cache

8 |
9 | 10 | 11 | Description: Your request mandated that the document come from cache, but 12 | the document is not present in cache. As requested, the transaction 13 | is being terminated. 14 | 15 |
16 | 17 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/cache#read_error: -------------------------------------------------------------------------------- 1 | 2 | 3 | Temporary Error 4 | 5 | 6 | 7 |

Temporary Error

8 |
9 | 10 | 11 | Description: Temporary error. Please try again later. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/congestion#retryAfter: -------------------------------------------------------------------------------- 1 | 2 | 3 | Service Unavailable 4 | 5 | 6 | 7 |

Service Unavailable

8 |
9 | 10 | 11 | Description: Service Unavailable
12 | Retry After: % seconds 13 |
14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/connect#dns_failed: -------------------------------------------------------------------------------- 1 | 2 | 3 | Unknown Host 4 | 5 | 6 | 7 |

Unknown Host

8 |
9 | 10 | 11 | Description: Unable to locate the server requested --- 12 | the server does not have a DNS entry. Perhaps there is a misspelling 13 | in the server name, or the server no longer exists. Double-check the 14 | name and try again. 15 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/connect#failed_connect: -------------------------------------------------------------------------------- 1 | 2 | 3 | Could Not Connect 4 | 5 | 6 | 7 |

Could Not Connect

8 |
9 | 10 | 11 | Description: Could not connect to the requested server host. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/connect#hangup: -------------------------------------------------------------------------------- 1 | 2 | 3 | Server Connection Closed 4 | 5 | 6 | 7 |

Server Connection Closed

8 |
9 | 10 | 11 | Description: The server requested closed the connection before 12 | the transaction was completed. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/default: -------------------------------------------------------------------------------- 1 | 2 | 3 | Error 4 | 5 | 6 | 7 |

Error

8 |
9 | 10 | 11 | Description: Could not process this request. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/interception#no_host: -------------------------------------------------------------------------------- 1 | 2 | 3 | Host Header Required 4 | 5 | 6 | 7 |

Host Header Required

8 |
9 | 10 | 11 | Description: An attempt was made to transparently proxy your request, 12 | but this attempt failed because your browser did not send an HTTP "Host" 13 | header. To access this web site correctly, you will need to upgrade to 14 | a browser that supports the HTTP "Host" header field. 15 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/redirect#moved_permanently: -------------------------------------------------------------------------------- 1 | 2 | 3 | Document Has Moved 4 | 5 | 6 | 7 |

Document Has Moved

8 |
9 | 10 | 11 | Description: The document you requested has moved to a new location. The new location is "%<{Location}epsh>". 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/redirect#moved_temporarily: -------------------------------------------------------------------------------- 1 | 2 | 3 | Document Has Moved 4 | 5 | 6 | 7 |

Document Has Moved

8 |
9 | 10 | 11 | Description: The document you requested has moved to a new location. The new location is "%<{Location}epsh>". 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#cycle_detected: -------------------------------------------------------------------------------- 1 | 2 | 3 | Cycle Prohibited 4 | 5 | 6 | 7 |

Cycle Prohibited

8 |
9 | 10 | 11 | Description: Could not process your request for the document 12 | because it would cause an HTTP proxy cycle. Please check the URL and your 13 | browser's proxy settings. 14 | 15 |
16 | 17 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#invalid_content_length: -------------------------------------------------------------------------------- 1 | 2 | 3 | Invalid Content Length 4 | 5 | 6 | 7 |

Invalid Content Length

8 |
9 | 10 | 11 | Description: Could not process this request because 12 | the specified Content-Length was invalid (less than 0). 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#no_content_length: -------------------------------------------------------------------------------- 1 | 2 | 3 | No Content Length 4 | 5 | 6 | 7 |

No Content Length

8 |
9 | 10 | 11 | Description: Could not process this request because 12 | there was no Content-Length specified. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#no_host: -------------------------------------------------------------------------------- 1 | 2 | 3 | Host Header Required 4 | 5 | 6 | 7 |

Host Header Required

8 |
9 | 10 | 11 | Description: Your browser did not send a "Host" HTTP header field 12 | and therefore the virtual host being requested could not be determined. 13 | To access this web site correctly, you will need to upgrade to a browser 14 | that supports the HTTP "Host" header field. 15 | 16 |
17 | 18 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#scheme_unsupported: -------------------------------------------------------------------------------- 1 | 2 | 3 | Unsupported Protocol 4 | 5 | 6 | 7 |

Unsupported Protocol

8 |
9 | 10 | 11 | Description: Can't perform your request for the document because 12 | the protocol scheme is unknown. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/request#syntax_error: -------------------------------------------------------------------------------- 1 | 2 | 3 | Bad Request 4 | 5 | 6 | 7 |

Bad Request

8 |
9 | 10 | 11 | Description: Could not process this request. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/response#bad_response: -------------------------------------------------------------------------------- 1 | 2 | 3 | Web Server Error 4 | 5 | 6 | 7 |

Web Server Error

8 |
9 | 10 | 11 | Description: The host requested did not return the document correctly. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/response#bad_version: -------------------------------------------------------------------------------- 1 | 2 | 3 | HTTP Version Not Supported 4 | 5 | 6 | 7 |

HTTP Version Not Supported

8 |
9 | 10 | 11 | Description: The web server requested is using an unsupported 12 | version of the HTTP protocol. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/timeout#activity: -------------------------------------------------------------------------------- 1 | 2 | 3 | Activity Timeout 4 | 5 | 6 | 7 |

Activity Timeout

8 |
9 | 10 | 11 | Description: Too much time has passed transmitting document. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/timeout#inactivity: -------------------------------------------------------------------------------- 1 | 2 | 3 | Inactivity Timeout 4 | 5 | 6 | 7 |

Inactivity Timeout

8 |
9 | 10 | 11 | Description: Too much time has passed without sending any data for document. 12 | 13 |
14 | 15 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/transcoding#unsupported: -------------------------------------------------------------------------------- 1 | 2 | 3 | Transcoding Not Available 4 | 5 | 6 | 7 |

Transcoding Not Available

8 |
9 | 10 | 11 | 12 | Description: Unable to provide the document in the 13 | format requested by your browser. 14 | 15 |
16 | 17 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/body_factory/default/urlrouting#no_mapping: -------------------------------------------------------------------------------- 1 | 2 | 3 | Not Found on Accelerator 4 | 5 | 6 | 7 |

Not Found on Accelerator

8 |
9 | 10 | 11 | Description: Your request on the specified host was not found. 12 | Check the location and try again. 13 | 14 |
15 | 16 | -------------------------------------------------------------------------------- /D^3CTF2019_Showhub/ats-etc/trafficserver/cache.config: -------------------------------------------------------------------------------- 1 | # 2 | # cache.config 3 | # 4 | # Documentation: 5 | # https://docs.trafficserver.apache.org/en/latest/admin-guide/files/cache.config.en.html 6 | # 7 | # The purpose of this file is to alter caching parameters of 8 | # specific objects or sets of objects 9 | # 10 | # Each line consists of a set of tag value pairs. The pairs 11 | # are in the format = 12 | # 13 | # Each line must include exactly one primary specifier 14 | # 15 | # Primary destination specifiers are 16 | # dest_domain= 17 | # dest_host= 18 | # dest_ip= 19 | # url_regex= 20 | # 21 | # 22 | # Lines may include any number of the secondary specifiers but 23 | # secondary specifiers may not be duplicated on the same line 24 | # 25 | # Secondary specifiers are 26 | # port= 27 | # scheme= 28 | # prefix= 29 | # suffix= 30 | # method= 31 | # time= 32 | # src_ip= 33 | # internal={true,false} 34 | # 35 | # Each line must include exactly one cache directive 36 | # Cache directives are 37 | # action=never-cache 38 | # action=ignore-no-cache (client & server no cache) 39 | # action=ignore-client-no-cache (only client no cache) 40 | # action=ignore-server-no-cache (only server no cache) 41 | # pin-in-cache=