Prochaines Sessions
Les prochaines formations et démonstrations sont ouvertes, inscrivez-vous rapidement !
Démonstration de ProjeQtOr(gratuit, sur inscription)
13 mai 2025 (10h30-12h) 5 juin 2025 (16h-17h30) |
Les prochaines formations et démonstrations sont ouvertes, inscrivez-vous rapidement !
Démonstration de ProjeQtOr(gratuit, sur inscription)
13 mai 2025 (10h30-12h) 5 juin 2025 (16h-17h30) |
Please Connexion or Create an account to join the conversation.
Please Connexion or Create an account to join the conversation.
Please Connexion or Create an account to join the conversation.
I share your point of view : it is a very good practice, and I will include your proposals in next version (after validation of course).The reason for the htmlEncode() is due to the fact that I couldn't trust data residing in the database due to various SQL injection flaws I noticed, so as a general precaution I made the general assumption that everything fetched from the database is potentially attacker controlled.
Forcing POST or PUT is not very efficient in security : any hacker can send variable in PIT format, even if it is even more easy with a GET request.There are several design flaws I noticed. Specifically there is no enforcement that data sent to the server has to come with POST or PUT methods and data retrieved from the server only using GET method.
I agree it is a major way to tighten security. I'll keep this in mind for a next release (did not see this in your patch, but it is some heavy work to manage on all request...).There is no token required to be sent on POST requests (where the token is set by the server and sent to the client as a result of the GET request that displayed the HTML initiating the POST request. This enables CSRF attacks.
This is true for variables used in parametring (date format, locale, ...). These data are not returned to the web page, but they could possibly set the mess in the interface. What is important to notice is that every security variable stored in session (user credentials, access rights) is stored in an object, so it is not possible for a hacker to store it directly. Only possibility is to erase or overwrite the object with a text variable, that will "disconnect" the session.There's no proper filtering on data that is stored in session variables, allowing an attacker to replace any session variable with attacker controlled value (and as mentioned above, can be done using CSRF attack - imagine <img src="attack_url"></img> on a malicious site, where attack_url sets session variables to attacker controlled values).
Yes there is. It was a leak existing in V3.4.0, fixed in V3.4.1. If you really find a way to do this, please post it to me in private message at Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser..There's no proper validation against directory traversal attacks. An attacker can fetch any file they want from the server - including database passwords, etc...
I agree it is not completely secured, it is just a way to send data "not in clear text". The only way to really secure login transaction is to use https connection...Another example - you authenticate a user using md5 hash of username + microsecond, without taking into account that neither the username nor time are secrets.
And I really thank you for that.I have done as best as I can, within my own time constraints
But redesign is not planned. ProjeQtOr is not a banking system nor NSA website. Security is important but implementation must face risks.I did not redesign the product and in some cases a redesign/rewrite would be the proper thing to do
I don't agree with you on that point. Even if code is not protected at level that will be required by NSA , security level seems correct for a Project Management Application, that will in most cases be installed on an intranet network, with credentials provided to a restricted population of users.Without (at least) the supplied fixes, running the code in a production environment exposes private information to attackers
Please Connexion or Create an account to join the conversation.
En poursuivant votre navigation, vous acceptez le dépôt de cookies tiers destinés au bon fonctionnement et à la sécurisation du site (gestion de session, reCaptcha) et à une analyse statistique anonymisée des accès sur notre site (Google Analytics). Si vous vous inscrivez, les informations que vous fournirez ne seront jamais divulguées à un tiers sous quelque forme que ce soit. En savoir plus
Ce site utilise des cookies pour assurer son bon fonctionnement et ne peuvent pas être désactivés de nos systèmes. Nous ne les utilisons pas à des fins publicitaires. Si ces cookies sont bloqués, certaines parties du site ne pourront pas fonctionner.
Ce site web utilise un certain nombre de cookies pour gérer, par exemple, les sessions utilisateurs.