Andrew Dolgov
215f388992
move timestamp-related stuff to a separate class
4 years ago
Andrew Dolgov
74568df4ff
remove a lot of stuff from global context (functions.php), add a few helper classes instead
4 years ago
Andrew Dolgov
d04ac399ff
clarify some URL validation-related error messages
4 years ago
Andrew Dolgov
3dd4169b5f
clarify some URL validation-related error messages
4 years ago
Andrew Dolgov
4785f21316
update_rss_feed: log effective URL after fetching
...
validate_url: treat scheme as case-insensitive
4 years ago
Andrew Dolgov
486f1d84ed
resolve_redirects: fix previous
4 years ago
Andrew Dolgov
d2867d887a
resolve_redirects: only use three argument version of get_headers() on php 7.1+
4 years ago
Andrew Dolgov
03a337a660
add basic safe mode which doesn't load any user plugins
4 years ago
Andrew Dolgov
4efc3d7b3f
validate_url: relax requirements for URLs, limit additional port/loopback filtering to fetch_file_contents()
4 years ago
Andrew Dolgov
a4525d31b2
replace FALSE with false so that static analyzer shuts up about it
4 years ago
Andrew Dolgov
57fac84516
rename gettext.inc to gettext.inc.php (cosmetic)
4 years ago
Andrew Dolgov
c25edd0024
fetch_file_contents: validate effective URL (after redirects) without CURL
4 years ago
Andrew Dolgov
27e695436f
fetch_file_contents: validate effective URL (after redirects) if using CURL
4 years ago
Andrew Dolgov
5a7e7e1367
don't try to call hash_equals() on unset user token
4 years ago
Andrew Dolgov
f72e6947d5
use hash_equals() correctly
4 years ago
Andrew Dolgov
e3adacc588
fix several cases of Db class being invoked as wrong name (as DB)
4 years ago
Andrew Dolgov
16c86e2fc3
replace some plain http links with https
4 years ago
Andrew Dolgov
a817d3794d
* use get_random_bytes() for CSRF token
...
* get_random_bytes: use PHP7 random_bytes() if it is available
* validate CSRF token using hash_equals
4 years ago
Andrew Dolgov
1f79d614c4
fix OTP QR code not displayed because of CSRF token passed as a query
...
parameter
use type-strict comparison when validating CSRF token on the backend
4 years ago
Andrew Dolgov
6a4b6cf603
amend previous to 127/8 subnet
4 years ago
Andrew Dolgov
213d6330b1
fetch_file_contents: resolve requested hosts and check for possible
...
loopback address
4 years ago
Andrew Dolgov
88c4dc405e
build_url: also put query parameters and fragment in resulting URL
...
rewrite_relative_url: simplify handling of relative URLs
4 years ago
Andrew Dolgov
da5af2fae0
cached_url: block SVG images because of potential javascript inside
4 years ago
Andrew Dolgov
aeaafefa07
don't pass csrf token as a GET parameter to Article
4 years ago
Andrew Dolgov
1621abcffc
rewrite_relative_url: validate resulting absolutized URLs
4 years ago
Andrew Dolgov
aa89ea7769
validate_url: only allow safe ports (80, 443), disallow access to loopback
4 years ago
Andrew Dolgov
6c02fea641
validate_url: add clean()
4 years ago
Andrew Dolgov
4abc7d7898
rename base64_img() to image_to_base64()
4 years ago
Andrew Dolgov
1ee458b5c1
cached_url: perform mimetype validation before possible HOOK_SEND_LOCAL_FILE hooks
4 years ago
Andrew Dolgov
b4cb67e77f
remove csrf token from rpc method sanityCheck
4 years ago
Andrew Dolgov
c3d14e1fa5
- fix multiple vulnerabilities in af_proxy_http
...
- fix vulnerability in rewrite_relative_url() which prevented some URLs from being properly absolutized
- fetch_file_contents: validate all URLs before requesting them
- validate URLs: explicitly whitelist http and https scheme, forbid everything else
- DiskCache/cached_url: only serve whitelisted content types (images, video)
- simplify filename/URL handling code, remove and consolidate some less-used functions
4 years ago
Andrew Dolgov
6eb94f1e13
better support for image srcset attributes as discussed in https://community.tt-rss.org/t/problem-with-img-srcset/3519
5 years ago
Andrew Dolgov
19893d33e3
only bind up/down in 3 panel mode
5 years ago
Andrew Dolgov
ebb373987a
Revert "unbind up/down by default (use native scrolling for consistency with pgup/pgdn)"
...
This reverts commit 6fc18e450b
.
5 years ago
Andrew Dolgov
6fc18e450b
unbind up/down by default (use native scrolling for consistency with pgup/pgdn)
5 years ago
Andrew Dolgov
9ae9302b6b
implement keyboard-related changes discussed in https://community.tt-rss.org/t/changing-the-amount-of-scroll-by-arrow-key/3452/7
5 years ago
JustAMacUser
7a0ea9d90e
Make iframes size responsively.
5 years ago
Andrew Dolgov
2b55afbeec
sanitize: forbid "allow" attribute
...
CSS: remove auto hyphens stuff, remove iframe width clipping to 98% because they get squished
5 years ago
Andrew Dolgov
2558fcbe21
add hotkey "\" to cancel current search
5 years ago
Andrew Dolgov
e934e9f05e
sanitize: simplify initial attribute processing
5 years ago
Andrew Dolgov
7d9dd51cf4
sanitize: remove srcset plain-http hack, globally disallow width and height attributes for all elements
5 years ago
Andrew Dolgov
83c8834421
sanitize: handle picture[@srcset] elements properly, i.e. rewrite relative URLs
5 years ago
Martin Stone
1ad43dd202
Fix documentation for _noexpand commands
5 years ago
Toby Simmons
569228a5df
In get_version() disable DIRECTORY_SEPARATOR check, permit using git on Windows to get version details;
5 years ago
Andrew Dolgov
4e74da590e
af_readability: allow get full text button to work as a toggle; in cdm, scroll to article after embedding
5 years ago
Andrew Dolgov
07b27b375f
update toggle_embed_original hotkey to invoke readability embed instead of removed embed_original plugin
5 years ago
Andrew Dolgov
4ab3854aed
don't generate default.css, replace with themes/light.css as a default root CSS file
5 years ago
Andrew Dolgov
06b9d39662
add support for image loading=lazy attribute
5 years ago
Andrew Dolgov
6080cca9ca
scrap counter cache system; rework counters to sum() booleans instead
5 years ago
Andrew Dolgov
01513aa41b
disable MAX_FETCH_REQUESTS_PER_HOST warnings for the time being
5 years ago