From: Anisse Astier <anisse@astier.eu>
To: HacKurx <hackurx@gmail.com>
Cc: Kees Cook <keescook@chromium.org>, Rik van Riel <riel@redhat.com>,
intrigeri <intrigeri@boum.org>,
"kernel-hardening@lists.openwall.com"
<kernel-hardening@lists.openwall.com>
Subject: Re: [kernel-hardening] Patch for random mac address
Date: Fri, 26 May 2017 14:34:16 +0200 [thread overview]
Message-ID: <20170526123416.GA26899@bifrost> (raw)
In-Reply-To: <CAFwXZv_Nb5Q8n1kobbxz7+3w4r6pt-fD5YR4jw6_ZeXk1__9+A@mail.gmail.com>
On Fri, May 26, 2017 at 09:55:37AM +0200, HacKurx wrote:
> 2017-05-25 19:28 GMT+02:00 Kees Cook <keescook@chromium.org>:
> > How about sending a v2 with that fixed, inline, etc.
>
> Agree with the V2. I'm not a developer, what do you mean by inline? Send by GIT?
> If someone can make him grow in my place I will pay him a beer ^^
What he meant, is to follow the kernel process for sending patches.
Lukas already sent a link to the documentation, but you may be
interested in these parts:
https://www.kernel.org/doc/html/latest/process/submitting-patches.html#no-mime-no-links-no-compression-no-attachments-just-plain-text
Yes, you can use git as a client (with git send-email), but it's not
mandatory. You should use your real name though:
https://www.kernel.org/doc/html/latest/process/submitting-patches.html#sign-your-work-the-developer-s-certificate-of-origin
And add a Signed-off-by line.
>
> Thank you all. Best regards,
>
> HacKurx (Loic)
> diff --git a/net/core/dev.c b/net/core/dev.c
> index fca407b..3eeb42b 100644
> --- a/net/core/dev.c
> +++ b/net/core/dev.c
> @@ -6669,6 +6669,26 @@ int dev_change_flags(struct net_device *dev, unsigned int flags)
>
> changes = (old_flags ^ dev->flags) | (old_gflags ^ dev->gflags);
> __dev_notify_flags(dev, old_flags, changes);
> +
> +#ifdef CONFIG_RANDOM_MAC_ADDRESS
> + if ((changes & IFF_UP) && !(old_flags & IFF_UP)) {
> + /* randomize MAC whenever interface is brought up */
> + struct sockaddr sa;
> + unsigned int mac4;
> + unsigned short mac2;
> +
> + mac4 = prandom_u32();
> + mac2 = prandom_u32();
> + memcpy(sa.sa_data, &mac4, sizeof(mac4));
> + memcpy((char *)sa.sa_data + sizeof(mac4), &mac2, sizeof(mac2));
> + if (!is_valid_ether_addr(sa.sa_data))
> + sa.sa_data[5] = 1;
> + sa.sa_data[0] &= 0xFC;
> + sa.sa_family = dev->type;
> + dev_set_mac_address(dev, &sa);
You didn't answer my question regarding why this is different from the
function eth_random_addr.
Regards,
Anisse
next prev parent reply other threads:[~2017-05-26 12:34 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-24 20:44 [kernel-hardening] Patch for random mac address HacKurx
2017-05-24 22:40 ` Casey Schaufler
2017-05-24 23:05 ` Lukas Odzioba
2017-05-25 7:31 ` intrigeri
2017-05-25 15:07 ` Rik van Riel
2017-05-25 15:47 ` intrigeri
2017-05-25 15:59 ` Rik van Riel
2017-05-25 17:28 ` Kees Cook
2017-05-25 21:28 ` Anisse Astier
2017-05-26 8:23 ` Daniel Micay
2017-05-26 7:55 ` HacKurx
2017-05-26 12:34 ` Anisse Astier [this message]
2017-05-26 14:41 ` HacKurx
2017-06-09 12:00 ` HacKurx
2017-06-09 13:01 ` Anisse Astier
2017-05-25 15:48 ` Theodore Ts'o
2017-06-09 13:11 ` Matt Brown
2017-06-10 7:00 ` HacKurx
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170526123416.GA26899@bifrost \
--to=anisse@astier.eu \
--cc=hackurx@gmail.com \
--cc=intrigeri@boum.org \
--cc=keescook@chromium.org \
--cc=kernel-hardening@lists.openwall.com \
--cc=riel@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.