Click here to Skip to main content
15,903,724 members

Welcome to the Lounge

   

For discussing anything related to a software developer's life but is not for programming questions. Got a programming question?

The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.

 
GeneralRe: Why I hate C++ Pin
OriginalGriff13-Jul-18 20:25
mveOriginalGriff13-Jul-18 20:25 
GeneralRe: Why I hate C++ Pin
pkfox13-Jul-18 21:46
professionalpkfox13-Jul-18 21:46 
GeneralRe: Why I hate C++ Pin
OriginalGriff13-Jul-18 22:00
mveOriginalGriff13-Jul-18 22:00 
GeneralRe: Why I hate C++ Pin
kalberts14-Jul-18 3:25
kalberts14-Jul-18 3:25 
GeneralRe: Why I hate C++ Pin
Gary Wheeler16-Jul-18 1:43
Gary Wheeler16-Jul-18 1:43 
GeneralRe: Why I hate C++ Pin
OriginalGriff16-Jul-18 1:48
mveOriginalGriff16-Jul-18 1:48 
GeneralRe: Why I hate C++ Pin
Gary Wheeler16-Jul-18 1:52
Gary Wheeler16-Jul-18 1:52 
GeneralRe: Why I hate C++ Pin
kalberts16-Jul-18 2:42
kalberts16-Jul-18 2:42 
Most oldtimers know the Ken Thompson Turing Award lecture "Reflections on trusting trust" (and the youngers really should be introduced to it!) For a few years after this paper was published (1984), various writers expanded on the idea.

One of the articles in my basement archive discusses how this compiler trojan could be implemented in the backend, code generating part, of a compiler suite such as gcc. It would then apply to all the compilers using that backend - Cobol is mentioned as an example, even though the malicious code never existed in Cobol form. This article discusses how the trojan could avoid detection, e.g. by propagating only to executables of a certain minimum size so that the size of the trojan code would be a tiny little fraction. It also discusses how a parse tree could be recognized as a compiler being compiled, and how the trojan could added at the parse tree level before code generation, so that it would spread even to the early (language dependent) compiler stages, not just the back end.

This would not exactly be self modifying code, but it illustrates that even Cobol certainly isn't safe for malware.
GeneralRe: Why I hate C++ Pin
kalberts14-Jul-18 3:36
kalberts14-Jul-18 3:36 
GeneralRe: Why I hate C++ Pin
Gary Wheeler16-Jul-18 1:45
Gary Wheeler16-Jul-18 1:45 
GeneralRe: Why I hate C++ Pin
MKJCP16-Jul-18 3:18
MKJCP16-Jul-18 3:18 
GeneralRe: Why I hate C++ Pin
Gary Wheeler16-Jul-18 3:20
Gary Wheeler16-Jul-18 3:20 
GeneralRe: Why I hate C++ Pin
MKJCP16-Jul-18 3:30
MKJCP16-Jul-18 3:30 
GeneralRe: Why I hate C++ Pin
dan!sh 13-Jul-18 4:57
professional dan!sh 13-Jul-18 4:57 
GeneralRe: Why I hate C++ Pin
Rick York13-Jul-18 6:26
mveRick York13-Jul-18 6:26 
GeneralRe: Why I hate C++ Pin
Ian Bell, #213-Jul-18 6:44
professionalIan Bell, #213-Jul-18 6:44 
GeneralRe: Why I hate C++ Pin
Munchies_Matt14-Jul-18 21:57
Munchies_Matt14-Jul-18 21:57 
GeneralRe: Why I hate C++ Pin
Ian Bell, #215-Jul-18 7:06
professionalIan Bell, #215-Jul-18 7:06 
GeneralRe: Why I hate C++ Pin
Munchies_Matt15-Jul-18 21:16
Munchies_Matt15-Jul-18 21:16 
GeneralRe: Why I hate C++ Pin
Ian Bell, #217-Jul-18 6:54
professionalIan Bell, #217-Jul-18 6:54 
GeneralRe: Why I hate C++ Pin
TheGreatAndPowerfulOz13-Jul-18 8:04
TheGreatAndPowerfulOz13-Jul-18 8:04 
GeneralRe: Why I hate C++ Pin
Munchies_Matt14-Jul-18 4:35
Munchies_Matt14-Jul-18 4:35 
GeneralRe: Why I hate C++ Pin
TheGreatAndPowerfulOz14-Jul-18 7:42
TheGreatAndPowerfulOz14-Jul-18 7:42 
GeneralRe: Why I hate C++ Pin
Munchies_Matt14-Jul-18 19:20
Munchies_Matt14-Jul-18 19:20 
GeneralRe: Why I hate C++ Pin
Nish Nishant13-Jul-18 9:47
sitebuilderNish Nishant13-Jul-18 9:47 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.