Users can not change their own password after forgot password link is reveived

I have a user who cannot change their password after requesting a password reset via the forgot password button.

The user gets the email, press the link and it takes them to the URL something like this (Please use the following link to reset your password: https://insdevcloud.icednetworks.info/index.php/lostpassword/reset/form/uu6V6jiqfQub77mESYihA/testuser)
The user type in his new password but nothing happens it just keeps repeating the cycle. and remains on the same page.

Steps to reproduce

Don’t know if this can be reproduced but here goes.

  1. try to login using a wrong password.
  2. the forgot password link should then appear (“forgot your password” reset it!")
    image
  3. user received and email with the url link to press
  4. click the url, take you to the passwords reset page
    image
  5. user enter new passowrd, presses the "Reset Password’ button but nothing happens.
    System does not reset password remains on this page.

I am NOT USING LDAP, this is all internal OC users .

Expected behaviour

Once the new password has been entered, the password should be updated ( provided it meets the password policy standards) in this case it did.
take user to the login screen so they can log in.

Actual behaviour

Nothing happens remain on the reset password page and does not reset password.

Server configuration

Operating system:
Ubuntu 18.04 lts
Web server:
Apache 2

Database:
Mysql

PHP version:
PHP 7.3.18-1

ownCloud version: (see ownCloud admin page)
10.4.1.3

Updated from an older ownCloud or fresh install:
upgrade from 10.0.1

Where did you install ownCloud from:
from tar file owncloud-10.4.1.tar.bz2

Signing status (ownCloud 9.0 and above):
No errors have been found.

Login as admin user into your ownCloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results into https://gist.github.com/ and puth the link here.

The content of config/config.php:
sudo -u www-data php occ config:list system
{
“system”: {
“passwordsalt”: “REMOVED SENSITIVE VALUE”,
“secret”: “REMOVED SENSITIVE VALUE”,
“trusted_domains”: [
“insdevcloud.icednetworks.info”,
“insdevcloud.icednetworks.net”,
“insdevcloud.icednetworks.com”,
“insdevdevcloud.icednetworks.com.au”,
“insdevcloud”,
“x.x.x.193”
],
“datadirectory”: “/oc/data”,
“overwrite.cli.url”: “http://localhost”,
“dbtype”: “mysql”,
“version”: “10.4.1.3”,
“dbname”: “oc”,
“dbhost”: “localhost”,
“dbtableprefix”: “oc_”,
“mysql.utf8mb4”: true,
“dbuser”: “REMOVED SENSITIVE VALUE”,
“dbpassword”: “REMOVED SENSITIVE VALUE”,
“logtimezone”: “Australia/Melbourne”,
“apps_paths”: [
{
“path”: “/var/www/owncloud/apps”,
“url”: “/apps”,
“writable”: false
},
{
“path”: “/var/www/owncloud/apps-external”,
“url”: “/apps-external”,
“writable”: true
},
{
“path”: “/var/www/owncloud/insapps”,
“url”: “/insapps”,
“writable”: true
}
],
“installed”: true,
“maintenance”: false,
“log_rotate_size”: 10485760,
“enable_avatars”: true,
“allow_user_to_change_display_name”: true,
“theme”: “”,
“mail_smtpmode”: “smtp”,
“mail_from_address”: “REMOVED SENSITIVE VALUE”,
“mail_domain”: “REMOVED SENSITIVE VALUE”,
“mail_smtphost”: “REMOVED SENSITIVE VALUE”,
“log_type”: “owncloud”,
“logfile”: “owncloud.log”,
“loglevel”: 1,
“logdateformat”: “Y-m-d H:i:s”,
“trashbin_retention_obligation”: “disabled”,
“updatechecker”: true,
“files_external_allow_create_new_local”: “true”,
“integrity.check.disabled”: false,
“mail_smtpport”: “25”,
“integrity.ignore.missing.app.signature”: [
“ins-theme”,
“ins_test”
],
“memcache.local”: “\OC\Memcache\Redis”,
“memcache.distributed”: “\OC\Memcache\Redis”,
“memcache.locking”: “\OC\Memcache\Redis”,
“redis”: {
“host”: “localhost”,
“port”: 6379
},
“token_auth_enforced”: true,
“debug”: false,
“knowledgebaseenabled”: true,
“remember_login_cookie_lifetime”: 2592000,
“instanceid”: “ocv11meksi5i”
}
}

Log in to the web-UI with an administrator account and click on
'admin' -> 'Generate Config Report' -> 'Download ownCloud config report'
This report includes the config.php settings, the list of activated apps
and other details in a well sanitized form.

or 

If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your ownCloud installation folder

*ATTENTION:* Do not post your config.php file in public as is. Please use one of the above
methods whenever possible. Both, the generated reports from the web-ui and from occ config:list
consistently remove sensitive data. You still may want to review the report before sending.
If done manually then it is critical for your own privacy to dilligently
remove *all* host names, passwords, usernames, salts and other credentials before posting.
You should assume that attackers find such information and will use them against your systems.

List of activated apps:
Enabled:

  • activity: 2.5.3
  • afterlogic: 1.2.2
  • announcementcenter: 1.2.1
  • bookmarks: 0.10.6
  • brute_force_protection: 1.0.1
  • calendar: 1.6.4
  • camerarawpreviews: 0.6.4
  • checksum: 0.3.5
  • comments: 0.3.0
  • configreport: 0.2.0
  • contacts: 1.5.5
  • customgroups: 0.6.0
  • dav: 0.5.0
  • diagnostics: 0.1.4
  • external: 1.4.0
  • extract: 1.2.4
  • federatedfilesharing: 0.5.0
  • federation: 0.1.0
  • files: 1.5.2
  • files_antivirus: 0.15.1
  • files_external: 0.7.1
  • files_mediaviewer: 1.0.2
  • files_pdfviewer: 0.11.1
  • files_sharing: 0.12.0
  • files_texteditor: 2.3.0
  • files_textviewer: 1.0.3
  • files_trashbin: 0.9.1
  • files_versions: 1.3.0
  • firstrunwizard: 1.2.0
  • gallery: 16.1.1
  • guests: 0.9.0
  • impersonate: 0.5.0
  • ins-theme: 2.3.1
  • market: 0.5.0
  • nextbackup: 19.12.1
  • notes: 2.0.6
  • notifications: 0.5.0
  • oauth2: 0.4.3
  • onlyoffice: 4.2.1
  • passman: 2.1.4
  • password_policy: 2.1.2
  • provisioning_api: 0.5.0
  • qownnotesapi: 19.1.0
  • systemtags: 0.3.0
  • tasks: 0.9.7
  • templateeditor: 0.4.0
  • twofactor_totp: 0.6.1
  • updatenotification: 0.2.1
  • user_external: 0.6.0
    Disabled:
  • encryption
  • theme-example-master
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your ownCloud installation folder.

Are you using external storage, if yes which one: local/smb/sftp/…
No internal
Are you using encryption: yes/no
No

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/…
No

LDAP configuration (delete this part if not used)

None - not using LDAP

With access to your command line run e.g.:
sudo -u www-data php occ ldap:show-config
from within your ownCloud installation folder

Without access to your command line download the data/owncloud.db to your local
computer or access your SQL server remotely and run the select query:
SELECT * FROM `oc_appconfig` WHERE `appid` = 'user_ldap';


Eventually replace sensitive data as the name/IP-address of your LDAP server or groups.

Client configuration

Browser:
Chrome/ms Edge/ Firefox

Operating system:
windows 10

Logs

Web server error log

 insdevcloud.icednetworks.info-error.log
[Tue Jun 23 06:25:36.112736 2020] [ssl:warn] [pid 25707] AH01909: insdevcloud.icednetworks.info:443:0 server certificate does NOT include an ID which matches the server name
[Tue Jun 23 09:37:27.395024 2020] [php7:warn] [pid 29972] [client 192.168.168.104:54002] PHP Warning:  "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in /usr/share/phpmyadmin/libraries/config/Form
Display.php on line 660
[Tue Jun 23 18:49:37.252322 2020] [ssl:warn] [pid 2032] AH01909: insdevcloud.icednetworks.info:443:0 server certificate does NOT include an ID which matches the server name
[Tue Jun 23 18:49:37.320405 2020] [ssl:warn] [pid 2038] AH01909: insdevcloud.icednetworks.info:443:0 server certificate does NOT include an ID which matches the server name

Insert your webserver log here

ownCloud log (data/owncloud.log)

Insert your ownCloud log here

root@insdevcloud:/var/www/owncloud# tail -f owncloud.log
{“reqId”:“XvHEtFf6KDMsGNlOLkJuDwAAAAk”,“level”:3,“time”:“2020-06-23 19:00:36”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“PHP”,“method”:“GET”,“url”:"/index.php/login",“message”:“Undefined index: username at /var/www/owncloud/insapps/ins-theme/core/templates/login.php#59”}
{“reqId”:“XvHExLW-gv-BZplu2ADMfQAAAAI”,“level”:3,“time”:“2020-06-23 19:00:52”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“PHP”,“method”:“GET”,“url”:"/index.php/login?redirect_url=%252Findex.php%252Fsettings%252Fadmin%253Fsectionid%253Dgeneral",“message”:“Undefined index: username at /var/www/owncloud/insapps/ins-theme/core/templates/login.php#59”}
{“reqId”:“XvHE5@FdQWPB3OXlm4wtTQAAAAc”,“level”:3,“time”:“2020-06-23 19:01:28”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“PHP”,“method”:“GET”,“url”:"/index.php/login",“message”:“Undefined index: username at /var/www/owncloud/insapps/ins-theme/core/templates/login.php#59”}
{“reqId”:“XvHE8RKYjWqkclsONfkKVgAAAAA”,“level”:2,“time”:“2020-06-23 19:01:37”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“core”,“method”:“POST”,“url”:"/index.php/login",“message”:“Login failed: ‘testuser’ (Remote IP: ‘192.168.168.202’)”}
{“reqId”:“XvHE8RKYjWqkclsONfkKVwAAAAA”,“level”:3,“time”:“2020-06-23 19:01:37”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“PHP”,“method”:“GET”,“url”:"/index.php/login?user=testuser",“message”:“Undefined index: username at /var/www/owncloud/insapps/ins-theme/core/templates/login.php#59”}
{“reqId”:“XvHFLHowV5g0c0aGu2-erwAAAAs”,“level”:3,“time”:“2020-06-23 19:02:36”,“remoteAddr”:“192.168.168.202”,“user”:"–",“app”:“PHP”,“method”:“GET”,“url”:"/index.php/login",“message”:“Undefined index: username at /var/www/owncloud/insapps/ins-theme/core/templates/login.php#59”}

Browser log

Insert your browser log here, this could for example include:

a) The javascript console log
b) The network log 
c) ...

Reading the logs I suppose it is the theme, possibly not reflecting changes which came with ownCloud upgrades.

You could narrow down the issue by disabling the theme and trying again to reset the password.

2 Likes

Hi,

Thanks, I will give that a go, and let you know how it goes.
Yes the logo is from the theme.

UPDATE: Yes that has worked.
There is an extra filed - “confirm password” that is some how not being displayed when the theme is active.
Need to look into why the theme is not displaying the extra input box .

Final update: It seems that when I made the update I did not update my theme with the new rest password template.
Now that is fixed. and working.

Thanks for pointing in the right direction.

3 Likes