Re: [PATCH v1] scsi: iscsi: use kfree_sensitive() in iscsi_session_free()

6 views
Skip to first unread message

Lee Duncan

unread,
Jul 17, 2023, 1:32:07 PM7/17/23
to Minjie Du, Chris Leech, Mike Christie, James E.J. Bottomley, Martin K. Petersen, open list:ISCSI, open list:ISCSI, open list, opensour...@vivo.com
On 7/17/23 02:26, Minjie Du wrote:
> session might contain private part of the password, so better use
> kfree_sensitive() to free it.
> In iscsi_session_free() use kfree_sensitive() to free session->password.
>
> Signed-off-by: Minjie Du <dumi...@vivo.com>
> ---
> drivers/scsi/libiscsi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
> index 0fda8905e..2f273229c 100644
> --- a/drivers/scsi/libiscsi.c
> +++ b/drivers/scsi/libiscsi.c
> @@ -3132,7 +3132,7 @@ void iscsi_session_free(struct iscsi_cls_session *cls_session)
> struct module *owner = cls_session->transport->owner;
>
> iscsi_pool_free(&session->cmdpool);
> - kfree(session->password);
> + kfree_sensitive(session->password);
> kfree(session->password_in);
> kfree(session->username);
> kfree(session->username_in);

Reviewed-by: Lee Duncan <ldu...@suse.com>

Mike Christie

unread,
Jul 17, 2023, 2:25:50 PM7/17/23
to Minjie Du, Lee Duncan, Chris Leech, James E.J. Bottomley, Martin K. Petersen, open list:ISCSI, open list:ISCSI, open list, opensour...@vivo.com
On 7/17/23 4:26 AM, Minjie Du wrote:
> session might contain private part of the password, so better use
> kfree_sensitive() to free it.
> In iscsi_session_free() use kfree_sensitive() to free session->password.
>
> Signed-off-by: Minjie Du <dumi...@vivo.com>
> ---
> drivers/scsi/libiscsi.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
> index 0fda8905e..2f273229c 100644
> --- a/drivers/scsi/libiscsi.c
> +++ b/drivers/scsi/libiscsi.c
> @@ -3132,7 +3132,7 @@ void iscsi_session_free(struct iscsi_cls_session *cls_session)
> struct module *owner = cls_session->transport->owner;
>
> iscsi_pool_free(&session->cmdpool);
> - kfree(session->password);
> + kfree_sensitive(session->password);
> kfree(session->password_in);

You then also want kfree_sensitive for password_in.

I would also use it for the usernames then too.

> kfree(session->username);
> kfree(session->username_in);

Lee Duncan

unread,
Jul 19, 2023, 10:53:25 AM7/19/23
to 杜敏杰, Mike Christie, Chris Leech, James E.J. Bottomley, Martin K. Petersen, open list:ISCSI, open list:ISCSI, open list, opensource.kernel
On 7/18/23 19:28, 杜敏杰 wrote:
> Hi Mike!
>
> Thank you for your reply!
> Do I need to submit a new patch to kfree_sensitive for 'password_in' and 'usernames'?
>

Just submit a V2 version of your original patch, making the changes that
Mike suggested. You can continue to include my Reviewed-by tag.

>
> regards,
> Minjie
>
> -----邮件原件-----
> 发件人: Mike Christie <michael....@oracle.com>
> 发送时间: 2023年7月18日 2:26
> 收件人: 杜敏杰 <dumi...@vivo.com>; Lee Duncan <ldu...@suse.com>; Chris Leech <cle...@redhat.com>; James E.J. Bottomley <je...@linux.ibm.com>; Martin K. Petersen <martin....@oracle.com>; open list:ISCSI <open-...@googlegroups.com>; open list:ISCSI <linux...@vger.kernel.org>; open list <linux-...@vger.kernel.org>
> 抄送: opensource.kernel <opensour...@vivo.com>
> 主题: Re: [PATCH v1] scsi: iscsi: use kfree_sensitive() in iscsi_session_free()

Minjie Du

unread,
Jul 20, 2023, 11:23:17 AM7/20/23
to Lee Duncan, Chris Leech, Mike Christie, James E.J. Bottomley, Martin K. Petersen, open list:ISCSI, open list:ISCSI, open list, opensour...@vivo.com, Minjie Du
session might contain private part of the password, so better use
kfree_sensitive() to free it.
In iscsi_session_free() use kfree_sensitive() to free session->password.

Signed-off-by: Minjie Du <dumi...@vivo.com>
---
drivers/scsi/libiscsi.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
index 0fda8905e..2f273229c 100644
--- a/drivers/scsi/libiscsi.c
+++ b/drivers/scsi/libiscsi.c
@@ -3132,7 +3132,7 @@ void iscsi_session_free(struct iscsi_cls_session *cls_session)
struct module *owner = cls_session->transport->owner;

iscsi_pool_free(&session->cmdpool);
- kfree(session->password);
+ kfree_sensitive(session->password);
kfree(session->password_in);
kfree(session->username);
kfree(session->username_in);
--
2.39.0

杜敏杰

unread,
Jul 20, 2023, 11:23:17 AM7/20/23
to Mike Christie, Lee Duncan, Chris Leech, James E.J. Bottomley, Martin K. Petersen, open list:ISCSI, open list:ISCSI, open list, opensource.kernel
Hi Mike!

Thank you for your reply!
Do I need to submit a new patch to kfree_sensitive for 'password_in' and 'usernames'?


regards,
Minjie

-----邮件原件-----
发件人: Mike Christie <michael....@oracle.com>
发送时间: 2023年7月18日 2:26
收件人: 杜敏杰 <dumi...@vivo.com>; Lee Duncan <ldu...@suse.com>; Chris Leech <cle...@redhat.com>; James E.J. Bottomley <je...@linux.ibm.com>; Martin K. Petersen <martin....@oracle.com>; open list:ISCSI <open-...@googlegroups.com>; open list:ISCSI <linux...@vger.kernel.org>; open list <linux-...@vger.kernel.org>
抄送: opensource.kernel <opensour...@vivo.com>
主题: Re: [PATCH v1] scsi: iscsi: use kfree_sensitive() in iscsi_session_free()

Reply all
Reply to author
Forward
0 new messages