Kayako Logo
Consideration Queue (V4) Feature requests in this forum are queued for consideration in Version 4 of the product line.

Reply
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
  (#1) Old
NC Software Offline
Member
 
NC Software's Avatar
 
Posts: 435
Join Date: Dec 2005
Location: Sitting

SupportSuite
Owned License
Exclamation System -> Password encryption or hashing - 03-08-2007, 07:59 PM

Why are passwords not encrypted or hashed in the database? Passwords should NEVER be human readable, anywhere!


Neal Culiner
NC Software, Inc.
   
Reply With Quote
  (#2) Old
Jamie Edwards Offline
Operations Manager
 
Jamie Edwards's Avatar
 
Posts: 4,390
Join Date: Jan 2006
Location: UK

SupportSuite
Owned License

03-08-2007, 08:21 PM

In order for clients to receive their ticket password each time they submit a ticket, the passwords cannot be hashed.

The only way for this to happen would be to randomise the password every time they submitted a ticket - which would annoy a lot of them, I'd imagine.


Jamie Edwards (jamie.edwards ]at[ kayako.com)
----------------------------------------------------------------
---
  • New to the forum? New user's guide here.
  • Submit bug reports here.
  • Submit support tickets via the members area.
  • Submit sales queries either via live chat or via e-mail.
  • There is no official ETA on Version 4.
   
Reply With Quote
  (#3) Old
NC Software Offline
Member
 
NC Software's Avatar
 
Posts: 435
Join Date: Dec 2005
Location: Sitting

SupportSuite
Owned License
03-08-2007, 08:30 PM

Passwords should therefore be ENCRYPTED which can be reversed out to clear for your e-mail situation. However, passwords should NEVER be stored in the clear and we have the option whether to include passwords in e-mails. For companies that want full lock down security they won't allow passwords in their e-mail and certainly don't want passwords stored in plain text anywhere, including a database. This is a major security issue that needs to be addressed with highest priority! I came across this when I was resolving my IMAP issue and I did a SELECT * on the database to get all the mail queue's to find the passwords to my e-mail accounts stored in the clear as well. Another major security issue as a sysadmin may be the only one that knows passwords to mailboxes but anyone with access to MySQL and the database can now view them! It's more than just user information, it's a major security issue across the board!


Neal Culiner
NC Software, Inc.
   
Reply With Quote
  (#4) Old
Jamie Edwards Offline
Operations Manager
 
Jamie Edwards's Avatar
 
Posts: 4,390
Join Date: Jan 2006
Location: UK

SupportSuite
Owned License

03-08-2007, 08:44 PM

Quote:
Passwords should therefore be ENCRYPTED which can be reversed out to clear for your e-mail situation.
Due to the nature of PHP as a language and platform, this would never be secure - it is unlike C++ (for example) which is obfuscated and then irreversibly (to an extent) compiled. Anyone with a copy of the software could easily decrypt the passwords if they got access to the database.

Of course, we could keep the code that does some form of encryption under the encrypted portion of SupportSuite, but again this is still not extremely secure. If a hacker is determined enough to hack your server, retrieve a copy of your database in order to access the client passwords, the likelihood is that he or she will be determined enough to reverse-engineer the algorithm.


Quote:
However, passwords should NEVER be stored in the clear and we have the option whether to include passwords in e-mails.
Correct, but something you have turned a blind-eye to is if CompanyX have been using full password hashing (and thus not sending out passwords), what happens when they want to change their option to enable password sending? The answer is, nothing happens - the passwords are irrecoverably hashed.


Quote:
This is a major security issue that needs to be addressed with highest priority!
It is the way SupportSuite (and eSupport) has worked for many, many years and it is generally accepted this is the only efficient way to go about it.


Quote:
However, passwords should NEVER be stored in the clear and we have the option whether to include passwords in e-mails.
As long as your server is secure, there should be no problem. If it is a matter of trust between you and your client, then that is indeed between you and your client.


Jamie Edwards (jamie.edwards ]at[ kayako.com)
----------------------------------------------------------------
---
  • New to the forum? New user's guide here.
  • Submit bug reports here.
  • Submit support tickets via the members area.
  • Submit sales queries either via live chat or via e-mail.
  • There is no official ETA on Version 4.
   
Reply With Quote
  (#5) Old
Jamie Edwards Offline
Operations Manager
 
Jamie Edwards's Avatar
 
Posts: 4,390
Join Date: Jan 2006
Location: UK

SupportSuite
Owned License

03-08-2007, 08:45 PM

Regardless of what I posted above, it is a good feature request that the option to use a "not entirely secure" encryption method for passwords be available.ave moved this thread into the Feature Requests forum.


Jamie Edwards (jamie.edwards ]at[ kayako.com)
----------------------------------------------------------------
---
  • New to the forum? New user's guide here.
  • Submit bug reports here.
  • Submit support tickets via the members area.
  • Submit sales queries either via live chat or via e-mail.
  • There is no official ETA on Version 4.
   
Reply With Quote
  (#6) Old
NC Software Offline
Member
 
NC Software's Avatar
 
Posts: 435
Join Date: Dec 2005
Location: Sitting

SupportSuite
Owned License
06-08-2007, 02:53 PM

Passwords should never be sent in an e-mail, it should not be an option, but we do have the option to disable it. Passwords should NEVER be stored in plain text, EVER! Take not from vBulletin, they hash their information, if you have to reverse it out, encrypt it. Use SALT's as well for added security so dictionary attacks are mitigated. Again, do what vBulletin does, if you forget your password, it sends you a reminder question or simply changes it for you, when you login using the temp password you have to change it. There are ways to handle this, I adamately disagree with the lack of security I am finding with Kayako SupportSuite.


Neal Culiner
NC Software, Inc.
   
Reply With Quote
  (#7) Old
Jamie Edwards Offline
Operations Manager
 
Jamie Edwards's Avatar
 
Posts: 4,390
Join Date: Jan 2006
Location: UK

SupportSuite
Owned License

06-08-2007, 05:58 PM

Hi Neal,

This may be what you want, but the way SupportSuite has worked (for years - since the beginning) is that ticket passwords are sent out to customers in each ticket receipt. The majority of our customers do not disable this feature.

We cannot implement password hashing and have the option to either hash passwords or not.

Resetting the password in each ticket submission will also be a major inconvenience to users of a support desk.

Your comparison between a forum software and SupportSuite is entirely misplaced.


Jamie Edwards (jamie.edwards ]at[ kayako.com)
----------------------------------------------------------------
---
  • New to the forum? New user's guide here.
  • Submit bug reports here.
  • Submit support tickets via the members area.
  • Submit sales queries either via live chat or via e-mail.
  • There is no official ETA on Version 4.
   
Reply With Quote
  (#8) Old
Ryan Lederman Offline
Chief Operating Officer
 
Ryan Lederman's Avatar
 
Posts: 793
Join Date: May 2005
Location: Boise, Idaho

06-08-2007, 07:07 PM

Quote:
Originally Posted by NC Software View Post
Passwords should never be sent in an e-mail, it should not be an option, but we do have the option to disable it. Passwords should NEVER be stored in plain text, EVER! Take not from vBulletin, they hash their information, if you have to reverse it out, encrypt it. Use SALT's as well for added security so dictionary attacks are mitigated. Again, do what vBulletin does, if you forget your password, it sends you a reminder question or simply changes it for you, when you login using the temp password you have to change it. There are ways to handle this, I adamately disagree with the lack of security I am finding with Kayako SupportSuite.
Neal, I agree that it would be better to store say, MD5 fingerprints for users' passwords in the DB and if the event arose in which the user needed to reset the password, it would be randomly generated.

However, storing the passwords in the db with some form of two-way encryption isn't particularly viable. The reason is that the key(s) would be easily retrieved (where would you store them?) so even if it was encrypted, an attacker would only need to know the algorithm and the key and then it would be equivalent of having plain text passwords.

Just my two cents.


Ryan Lederman (ryan.lederman ]at[ kayako.com)
----------------------------------------------------------------
---
   
Reply With Quote
  (#9) Old
Ryan Lederman Offline
Chief Operating Officer
 
Ryan Lederman's Avatar
 
Posts: 793
Join Date: May 2005
Location: Boise, Idaho

06-08-2007, 07:12 PM

In addition, I feel that it's necessary to address the whole idea of encrypting passwords in the db.

If your db is compromised you have much bigger problems on your hands than someone having access to the passwords. What I mean is, if an attacker has your db, he already has access to *all the information* that you would be worried about them accessing with the password (e.g. ticket posts, notes, etc)


Ryan Lederman (ryan.lederman ]at[ kayako.com)
----------------------------------------------------------------
---
   
Reply With Quote
  (#10) Old
NC Software Offline
Member
 
NC Software's Avatar
 
Posts: 435
Join Date: Dec 2005
Location: Sitting

SupportSuite
Owned License
06-08-2007, 07:36 PM

Quote:
If your db is compromised you have much bigger problems on your hands than someone having access to the passwords. What I mean is, if an attacker has your db, he already has access to *all the information* that you would be worried about them accessing with the password (e.g. ticket posts, notes, etc)
I could care less if the attacker has my tickets, posts, notes, KB articles, download links, etc. But we all have a commitment to our users to protect their data, that is their e-mail addresses and passwords. This is IT 101, I know I don't need to convince you of this, it is standard practice in software.


Neal Culiner
NC Software, Inc.
   
Reply With Quote
  (#11) Old
Brent Offline
Member
 
Brent's Avatar
 
Posts: 124
Join Date: May 2006

SupportSuite
07-08-2007, 04:04 AM

I will agree this has me a bit distressed.....


KillerSurf Internet Services
www.killersurf.net
   
Reply With Quote
  (#12) Old
Chris Boulton Offline
Member
 
Posts: 140
Join Date: Jun 2003
Location: Sydney, Australia

07-08-2007, 09:07 AM

Quote:
Due to the nature of PHP as a language and platform, this would never be secure - it is unlike C++ (for example) which is obfuscated and then irreversibly (to an extent) compiled. Anyone with a copy of the software could easily decrypt the passwords if they got access to the database.

Of course, we could keep the code that does some form of encryption under the encrypted portion of SupportSuite, but again this is still not extremely secure. If a hacker is determined enough to hack your server, retrieve a copy of your database in order to access the client passwords, the likelihood is that he or she will be determined enough to reverse-engineer the algorithm.
I actually think this would be a pretty good solution to v4.

Essentially a custom encryption/decryption routine included within the encrypted part of SupportSuite. It could further be enhanced by the following:
  • An additional "salt" field in the users table which stores a unique random string for each user which is also encrypted with the password when storing the password.
  • A unique string per Kayako installation which is stored somewhere in the settings table or something, also thrown in to the mix when the encryption done.
  • A private "key" held by Kayako which is also stored in part of the Zend/ionCube encoded part of SupportSuite

Should work fairly well.
   
Reply With Quote
  (#13) Old
caitlyntw Offline
Member
 
Posts: 99
Join Date: Jul 2006

07-08-2007, 09:11 AM

We've got this featured disabled. It is very odd Kayako has chosen to not protect customer passwords in their software design. I do not know another software or online site that does this.

Usually if customers forget password, they click on a link that allows them to either retrieve their password by answering a secret question or generate a new password.
   
Reply With Quote
  (#14) Old
craigbrass Offline
Senior Member
 
Posts: 5,063
Join Date: Jun 2005
Location: Cumbria, UK

SupportSuite
Owned License
07-08-2007, 09:31 AM

Quote:
Originally Posted by NC Software View Post
I could care less if the attacker has my tickets, posts, notes, KB articles, download links, etc. But we all have a commitment to our users to protect their data, that is their e-mail addresses and passwords. This is IT 101, I know I don't need to convince you of this, it is standard practice in software.
Hmm yea, in the UK we are legally responsible for any data we collect. Something does need to be done to address this issue.


Craig Brass - Kayako Forum Squatter (Note: I am NOT a staff member)

Icon Headquarters - Its Elixir - Web2Messenger
   
Reply With Quote
  (#15) Old
Jamie Edwards Offline
Operations Manager
 
Jamie Edwards's Avatar
 
Posts: 4,390
Join Date: Jan 2006
Location: UK

SupportSuite
Owned License

07-08-2007, 11:52 AM

Quote:
Originally Posted by Chris Boulton View Post
I actually think this would be a pretty good solution to v4.

Essentially a custom encryption/decryption routine included within the encrypted part of SupportSuite. It could further be enhanced by the following:
  • An additional "salt" field in the users table which stores a unique random string for each user which is also encrypted with the password when storing the password.
  • A unique string per Kayako installation which is stored somewhere in the settings table or something, also thrown in to the mix when the encryption done.
  • A private "key" held by Kayako which is also stored in part of the Zend/ionCube encoded part of SupportSuite
Should work fairly well.
The idea is a sound one except that we cannot mislead customers to thinking the passwords will be secure. The 'hidden key' and 'encryption routine' would still be recoverable even if encoded with Zend or IonCube.

@Craig; that is true, you are legally responsible for this kind of thing; but this security requirement should be focused around your own server hardening. If passwords are to be encrypted, then why not everything in the database?

@Caitlyn; the reason why eSupport has not operated like 'most other software' in this respect is because the typical setup of eSupport (or the other lines) involved ticket submission via e-mail, which generated a password for the client in the ticket receipt.

However, times that change require us to change to, so it is something that will certainly be reviewed.


Jamie Edwards (jamie.edwards ]at[ kayako.com)
----------------------------------------------------------------
---
  • New to the forum? New user's guide here.
  • Submit bug reports here.
  • Submit support tickets via the members area.
  • Submit sales queries either via live chat or via e-mail.
  • There is no official ETA on Version 4.
   
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Live chat -> System -> Record operator online hours urevised Consideration Queue (V4) 10 01-03-2008 03:25 PM
Ticket reply -> System -> Autosave feature mblendinger Consideration Queue (V3) 7 10-08-2007 01:08 AM
System -> Downloads/Attachments -> Must be stored seperately NC Software Consideration Queue (V4) 2 10-11-2006 11:43 PM



Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0

Kayako provides online help desk software and support solutions; enabling companies to improve their support and reduce costs.

Our three main products include: SupportSuite, eSupport and LiveResponse



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46