Lukas Reschke
ba4f12baa0
Implement brute force protection
...
Class Throttler implements the bruteforce protection for security actions in
Nextcloud.
It is working by logging invalid login attempts to the database and slowing
down all login attempts from the same subnet. The max delay is 30 seconds and
the starting delay are 200 milliseconds. (after the first failed login)
2016-07-20 22:08:56 +02:00
Lukas Reschke
a299fa38a9
[master] Port Same-Site Cookies to master
...
Fixes https://github.com/nextcloud/server/issues/50
2016-07-20 18:37:57 +02:00
Roeland Douma
13a25535d2
Merge pull request #400 from nextcloud/ocs_appframework
...
OCS routes use AppFramework
2016-07-19 12:21:14 +02:00
Roeland Jago Douma
1caceea6c0
Make the OCS endpoint handle the new OCS AppFramework routes
2016-07-18 11:09:45 +02:00
Joas Schilling
2c988ecbf4
Use the themed Defaults everywhere
2016-07-15 09:17:30 +02:00
Morris Jobke
2791b8f00d
Revert "occ web executor ( #24957 )"
...
This reverts commit 854352d9a0
.
2016-07-07 12:14:45 +02:00
Morris Jobke
e3b509220b
Revert "Bypass upgrade page when occ controller is requested"
...
This reverts commit 89e581acf8
.
2016-07-07 12:14:39 +02:00
Morris Jobke
ba16fd0d33
Merge branch 'master' into sync-master
2016-07-07 11:29:46 +02:00
Victor Dubiniuk
e38bbdc9fe
Bypass upgrade page when occ controller is requested
2016-07-05 09:20:37 +03:00
Thomas Pulzer
90b7f74da7
Changed name of default logfile from owncloud.log to nextcloud.log.
2016-07-04 11:50:32 +02:00
Lukas Reschke
7a9d60d87e
Merge remote-tracking branch 'upstream/master' into master-upstream-sync
2016-06-26 12:55:05 +02:00
VicDeo
854352d9a0
occ web executor ( #24957 )
...
* Initial web executor
* Fix PHPDoc
Fix broken integration test
OccControllerTests do not require database access - moch them all!
Kill unused sprintf
2016-06-22 13:12:36 +02:00
Joachim Sokolowski
fa19e4c2eb
some text-changes to nextcloud
2016-06-22 08:41:10 +02:00
Arthur Schiwon
39aeebfac5
Print error message again, when 3rdparty submodule is not initialized
...
- old code used Response which attempted to use OC::$server which is not
and cannot be intialised at this part of the code.
2016-06-08 10:34:32 +02:00
Lukas Reschke
aba539703c
Update license headers
2016-05-26 19:57:24 +02:00
Joas Schilling
6222d42462
Fix class name in hook registration
2016-05-24 10:42:11 +02:00
Roeland Jago Douma
c9ad60defc
Only allow loading of legacy (lib/private/legacy) by default
2016-05-20 16:35:07 +02:00
Roeland Jago Douma
d666725fa7
Move \OCP to PSR-4
2016-05-19 09:43:33 +02:00
Vincent Petry
379be91618
Merge pull request #24597 from owncloud/run-upgrade-in-incognito-mode
...
run upgrades in incognito mode
2016-05-17 16:14:11 +02:00
Roeland Douma
5c9103287f
Group fixup ( #24621 )
...
* Move used OC_Group_xx to \OC\Group
* Add (deprecated) legacy wrapper in legacy, OC_Group_xx
* Replace deprecated use of OC_Group_xx with \OC\Group\xx
2016-05-17 16:06:44 +02:00
Christoph Wurst
8b6bb0a426
Log user out correctly if max session lifetime is reached ( #24552 )
2016-05-12 12:09:13 +02:00
Christoph Wurst
3a1882b143
run upgrades in incognito mode
2016-05-12 11:56:58 +02:00
Christoph Wurst
168ccf90a6
try apache auth too
2016-05-11 13:36:46 +02:00
Christoph Wurst
d8cde414bd
token based auth
...
* Add InvalidTokenException
* add DefaultTokenMapper and use it to check if a auth token exists
* create new token for the browser session if none exists
hash stored token; save user agent
* encrypt login password when creating the token
2016-05-11 13:36:46 +02:00
Roeland Jago Douma
9e1d9871a8
Move OC_User_Database to \OC\User\Database
2016-05-10 19:53:36 +02:00
Joas Schilling
8668560352
Keep the composer instance so we can add psr4 paths later
2016-05-02 14:10:53 +02:00
Thomas Müller
e37b95ae53
Merge pull request #24200 from owncloud/appframework_psr4
...
Move \OC\AppFramework to PSR-4
2016-04-22 17:22:02 +02:00
Thomas Müller
f56be022a3
Disable web updater if ldap or shibboleth are installed - refs https://github.com/owncloud/core/issues/23913#issuecomment-213432232
2016-04-22 15:53:27 +02:00
Roeland Jago Douma
1d33a5ef13
Move \OC\AppFramework to PSR-4
...
* Also moved the autoloader setup a bit up since we need it in initpaths
2016-04-22 15:28:09 +02:00
Lukas Reschke
afad27fafd
Merge pull request #24075 from owncloud/no-html-on-cli
...
In case of fatal php errors and other unhandled exceptions no html er…
2016-04-20 13:50:43 +02:00
Thomas Müller
1773dcbef2
Merge pull request #23973 from owncloud/share_move_post_delete_from_group_hook
...
Move post_removeFromGroup to shareManager
2016-04-19 06:59:58 +02:00
Thomas Müller
c609abf075
In case of fatal php errors and other unhandled exceptions no html error page is expected to be displayed in the console
2016-04-18 22:30:01 +02:00
Lukas Reschke
8222ad5157
Move logout to controller
...
Testable code. Yay.
2016-04-18 21:21:52 +02:00
Thomas Müller
739dfb5c66
Suggest cli based updater in case the instance is bigger - #23913
2016-04-18 17:09:21 +02:00
Lukas Reschke
17dfffefb3
Keep used username in URL
...
This is required until the new controller can also handle POST requests
2016-04-15 19:33:25 +02:00
Lukas Reschke
331e4efacb
Move login form into controller
...
First step on getting the authorisation stuff cleaned up. This is only for the login form, all other stuff is still where it is.
2016-04-15 17:36:23 +02:00
Thomas Müller
dc061bae42
Kill movable 3rdparty
2016-04-14 17:59:49 +02:00
Roeland Jago Douma
6144ced7a0
Move post_removeFromGroup to shareManager
...
The last sharing hook to be moved over.
* Added unit tests
* Removed old tests that relied on old behaviour
* Removed old hooks.php
2016-04-13 15:00:12 +02:00
Roeland Douma
495a964ca2
Migrate post_groupDelete hook to share manager ( #23841 )
...
The hook now calls the share manager that will call the responsible
shareProvider to do the proper cleanup.
* Unit tests added
Again nothing should change it is just to cleanup old code
2016-04-12 09:46:25 +02:00
Joas Schilling
8e16e7bf34
Merge pull request #23856 from owncloud/share_remove_addtogroup_hooks
...
Remove pre/post_addToGroup hooks for shares
2016-04-11 15:05:20 +02:00
Roeland Jago Douma
3fae4c82d2
Remove pre/post_addToGroup hooks for shares
...
There is no need to perform the checks for unique targets on add to
group as we have to do this all when mounting the shares anyway.
2016-04-08 11:56:38 +02:00
Stefan Weil
b1a856d7b7
lib: Fix typos (found by codespell)
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-07 19:51:27 +02:00
Joas Schilling
0de15a86f0
Merge pull request #23773 from owncloud/share_move_delete_user_hook
...
Migrate post_userDelete hook to share manager
2016-04-07 13:01:10 +02:00
Roeland Jago Douma
e0cee43cf0
Migrate post_userDelete hook to share manager
...
This makes the post_userDelete hook call the sharemanager. This will
cleanup to and from this user.
* All shares owned by this user
* All shares with this user (user)
* All custom group shares
* All link share initiated by this user (to avoid invisible link shares)
Unit tests are added for the defaultshare provider as well as the
federated share provider
2016-04-04 14:15:38 +02:00
Thomas Müller
1bf4c75e8b
Show individual sql schema migration steps during upgrade - on web as well as on the command line
2016-04-04 12:34:18 +02:00
Bjoern Schiessle
93ed965cbb
fix creation of versions of encrypted files on external storages
...
in order to create a 1:1 copy of a file if a version gets created
we need to store this information on copyBetweenStorage(). This
allows us to by-pass the encryption wrapper if we read the source file.
2016-03-31 19:24:47 +02:00
Thomas Müller
61c5717281
Merge pull request #23463 from owncloud/lets-consistently-use-no-referer
...
Consistently use rel=noreferrer
2016-03-23 09:14:54 +01:00
Lukas Reschke
6ad957906e
Consistently use rel=noreferrer
...
When linking to external entities we should consistently use rel=noreferrer
2016-03-20 15:27:20 +01:00
Lukas Reschke
24abe1e1e1
Use raw PATH_INFO
...
PATH_INFO will be empty at this point and thus the logic in base.php did not catch this. Changing this to "getRawPathInfo" will ensure that the path info is properly read.
Fixes https://github.com/owncloud/core/issues/23199
2016-03-17 17:32:38 +01:00
Morris Jobke
0864851001
Replace unneded OC::needUpgrade with OCP method
2016-03-14 10:10:29 +01:00
Thomas Müller
51072f742e
Merge pull request #21582 from owncloud/core_composer
...
Composers PSR-4 autoloader in core
2016-03-10 12:06:44 +01:00
Roeland Jago Douma
f7729cdc40
Add composers default autoloader to core
...
This introduces the defacto standard PSR-4 autoloader from composer into
core. This will allow proper PSR-4 naming of our classes.
Since our original autoloader is still available we can slowly switch
over classes to PSR-4.
2016-03-09 16:53:27 +01:00
Vincent Petry
12b2192038
Do not set response status in CLI in case of error
2016-03-09 15:40:34 +01:00
Arthur Schiwon
adf5d111f6
don't hide server not available exception, fixes #20536
2016-03-03 01:15:41 +01:00
Lukas Reschke
933f60e314
Update author information
...
Probably nice for the people that contributed to 9.0 to see themselves in the AUTHORS file :)
2016-03-01 17:25:15 +01:00
Vincent Petry
1dbe240b0e
Disable app that bricks the server after enabling
...
If an app is getting enabled in the web UI, an ajax call is now made to
make sure the server still works. If it doesn't, it sends an emergency
app disabling call to disable the breaking app.
2016-02-29 12:07:37 +01:00
Joachim Bauch
0173063923
Pass checked host as "domain" variable to "untrustedDomain" template.
...
Currently the "SERVER_NAME" is passed to the template, which in some cases doesn't match the host returned by "getInsecureServerHost" (or is empty).
2016-02-15 17:02:14 +01:00
Thomas Müller
b01d50216e
The local address book is replaced now by the system addressbook as part of the dav app
2016-02-02 10:56:33 +01:00
Lukas Reschke
f32827e903
Ignore GD JPEG warnings
...
Fixes https://github.com/owncloud/core/issues/21873
2016-01-27 13:59:15 +01:00
Morris Jobke
06fe4cabfc
move setup controller to core/controller
2016-01-20 10:23:57 +01:00
Thomas Müller
682821c71e
Happy new year!
2016-01-12 15:02:18 +01:00
Roeland Jago Douma
876fb83ddc
getMediumStrengthGenerator is deprecated and does not do anything anymore
2016-01-11 20:06:30 +01:00
Roeland Jago Douma
1a592e5745
Only '/tests' to be autoloaded when running unit tests
2016-01-10 21:36:14 +01:00
Roeland Jago Douma
fce8c42240
OC autoloader is not allowed to load 3rdparty
2016-01-10 21:32:52 +01:00
Lukas Reschke
74876fa6e7
Remove code related to session regeneration after some time
...
I do not really consider this necessary or a real security addition. Let's get rid of it thus, cleans up the code and makes the logic easier.
2016-01-10 11:01:30 +01:00
Lukas Reschke
a58ca89e7f
Use ISession::clear
...
The native approach using the PHP calls will not work properly with the cryptowrapper and thus this code is effectively doing nothing at the moment.
2016-01-10 10:39:22 +01:00
Lukas Reschke
0e561afe79
Check if app does exists
2016-01-07 21:29:45 +01:00
Lukas Reschke
fec41e7539
Move regeneration of session ID into session classes
...
There were code paths that nowadays call ISession::login directly thus bypassing the desired regeneration of the session ID. This moves the session regeneration deeper into the session handling and thus ensures that it is always called. Furthermore, I also added the session regeneration to the remember me cookie plus added some test case expectations for this.
2016-01-04 15:09:01 +01:00
Morris Jobke
6f00729124
Refactor OC_Util::callCheck
2015-12-22 09:32:14 +01:00
Morris Jobke
ed98cdf532
Use OCP\Util::getVersion instead of the internal private implementation
2015-12-18 15:26:54 +01:00
Roeland Jago Douma
6fb60815c5
Use SystemConfig internally
2015-12-18 11:53:41 +01:00
Roeland Jago Douma
0a09004d39
Inject Config into SystemConfig
2015-12-18 11:53:41 +01:00
Roeland Jago Douma
82bf99c0cf
Get rid of legacy OC_Config
...
We were still using the lecagy class OC_Config all over the place. Which
was a wrapper around the new class OC\Config
2015-12-18 11:53:41 +01:00
Roeland Jago Douma
7e44ea5da0
Remove deprecated function OC_User::getManager
...
Private deprecated function => removed
Replaced all instances with suggested replacement
2015-12-17 16:18:34 +01:00
Lukas Reschke
1f69dcb593
Use URLGenerator instead of hard-coded WEBROOT
...
Fixes https://github.com/owncloud/core/issues/20922
2015-12-03 14:42:14 +01:00
Lukas Reschke
4d9af08f12
Execute only for web and not for CLI
2015-12-02 11:49:33 +01:00
Lukas Reschke
125b7e7512
Ensure that ownCloud is always accessed with a trailing slash
2015-12-02 11:26:41 +01:00
Morris Jobke
675417a75c
Untangle the linkToDocs method in OC_Helper
...
* now uses the proper URLGenerator interface
* add comment about DI problems
2015-11-26 13:58:43 +01:00
Lukas Reschke
ba67dd9818
Add warning log entry when user accesses untrusted domain
2015-11-10 12:02:10 +01:00
Roeland Jago Douma
0bb5eadf89
[autoloader] Make sure to load construct full paths
...
This reduces a lot of the autoloader magic and makes sure that we
generate full paths in the autoloader.
2015-11-06 13:36:19 +01:00
Lukas Reschke
23e22c52b0
Use IRequest's `getScriptName` functionality instead of $_SERVER['SCRIPT_NAME']
2015-10-21 17:33:49 +02:00
Lukas Reschke
5588c5f262
Delete cookie instead of emptying value
...
PHP will handle session cookies with an empty values as an E_WARNING error. ([php/#68063](https://bugs.php.net/bug.php?id=68063 ))
ownCloud sets the cookie to an empty value in case the session expires, it however after this starts a new session. Due to potential race conditions this can in unlikely cases lead to the fact that the session never gets restarted and the user is left with an empty cookie. PHP tries then to use the empty cookie which makes the instance not usable.
To work around any race condition we now tell PHP to explicitly delete the value which can be done by using `null` as value, PHP will then send a cookie with the value "deleted". Also theepiration has been set to -1.
2015-10-19 19:54:12 +02:00
Joas Schilling
13dd62f7b0
Make sure that remote shares use the correct uid casing
2015-10-06 15:16:19 +02:00
Morris Jobke
b945d71384
update licence headers via script
2015-10-05 21:15:52 +02:00
Individual IT Services
fbe43e6a26
cache result of \OCP\Util::needUpgrade()
...
reduce calls of \OCP\Util::needUpgrade()
where \OCP\Util::needUpgrade() is called we can call as well
self::checkUpgrade and use the cached result
In line 877 the call way unnecessary anyway because of the first part of
the if statement
move caching to \OCP\Util::needUpgrade
renaming variable
fixing testNeedUpgradeCore()
cache result of checkUpgrade() in self::$needUpgrade
reduce calls of \OCP\Util::needUpgrade()
where \OCP\Util::needUpgrade() is called we can call as well
self::checkUpgrade and use the cached result
In line 877 the call way unnecessary anyway because of the first part of
the if statement
move caching to \OCP\Util::needUpgrade
renaming variable
fixing testNeedUpgradeCore()
fix typo in variable name
deleting tabs
2015-09-29 15:34:42 +02:00
Thomas Müller
68bf4440d3
Merge pull request #19293 from owncloud/individual-it-move_initTemplate
...
[jenkins] do not load unnecessary code in case of webdav
2015-09-25 13:49:51 +02:00
Thomas Müller
e7bc2a10e3
Merge pull request #15098 from owncloud/fix_preview_versions_revert_issue
...
fix issue with version rollback and thumbnails
2015-09-24 21:06:27 +02:00
Individual IT Services
bf1cb20e90
do not load unnecessary code in case of webdav
...
changing from "protected static" to "protected"
as suggested by @nickvergessen
https://github.com/owncloud/core/pull/19114#discussion_r39719851
moving initTemplate() into template constr.
reduce to move initTemplate only
cleanup spaces
2015-09-23 11:57:10 +02:00
Phil Davis
a165710e99
Minor text typos
...
that I noticed while looking at some code.
2015-09-21 23:04:25 +05:45
Georg Ehrke
b3ff773bbf
delete cached preview when rolling back file's version
...
add random number using OC.parseQueryString and _.extend()
version rollback: add missing prefix to OC\Preview::post_delete
add test to assure that the rollback hook is called
2015-09-20 11:22:40 +02:00
Thomas Müller
decdaf0018
Merge pull request #19024 from owncloud/remove-get_temp_dir
...
Remove get_temp_dir()
2015-09-15 14:18:29 +02:00
Robin McCorkell
f8619870ea
Remove get_temp_dir()
2015-09-15 11:33:25 +02:00
Lukas Reschke
65ebba44ce
Allow /tests folder in autoloader by default
...
Given the fact that "/tests" is not shipped by default and this has broken some applications and frustrated quite some people we should add "/tests" to the default allowed autoloading set.
I do consider the security impact marginally since the /tests folder is not shipped within the release as well as usually has a hard requirement on being called by phpunit.
2015-09-15 11:32:07 +02:00
Frank Karlitschek
7562e4959b
Merge pull request #18658 from owncloud/configurable-temp
...
Configurable temporary directory
2015-09-12 22:04:41 +02:00
Robin McCorkell
b3acf09c60
Only add valid root for enabled apps
2015-09-05 00:04:58 +01:00
Individual IT Services
3bc287ff63
Merge pull request #18794 from individual-it/reuse_systemConfig
...
reuse existing $systemConfig variable
2015-09-04 14:03:56 +05:45
Morris Jobke
038b09b0b0
Proper details about git submodule update
...
* fixes #18801
2015-09-03 14:55:26 +02:00
Individual IT Services
cd0a5372ee
reuse existing $systemConfig variable
2015-09-03 12:44:35 +05:45
Robin Appelman
e9b91b1798
verify the path in the autoloader
2015-09-01 15:03:28 +02:00
root
acae208f2f
moved code to /lib/private/tempmanager.php
...
fix for unit test
some fixes
2015-08-29 16:59:02 +01:00