Re: A Famous Security Bug

Liste des GroupesRevenir à cl c 
Sujet : Re: A Famous Security Bug
De : david.brown (at) *nospam* hesbynett.no (David Brown)
Groupes : comp.lang.c
Date : 25. Mar 2024, 16:17:15
Autres entêtes
Organisation : A noiseless patient Spider
Message-ID : <uts4hr$15i0c$1@dont-email.me>
References : 1 2 3 4 5 6 7 8 9 10 11
User-Agent : Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0
On 24/03/2024 19:58, bart wrote:
On 24/03/2024 15:53, Michael S wrote:

#include <stdio.h>
#include <stddef.h>
>
int main(void)
{
   char* p0 = (char*)((size_t)main & -(size_t)0x10000);
   printf("%c%c\n", p0[0], p0[1]);
   return 0;
}
>
>
That would work for small programs. Not necessarily for bigger
programs.
>
 I'm not sure how that works. Are EXE images always loaded at multiple of 64KB? I suppose on larger programs it could search backwards 64KB at a time (although it could also hit on a rogue 'MZ' in program data).
 My point however was whether C considered that p0[0] access UB because it doesn't point into any C data object.
As it stands in the code, I believe it is undefined behaviour.

 If so, it would make access to memory-mapped devices or frame-buffers, or implementing things like garbage collectors, problematical.
As I wrote (more than once), the C way to handle this is "volatile". Volatile accesses are implementation-defined, and are "observable behaviour" - therefore the compiler generates code that makes exactly the read and write accesses you ask for when they are done using a volatile-qualified lvalue.

Date Sujet#  Auteur
22 Mar 24 * Re: A Famous Security Bug52James Kuyper
22 Mar 24 `* Re: A Famous Security Bug51bart
23 Mar 24  +* Re: A Famous Security Bug5Keith Thompson
23 Mar 24  i`* Re: A Famous Security Bug4Kaz Kylheku
23 Mar 24  i `* Re: A Famous Security Bug3David Brown
23 Mar 24  i  `* Re: A Famous Security Bug2bart
24 Mar 24  i   `- Re: A Famous Security Bug1David Brown
23 Mar 24  `* Re: A Famous Security Bug45James Kuyper
23 Mar 24   `* Re: A Famous Security Bug44bart
23 Mar 24    +* Re: A Famous Security Bug37David Brown
23 Mar 24    i`* Re: A Famous Security Bug36bart
24 Mar 24    i +* Re: A Famous Security Bug29David Brown
24 Mar 24    i i`* Re: A Famous Security Bug28bart
24 Mar 24    i i +* Re: A Famous Security Bug12Keith Thompson
24 Mar 24    i i i+- Re: A Famous Security Bug1David Brown
24 Mar 24    i i i+* Re: A Famous Security Bug3Michael S
25 Mar 24    i i ii+- Re: A Famous Security Bug1David Brown
25 Mar 24    i i ii`- Re: A Famous Security Bug1Keith Thompson
25 Mar 24    i i i`* Re: A Famous Security Bug7bart
25 Mar 24    i i i `* Re: A Famous Security Bug6Michael S
25 Mar 24    i i i  +* Re: A Famous Security Bug4bart
25 Mar 24    i i i  i`* Re: A Famous Security Bug3David Brown
25 Mar 24    i i i  i `* Re: A Famous Security Bug2Malcolm McLean
25 Mar 24    i i i  i  `- Re: A Famous Security Bug1Michael S
25 Mar 24    i i i  `- Re: A Famous Security Bug1David Brown
24 Mar 24    i i `* Re: A Famous Security Bug15David Brown
25 Mar 24    i i  `* Re: A Famous Security Bug14Michael S
25 Mar 24    i i   `* Re: A Famous Security Bug13David Brown
25 Mar 24    i i    +* Re: A Famous Security Bug3Michael S
25 Mar 24    i i    i+- Re: A Famous Security Bug1David Brown
25 Mar 24    i i    i`- Re: A Famous Security Bug1bart
25 Mar 24    i i    `* Re: A Famous Security Bug9bart
25 Mar 24    i i     +* Re: A Famous Security Bug7Michael S
25 Mar 24    i i     i`* Re: A Famous Security Bug6bart
25 Mar 24    i i     i +- Re: A Famous Security Bug1David Brown
25 Mar 24    i i     i `* Re: A Famous Security Bug4Michael S
25 Mar 24    i i     i  `* Re: A Famous Security Bug3bart
26 Mar 24    i i     i   `* Re: A Famous Security Bug2Michael S
26 Mar 24    i i     i    `- Re: A Famous Security Bug1bart
25 Mar 24    i i     `- Re: A Famous Security Bug1David Brown
24 Mar 24    i `* Re: A Famous Security Bug6Michael S
24 Mar 24    i  `* Re: A Famous Security Bug5bart
25 Mar 24    i   +* Re: A Famous Security Bug2Michael S
25 Mar 24    i   i`- Re: A Famous Security Bug1Michael S
25 Mar 24    i   +- Re: A Famous Security Bug1David Brown
28 Mar 24    i   `- Re: A Famous Security Bug1James Kuyper
23 Mar 24    +- Re: A Famous Security Bug1Tim Rentsch
24 Mar 24    +- Re: A Famous Security Bug1Michael S
24 Mar 24    +* Re: A Famous Security Bug3Michael S
24 Mar 24    i`* Re: A Famous Security Bug2bart
24 Mar 24    i `- Re: A Famous Security Bug1Michael S
28 Mar 24    `- Re: A Famous Security Bug1James Kuyper

Haut de la page

Les messages affichés proviennent d'usenet.

NewsPortal