Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 18 Dec 2014, 17:45
All times are UTC - 4
 Forum index » Off-Topic Area » Security
Was told malicious code can be written to Processor.
Post new topic   Reply to topic View previous topic :: View next topic
Page 2 of 2 [29 Posts]   Goto page: Previous 1, 2
Author Message
Aitch


Joined: 04 Apr 2007
Posts: 6825
Location: Chatham, Kent, UK

PostPosted: Fri 10 Sep 2010, 06:17    Post subject:  

8 bit

10 bonus points and a cookie Very Happy

Even with my magnifying glass I can't even read the writing on the case of a processor, let alone see any microchips.....

Nice, humourous story though......sorts the thinkers from the blind followers....bit like my 'virus killer'

Aitch Smile
Back to top
View user's profile Send private message 
postfs1


Joined: 27 Mar 2010
Posts: 831

PostPosted: Fri 10 Sep 2010, 10:13    Post subject:  

SirDuncan wrote:
...

Sometimes some state servants with a guns make a show "A pursuit of a bad guy's car on the different types of vehicles" for kids. For such a kids that don't know about special types of weapons. Oh yeah, special types of weapons can be used at the making a break-downs, i.e. car diseases.

_________________
  • I don't know why laboratories are named a hospitals.
  • The alive personage is like a tea bag with granules of unknown density inside, at that one the packet was made of organic material and was placed in the evaporated liquid or liquid.

Back to top
View user's profile Send private message 
RetroTechGuy


Joined: 15 Dec 2009
Posts: 2672
Location: USA

PostPosted: Fri 10 Sep 2010, 13:57    Post subject:  

SirDuncan wrote:
What the Geek Squad guy said was a straight up lie. You cannot write anything to the processor. It has no permanent storage to write to. The CPU cache is basically just very expensive, very limited capacity, very fast RAM. Lobster points out that it could still be read from for a few seconds after power off, but when the CPU boots up it doesn't go looking in the cache thinking that there will be instructions from God on the non-persistent memory. It assumes that that cache is empty. All the bits in the cache are marked as empty. It doesn't matter if it is a 0 or 1 if the CPU has it marked as empty.


Actually, it's more likely that the CPU overwrites all of the data in the cache, as part of its P.O.S.T. memory check... So anything stored there would be obliterated.
Back to top
View user's profile Send private message 
PaulBx1

Joined: 16 Jun 2006
Posts: 2308
Location: Wyoming, USA

PostPosted: Wed 15 Sep 2010, 11:18    Post subject:  

Quote:
CPU microcode can be updated.

Huh?

Unless the computer world has passed me by completely (which is possible), there is no such thing as CPU microcode.

Some IC's are downloadable, in a way that changes their logic gates. A company named Xilinx used to make what we called programmable gate arrays. I even did a Xilinx design ages ago. I'm sure this is commonplace now, but not in a CPU where you need maximum function and speed packed into the smallest possible die. CPUs are always going to be hard-wired. You can't write to a CPU. You probably can't even write directly to CPU cache, which no doubt only has a path from ordinary ram.
Back to top
View user's profile Send private message 
RetroTechGuy


Joined: 15 Dec 2009
Posts: 2672
Location: USA

PostPosted: Wed 15 Sep 2010, 12:02    Post subject:  

PaulBx1 wrote:
Quote:
CPU microcode can be updated.

Huh?

Unless the computer world has passed me by completely (which is possible), there is no such thing as CPU microcode.

Some IC's are downloadable, in a way that changes their logic gates. A company named Xilinx used to make what we called programmable gate arrays. I even did a Xilinx design ages ago. I'm sure this is commonplace now, but not in a CPU where you need maximum function and speed packed into the smallest possible die. CPUs are always going to be hard-wired. You can't write to a CPU. You probably can't even write directly to CPU cache, which no doubt only has a path from ordinary ram.


Unless there are actually "PROM" bits available, and the virus writer has a way to burn in the changes, they aren't going to change anything.

As Paul notes, other than custom (slow) processors, the CPU is going to have no EEPROM bits (and no EPROM bits - for those with access to a UV eraser). And even if there were old-fashioned PROM bits inside, you would need a writer with sufficient current and correct configuration to burn out those wires, in order to change the code.

If you need something to worry about, worry about web page "click-jacking" and downloaded viruses...
Back to top
View user's profile Send private message 
drongo


Joined: 10 Dec 2005
Posts: 354
Location: UK

PostPosted: Wed 15 Sep 2010, 13:02    Post subject: Microcode exists!  

There is such a thing as microcode. If you look at assembly instructions you'll soon realise that there aren't enough clock cycles to update all the registers and perform whatever function is requested.

The CPU clock is actually multiplied up and these clocks are used to time the microcode.

Funny thing is, nobody seems to be aware of it. Only printed reference I ever found was in Rodney Zack's (spelling?) book on the Z80 processor from about 1980.

You can't update/modify it though!
Back to top
View user's profile Send private message 
drongo


Joined: 10 Dec 2005
Posts: 354
Location: UK

PostPosted: Wed 15 Sep 2010, 13:16    Post subject: Clarification  

My comments apply only to microprocessors not other computer architectures.
Back to top
View user's profile Send private message 
PaulBx1

Joined: 16 Jun 2006
Posts: 2308
Location: Wyoming, USA

PostPosted: Sat 18 Sep 2010, 17:37    Post subject:  

Quote:
There is such a thing as microcode. If you look at assembly instructions you'll soon realise that there aren't enough clock cycles to update all the registers and perform whatever function is requested.

