Skip to content

2.9.2 114 employees change pass#165

Open
BeHuK wants to merge 51 commits into
easterism:masterfrom
BeHuK:2.9.2_114_employees_change_pass
Open

2.9.2 114 employees change pass#165
BeHuK wants to merge 51 commits into
easterism:masterfrom
BeHuK:2.9.2_114_employees_change_pass

Conversation

@BeHuK
Copy link
Copy Markdown
Contributor

@BeHuK BeHuK commented Apr 10, 2026

change pass

n2ref and others added 30 commits October 7, 2025 15:17
# Conflicts:
#	inc/classes/OpenApiSpec.php
# Conflicts:
#	inc/classes/OpenApiSpec.php
# Conflicts:
#	inc/classes/OpenApiSpec.php
n2ref and others added 20 commits February 20, 2026 11:08
# Conflicts:
#	composer.json
#	inc/classes/Init.php
#	inc/classes/OpenApiSpec.php
# Conflicts:
#	composer.json
#	inc/classes/Init.php
#	inc/classes/OpenApiSpec.php
# Conflicts:
#	inc/classes/Init.php
#	inc/classes/OpenApiSpec.php
@roomote-v0
Copy link
Copy Markdown

roomote-v0 Bot commented Apr 10, 2026

Rooviewer Clock   See task

Review completed. Found 2 issues that need attention:

Mention @roomote in a comment to request specific changes to this pull request or fix all unresolved issues.

Comment thread inc/classes/Init.php
$data_user = $this->dataUsers->getUserById($this->auth->ID);

if (
(new DateTime($data_user['date_expired'])) < (new DateTime())) {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Potential exception if date_expired field is NULL or empty. The DateTime constructor will throw an exception when passed an empty string or null value. This will occur for users who don't have a date_expired value set in the database, causing the entire authentication flow to fail with an uncaught exception.

Fix it with Roo Code or mention @roomote and request a fix.

Comment thread inc/classes/Init.php
[$login, $password] = explode(':', base64_decode(substr($_SERVER['HTTP_AUTHORIZATION'], 6)));
$user = $this->dataUsers->getUserByLogin($login);
if ($user && \Core2\Tool::password_verify_secure($password, (string)$user['u_pass'])) {
if ($user && $user['u_pass'] === Tool::pass_salt(md5($password))) {
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Weaker password verification introduced. The change from password_verify_secure() to direct string comparison with MD5 hash significantly weakens the authentication security. The original password_verify_secure() likely used bcrypt or another secure hashing algorithm with timing-attack protection. MD5 is cryptographically broken and vulnerable to rainbow table attacks. This affects HTTP Basic Authentication for API access.

Fix it with Roo Code or mention @roomote and request a fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants