Ủa, là sao?
Chuyện là tui đang đi dạo Facebook, và tui thấy một bài post như vầy…
Cũng không có gì thú vị, thứ làm tui muốn tìm hiểu là cái domain kia kìa: https://cdn.fpt.wiki/xxx.mp4
.
Hông lẽ trường FPT có domain với web này, mà dù cho là có, thì tại sao lại lưu trữ cái video như này nhề :))
Dạo chơi một xíu
Thường thì những subdomain CDN (Content Delivery Network) sẽ trỏ về một server chuyên phân phối dữ liệu cho website.
Thử truy cập cái link đó coi sao. Oops, Access Denied rồi…
Tui vẫn không biết là tại sao lại Access Denied, chắc là do tường lửa.
Thử lấy IP coi sao. Tui ping
tới cái trang web đó.
ping cnd.fpt.wiki
Truy cập trực tiếp thông qua IP vừa nhận được, và… CloudFlare chặn tui :(
Cũng nhờ đó mà tui biết được Server này nằm sau CloudFlare… Tạm thời để nó đó đã. Tui thử truy cập vô cái domain chính của nó thử coi.
fpt.wiki
Chào đón tui là một cái 403 Forbiden siêu to :))
Tui ổn… Mà nhờ đó tui biết được webserver là NGINX (v.1.18) và host OS là Ubuntu.
Thực hiện lệnh ping
đến domain, thu được IP. Cái này phải thử, vì web server có thể config để chặn các truy cập qua domain name nhưng đôi khi truy cập trực tiếp qua IP thì web server sẽ không chặn, hehe…
> ping fpt.wiki
Pinging fpt.wiki [205.189.160.132] with 32 bytes of data:
Request timed out.
Reply from 205.189.160.132: bytes=32 time=113ms TTL=51
Reply from 205.189.160.132: bytes=32 time=126ms TTL=51
Reply from 205.189.160.132: bytes=32 time=132ms TTL=51
Ping statistics for 205.189.160.132:
Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
Minimum = 113ms, Maximum = 132ms, Average = 123ms
Yep, và NGINX đã không chặn… cảm ơn bạn nào đã config cái webserver nha.
Scanning time…
Dùng whatweb
để thu thập một số thông tin cơ bản từ CDN domain.
Nó là một cái CloudFlare siêu to khổng lồ với 403 Forbidden ;)
tui nghỉ chơi với cái CDN rồi, qua tìm hiểu về cái fpt.wiki
.
Vẫn dùng WhatWeb để scan, vẫn là những thông tin đó, không có gì khác.
Tui dùng nmap
để scan cho chắc. Scan nhanh qua xem có những gì nào.
$ nmap fpt.wiki
Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for fpt.wiki (205.189.160.132)
Host is up (0.088s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
443/tcp open https
445/tcp filtered microsoft-ds
Nmap done: 1 IP address (1 host up) scanned in 10.25 seconds
Vậy là có cổng 22 (SSH), 80 (HTTP) và 443 (HTTPS).
Có nghĩa là trên cổng 80, không cho truy cập thông qua domain name và chạy một website khác. Trên cổng 443 cho được cấu hình để truy cập từ domain name (và tất nhiên là có thể truy cập trực tiếp thông qua IP).
Dùng WhatWeb trên fpt.wiki
thông qua HTTPS
$ whatweb -v https://fpt.wiki
WhatWeb report for https://fpt.wiki
Status : 200 OK
Title : Up ảnh miễn phí - Anh.Moe
IP : 205.189.160.132
Country : CANADA, CA
Summary : Open-Graph-Protocol[website][517925549770575], HttpOnly[PHPSESSID], MetaGenerator[Chevereto 3], nginx[1.18.0], JQuery, Cookies[PHPSESSID], HTTPServer[Ubuntu Linux][nginx/1.18.0 (Ubuntu)], HTML5, UncommonHeaders[permissions-policy,content-security-policy], Script[application/ld+json]
Detected Plugins:
[ Cookies ]
Display the names of cookies in the HTTP headers. The
values are not returned to save on space.
String : PHPSESSID
[ HTML5 ]
HTML version 5, detected by the doctype declaration
[ HTTPServer ]
HTTP server header string. This plugin also attempts to
identify the operating system from the server header.
OS : Ubuntu Linux
String : nginx/1.18.0 (Ubuntu) (from server string)
[ HttpOnly ]
If the HttpOnly flag is included in the HTTP set-cookie
response header and the browser supports it then the cookie
cannot be accessed through client side script - More Info:
http://en.wikipedia.org/wiki/HTTP_cookie
String : PHPSESSID
[ JQuery ]
A fast, concise, JavaScript that simplifies how to traverse
HTML documents, handle events, perform animations, and add
AJAX.
Website : http://jquery.com/
[ MetaGenerator ]
This plugin identifies meta generator tags and extracts its
value.
String : Chevereto 3
[ Open-Graph-Protocol ]
The Open Graph protocol enables you to integrate your Web
pages into the social graph. It is currently designed for
Web pages representing profiles of real-world things .
things like movies, sports teams, celebrities, and
restaurants. Including Open Graph tags on your Web page,
makes your page equivalent to a Facebook Page.
Version : website
Module : 517925549770575
[ Script ]
This plugin detects instances of script HTML elements and
returns the script language/type.
String : application/ld+json
[ UncommonHeaders ]
Uncommon HTTP server headers. The blacklist includes all
the standard headers and many non standard but common ones.
Interesting but fairly common headers should have their own
plugins, eg. x-powered-by, server and x-aspnet-version.
Info about headers can be found at www.http-stats.com
String : permissions-policy,content-security-policy (from headers)
[ nginx ]
Nginx (Engine-X) is a free, open-source, high-performance
HTTP server and reverse proxy, as well as an IMAP/POP3
proxy server.
Version : 1.18.0
Website : http://nginx.net/
HTTP Headers:
HTTP/1.1 200 OK
Server: nginx/1.18.0 (Ubuntu)
Date: Fri, 18 Nov 2022 18:25:31 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: close
Set-Cookie: PHPSESSID=u96qgaduahussqbsck5cb8g49t; path=/; HttpOnly
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate
Pragma: no-cache
Permissions-Policy: interest-cohort=()
Content-Security-Policy: frame-ancestors 'none'
Content-Encoding: gzip
Sơ lược thì website này là một nơi mà tui có thể up hình lên và chia sẻ các hình ảnh, video trên đây. Nói đến đây chắc là mọi người cũng có thể đoán được trên đây sẽ chứa những nội dung gì rồi heeee.
Với các thông có được, tui có thể tạm kết luận là:
- Webserver được đặt tại CANADA - CA
- Webserver là NGINX và host là Ubuntu
- Website được tạo bằng PHP
- Website là một bản sao của Chevereto 3 - một phần mềm để host hình ảnh.
Đây là hình ảnh khi truy cập vào website
Scan kỹ hơn đi :D
Tui dùng nmap để scan
$ sudo nmap -O -A --script=vuln 205.189.160.132
Starting Nmap 7.80 ( https://nmap.org ) at 2022-11-19 02:08 +07
Nmap scan report for 205.189.160.132
Host is up (0.092s latency).
Not shown: 993 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; protocol 2.0)
|_clamav-exec: ERROR: Script execution failed (use -d to debug)
| vulners:
| cpe:/a:openbsd:openssh:8.2p1:
| CVE-2020-15778 6.8 https://vulners.com/cve/CVE-2020-15778
| C94132FD-1FA5-5342-B6EE-0DAF45EEFFE3 6.8 https://vulners.com/githubexploit/C94132FD-1FA5-5342-B6EE-0DAF45EEFFE3 *EXPLOIT*
| 10213DBE-F683-58BB-B6D3-353173626207 6.8 https://vulners.com/githubexploit/10213DBE-F683-58BB-B6D3-353173626207 *EXPLOIT*
| CVE-2020-12062 5.0 https://vulners.com/cve/CVE-2020-12062
| CVE-2021-28041 4.6 https://vulners.com/cve/CVE-2021-28041
| CVE-2021-41617 4.4 https://vulners.com/cve/CVE-2021-41617
| CVE-2020-14145 4.3 https://vulners.com/cve/CVE-2020-14145
| CVE-2016-20012 4.3 https://vulners.com/cve/CVE-2016-20012
|_ CVE-2021-36368 2.6 https://vulners.com/cve/CVE-2021-36368
25/tcp filtered smtp
80/tcp open http nginx 1.18.0 (Ubuntu)
|_clamav-exec: ERROR: Script execution failed (use -d to debug)
|_http-csrf: Couldn't find any CSRF vulnerabilities.
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-server-header: nginx/1.18.0 (Ubuntu)
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
| vulners:
| cpe:/a:igor_sysoev:nginx:1.18.0:
| OSV:CVE-2022-41742 0.0 https://vulners.com/osv/OSV:CVE-2022-41742
| OSV:CVE-2022-41741 0.0 https://vulners.com/osv/OSV:CVE-2022-41741
|_ OSV:CVE-2021-3618 0.0 https://vulners.com/osv/OSV:CVE-2021-3618
135/tcp filtered msrpc
139/tcp filtered netbios-ssn
443/tcp open ssl/http nginx 1.18.0 (Ubuntu)
|_clamav-exec: ERROR: Script execution failed (use -d to debug)
| http-csrf:
| Spidering limited to: maxdepth=3; maxpagecount=20; withinhost=205.189.160.132
| Found the following possible CSRF vulnerabilities:
|
| Path: https://205.189.160.132:443/
| Form id:
| Form action: https://205.189.160.132/search/images/
|
| Path: https://205.189.160.132:443/
| Form id: as_q
| Form action: https://205.189.160.132/search/images/
|
| Path: https://205.189.160.132:443/%5c%22%25MEDIUM_URL%25%5c%22
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%22%25MEDIUM_URL%25%5c%22
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/page/dieukhoan
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/page/dieukhoan
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%5c%5c%22https:%5c/%5c/apps.twitter.com%5c%5c%5c%22
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%5c%5c%22https:%5c/%5c/apps.twitter.com%5c%5c%5c%22
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/openerPostMessage
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/openerPostMessage
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/cancel-upload-remaining
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/cancel-upload-remaining
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/anywhere-upload-input
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/anywhere-upload-input
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/resize-combo-input
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/resize-combo-input
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/top-bar-search-input
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/top-bar-search-input
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/plugin
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/plugin
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/top-bar-upload
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/top-bar-upload
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/?lang=vi
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/?lang=vi
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/cancel
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/cancel
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%22%25URL%25%5c%22
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%22%25URL%25%5c%22
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%5c%5c%22%25s%5c%5c%5c%22
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/%5c%5c%5c%22%25s%5c%5c%5c%22
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/edit
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/edit
| Form id: as_q
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/reset-upload
| Form id:
| Form action: https://205.189.160.132:443/search/images/
|
| Path: https://205.189.160.132:443/reset-upload
| Form id: as_q
|_ Form action: https://205.189.160.132:443/search/images/
|_http-dombased-xss: Couldn't find any DOM based XSS.
|_http-passwd: ERROR: Script execution failed (use -d to debug)
|_http-server-header: nginx/1.18.0 (Ubuntu)
| http-sql-injection:
| Possible sqli for queries:
| https://205.189.160.132:443/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%22%25MEDIUM_URL%25%5c%22/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%22%25MEDIUM_URL%25%5c%22/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%5c%5c%22https:%5c/%5c/apps.twitter.com%5c%5c%5c%22/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%5c%5c%22https:%5c/%5c/apps.twitter.com%5c%5c%5c%22/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/openerPostMessage/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/openerPostMessage/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/cancel-upload-remaining/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/cancel-upload-remaining/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/anywhere-upload-input/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/anywhere-upload-input/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/resize-combo-input/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/resize-combo-input/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/top-bar-search-input/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/top-bar-search-input/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/plugin/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/plugin/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/top-bar-upload/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/top-bar-upload/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/cancel/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/cancel/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%22%25URL%25%5c%22/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%22%25URL%25%5c%22/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%5c%5c%22%25s%5c%5c%5c%22/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/%5c%5c%5c%22%25s%5c%5c%5c%22/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/edit/?lang=en%27%20OR%20sqlspider
| https://205.189.160.132:443/edit/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/reset-upload/?lang=vi%27%20OR%20sqlspider
| https://205.189.160.132:443/app/lib/chevereto.min.js?8adf32fc9f6e51de0218e7b207238eb0=%27%20OR%20sqlspider
| https://205.189.160.132:443/reset-upload/?lang=en%27%20OR%20sqlspider
| Possible sqli for forms:
| Form at path: /, form's action: https://205.189.160.132/search/images/. Fields that might be vulnerable:
| as_q
| as_epq
| as_eq
| Form at path: /page/dieukhoan, form's action: https://205.189.160.132:443/search/images/. Fields that might be vulnerable:
| q
| Form at path: /page/dieukhoan, form's action: https://205.189.160.132:443/search/images/. Fields that might be vulnerable:
| as_q
| as_epq
| as_eq
| Form at path: /plugin, form's action: https://205.189.160.132:443/search/images/. Fields that might be vulnerable:
| as_eq
| Form at path: /, form's action: https://205.189.160.132:443/search/images/. Fields that might be vulnerable:
|_ as_eq
|_http-stored-xss: Couldn't find any stored XSS vulnerabilities.
|_sslv2-drown:
| vulners:
| cpe:/a:igor_sysoev:nginx:1.18.0:
| OSV:CVE-2022-41742 0.0 https://vulners.com/osv/OSV:CVE-2022-41742
| OSV:CVE-2022-41741 0.0 https://vulners.com/osv/OSV:CVE-2022-41741
|_ OSV:CVE-2021-3618 0.0 https://vulners.com/osv/OSV:CVE-2021-3618
445/tcp filtered microsoft-ds
Aggressive OS guesses: Linux 2.6.32 (92%), Linux 4.4 (92%), Linux 2.6.32 or 3.10 (91%), Linux 2.6.32 - 2.6.35 (90%), Linux 2.6.32 - 2.6.39 (90%), Linux 4.0 (89%), Linux 3.11 - 4.1 (89%), Linux 3.2 - 3.8 (89%), Linux 2.6.18 (88%), Linux 2.6.32 - 3.0 (88%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 20 hops
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Thôi thì cũng lười… nên tạm bỏ qua.
Có gì update không?
Dạo gần đây, tui có vào lại fpt.wiki
. Trang trông khác hẳn. Tuy giờ trang đã shutdown nhưng tui đã có tìm hiểu thử rồi nên tường thuật lại đây.
Chức năng của trang là tra cứu thông tin của toàn bộ, xin nhấn mạnh “TOÀN BỘ” thông tin của sinh viên trường Đại học FPT trên tất cả các cơ sở.
Giao diện web cũng rất đơn giản, người dùng chỉ cần chọn cơ sở theo học và mã số sinh viên thì sẽ lấy được tất cả các thông tin mà trường lưu trữ, ví dụ tên, điểm, số điện thoại, địa chỉ…. Và hành động này không yêu cầu đăng nhập và một người dùng bình thường có thể truy cập được các thông tin này mà không cần các kỹ thuật gì khác.
Điều này cho thấy một vài lỗ hỗng trong quá trình lưu trữ thông tin của trường. Nhưng cho đến hiện tại thì đã có một vài giải pháp được áp dụng.
Tuy nhiên, bây giờ website “tra cứu thông tin” này đã được một người tốt bụng cute dễ thương siêu cấp vip pro đem đi report và đã đóng cửa. Do thời gian hoạt động khá ngắn nên không còn thông tin từ cache của search engine hay từ Wayback Machine! Tuy nhiên tui vẫn tin rằng vẫn sẽ có một hoặc nhiều instance khác đang hoạt động, nhưng do tui không biết mà thôi.
Còn về phần địa chỉ IP 205.189.160.132
thì vẫn đang hoạt động nhưng không còn các service gì khác ngoài NGINX.
Kết
Sự việc này cũng chỉ là tình cờ nhưng tui đã tìm thấy vài sự thật nho nhỏ thú vị. Các website này tuy ít người biết nhưng việc để các thông tin nhạy cảm có thể được truy cập công khai như website trên là sai trái. Cũng như vẫn đang còn các website đang lưu trữ, truyền bá các media không đúng thuần phong mỹ tục.
Cũng khá lâu rồi tui mới có một bài phân tích và report như này! Do đây là cái report không chuyên nên có góp ý thì hãy email vào contact@codechovui.dev nhe.