The CPU clock is actually multiplied up and these clocks are used to time the microcode.


I doubt this very much. I think it is all done in hardware; that is, hard wired and not changeable.
Back to top
View user's profile Send private message 
drongo


Joined: 10 Dec 2005
Posts: 354
Location: UK

PostPosted: Sun 19 Sep 2010, 08:38    Post subject: Microcode exists  

Yes it is done in hardware, and in microprocessors it is probably always unmodifiable and unchangeable. In some other architectures microcode is modifiable.

I never said you could modify microcode in a microprocessor. All I said was that there was something called microcode in 8-bit chips such as the Z80. I assume it was also in chips like the 6502 and all of the Intel and AMD microprocessors which have come along since the 1980s.

Rather than denying this you can prove me wrong fairly easily.

Look up some old assembly code instructions or machine code instructions for something simple like addition in an 8-bit CPU. Find out how many clock cycles the instruction uses and then try and work out how you can load two registers with numbers, add them together and place them in another register. Each register load and operation takes at least a clock cycle, so you are looking at at least four clock cycles straight off with standard von Neuman architecture. Your machine code instruction will only take one or two cycles of the master clock.

What actually happens is the master clock is multiplied up. Microcode-instructions are clocked by this faster clock.

As I said, most people are unaware of this including a guy I used to share an office with who lectured on 8-bit microprocessors in the 1980s. He had actually looked at the clock cycles associated with various instructions and worked out that there weren't enough of them. So when he asked me, I told him about microcode.

There's no need to take my word for it, go and check it out for yourself, it won't take more than about fifteen minutes to convince yourself that there aren't enough clock cycles.

Don't be a microcode denialist!
Back to top
View user's profile Send private message 
jamesbond

Joined: 26 Feb 2007
Posts: 2232
Location: The Blue Marble

PostPosted: Mon 20 Sep 2010, 04:09    Post subject:  

Microcode definitely exist in today's modern CPUs.

http://www.urbanmyth.org/microcode/
http://kerneltrap.org/node/2678
http://lwn.net/Articles/98029/

And this one straight from the CPU vendor itself:
http://www.amd64.org/support/microcode.html

And if you read the AMD64 CPU datasheet, you'll find instructions on how to upload such microcode updates to the CPU.

However I was wrong in saying that microcode updates are permanent. Indeed, they are not permanent as of today - a cold reboot and the update will be undone.

_________________
Fatdog64, Slacko and Puppeee user. Puppy user since 2.13.
Contributed Fatdog64 packages thread
Back to top
View user's profile Send private message 
nooby

Joined: 29 Jun 2008
Posts: 10557
Location: SwedenEurope

PostPosted: Mon 20 Sep 2010, 07:51    Post subject:  

Sorry. How does one find out about it?
_________________
I use Google Search on Puppy Forum
not an ideal solution though
Back to top
View user's profile Send private message 
PaulBx1

Joined: 16 Jun 2006
Posts: 2308
Location: Wyoming, USA

PostPosted: Thu 30 Sep 2010, 19:43    Post subject:  

Quote:
Rather than denying this you can prove me wrong fairly easily.

Look up some old assembly code instructions or machine code instructions for something simple like addition in an 8-bit CPU. Find out how many clock cycles the instruction uses and then try and work out how you can load two registers with numbers, add them together and place them in another register. Each register load and operation takes at least a clock cycle, so you are looking at at least four clock cycles straight off with standard von Neuman architecture. Your machine code instruction will only take one or two cycles of the master clock.

What actually happens is the master clock is multiplied up. Microcode-instructions are clocked by this faster clock.


Everything you just said here, can also be done in unmodifiable hardware, so it's not a proof that microcode is being used. Multiplying clocks per se has nothing to do with microcode. Pipelining is another technique for the same end, and it also has nothing per se to do with microcode. Oh, and "von Neuman" just means stored program and data are in the same memory, also irrelevant where microcode is concerned.

To me, microcode means you can either modify the internal architecture via downloaded data (can't really call it "instructions"), or you can modify the sequence and control of the underlying hardware, with downloaded instructions. It doesn't mean there is some iterative or multiple cycle process going on, although that also could be the case in some processors. You can iterate with pure hardware too.

I spent a lot of time working with the early AMD 2901 bit-slice processors. There was no microcode to download. Also worked with the 68000 processors; never heard of any microcode.

jamesbond's links are convincing, so I defer to him on this.
Back to top
View user's profile Send private message 
drongo


Joined: 10 Dec 2005
Posts: 354
Location: UK

PostPosted: Fri 01 Oct 2010, 10:30    Post subject: Deference  

As you wish.

I shall defer to Rodnay Zaks' "Programming the Z80" page 86 and the ever-reliable (!) Wikipedia.

http://en.wikipedia.org/wiki/Microcode

N.B. Note that microcode can be run from read-only memory or loaded into memory. My initial posts merely asserted that it did, in fact, exist - which was the point at dispute, if a little off-topic.
Back to top
View user's profile Send private message 
cthisbear

Joined: 29 Jan 2006
Posts: 3468
Location: Sydney Australia

PostPosted: Tue 16 Nov 2010, 16:18    Post subject:  

Super-secret' debugger discovered in AMD CPUs

http://www.theregister.co.uk/2010/11/15/amd_secret_debugger/

Chris.
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 2 of 2 [29 Posts]   Goto page: Previous 1, 2
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » Off-Topic Area » Security
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1132s ][ Queries: 12 (0.0234s) ][ GZIP on ]