<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1097974524828964182</id><updated>2011-11-27T16:56:06.723-08:00</updated><category term='LINUX VIRUS'/><category term='LINUX DOCUMENTATIE'/><category term='mind hacks'/><category term='unix hack'/><title type='text'>IT SOLUTIONS</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>79</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-5344705636285200832</id><published>2008-06-02T05:42:00.000-07:00</published><updated>2008-06-02T05:43:25.051-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 13. Understand Visual Processing</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;The visual system is a complex network  of modules and pathways, all specializing in different tasks to contribute to  our eventual impression of the world&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2529"&gt;&lt;/a&gt;When we talk about "visual  processing," the natural mode of thinking is of a fairly self-contained process.  In this model, the eye would be like a video camera, capturing a sequence of  photographs of whatever the head happens to be looking at at the time and  sending these to the brain to be processed. After "processing" (whatever that  might be), the brain would add the photographs to the rest of the intelligence  it has gathered about the world around it and decide where to turn the head  next. And so the routine would begin again. If the brain were a computer, this  neat encapsulation would be how the visual subsystem would probably work.&lt;/p&gt; &lt;p class="docText"&gt;With that (admittedly, straw man) example in mind, we'll take a  tour of vision that shows just how nonsequential it all really is.&lt;/p&gt; &lt;p class="docText"&gt;And one need go no further than the very idea of the eyes as  passive receptors of photograph-like images to find the first fault in the straw  man. Vision starts with the entire body: we walk around, and move our eyes and  head, to capture depth information &lt;a class="docLink" href="mindhks-CHP-2-SECT-11.html#mindhks-CHP-2-SECT-11"&gt;&lt;span class="docEmphBold"&gt;[Hack #22]&lt;/span&gt;&lt;/a&gt; like parallax and more. Some of these  decisions about how to move are made early in visual processing, often before  any object recognition or conscious understanding has come into play.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2530"&gt;&lt;/a&gt;This pattern of vision as  an interactive process, including many feedback loops before processing has  reached conscious perception, is a common one. It's true there's a progression  from raw to processed visual signal, but it's a mixed-up, messy kind of  progression. Processing takes time, and there's a definite incentive for the  brain to make use of information as soon as it's been extracted; there's no time  to wait for processing to "complete" before using the extracted information. All  it takes is a rapidly growing dark patch in our visual field to make us flinch  involuntarily &lt;a class="docLink" href="mindhks-CHP-2-SECT-21.html#mindhks-CHP-2-SECT-21"&gt;&lt;span class="docEmphBold"&gt;[Hack #32]&lt;/span&gt;&lt;/a&gt;, as if something were looming over us.  That's an example of an effect that occurs early in visual processing.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2531"&gt;&lt;/a&gt;But let's look not at the  mechanisms of the early visual system, but how it's used. What are the endpoints  of all this processing? By the time perception reaches consciousness, another  world has been layered on top of it. Instead of seeing colors, shapes, and  changes over time (all that's really available to the eyes), we see whole  objects. We see depth, and we have a sense of when things are moving. Some  objects seem to stand out as we pay attention to them, and others recede into  the background. Consciously, we see both the world and assembled result of the  processing the brain has performed, in order to work around constraints (such as  the eyes' blind spot &lt;a class="docLink" href="mindhks-CHP-2-SECT-5.html#mindhks-CHP-2-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #16]&lt;/span&gt;&lt;/a&gt; ), and to give us a head start in  reacting with best-guess assumptions. The hacks in this chapter run the whole  production line of visual processing, using visual illusions and anomalies to  point out some detail of how vision works.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2532"&gt;&lt;/a&gt;But before diving straight  into all that, it's useful to have an overview of what's actually meant by the  &lt;i&gt;visual system&lt;/i&gt;. We'll start at the eye, see how signals from there go  almost directly to the primary visual cortex on the back of the brain, and from  there are distributed in two major streams. After that, visual information  distributes and merges with the general functions of the cortex itself.&lt;/p&gt;&lt;a name="mindhks-CHP-2-SECT-2.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;2.2.1. Start at the Retina&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2533"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2534"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2535"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2536"&gt;&lt;/a&gt;In a sense, light landing on the retinathe  sensory surface at the back of the eyeis already inside the brain. The whole  central nervous system (the brain and spinal column &lt;a class="docLink" href="mindhks-CHP-1-SECT-8.html#mindhks-CHP-1-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #7]&lt;/span&gt;&lt;/a&gt;) is contained within a number of  membranes, the outermost of which is called the &lt;i&gt;dura mater&lt;/i&gt;. The white of  your eye, the surface that protects the eye itself, is a continuation of this  membrane, meaning the eye is inside the same sac. It's as if two parts of your  brain had decided to bulge out of your head and become your eyes, but without  becoming separate organs.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2537"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2538"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2539"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2540"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2541"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2542"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2543"&gt;&lt;/a&gt;The  retina is a surface of cells at the back of your eye, containing a layer of  &lt;i&gt;photoreceptors&lt;/i&gt;, cells that detect light and convert it to electrical  signals. For most of the eye, signals are aggregateda hundred photoreceptors  will pass their signal onto a single cell further along in the chain. In the  center of the eye, a place called the fovea, there is no such signal  compression. (The population density of photoreceptors changes considerably  across the retina &lt;a class="docLink" href="mindhks-CHP-2-SECT-3.html#mindhks-CHP-2-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack #14]&lt;/span&gt;&lt;/a&gt; .) The resolution at the fovea is as  high as it can be, with cells packed in, and the uncompressed signal dispatched,  along with all the other information from other cells, down the &lt;i&gt;optic  nerve&lt;/i&gt;. The optic nerve is a bundle of projections from the neurons that sit  behind the photoreceptors in the retina, carrying electrical information toward  the brain, the path of information out of the eye. The size of the optic nerve  is such that it creates a hole in our field of vision, as photoreceptors can't  sit over the spot where it quits the eyeball (that's what's referred to as the  blind spot &lt;a class="docLink" href="mindhks-CHP-2-SECT-5.html#mindhks-CHP-2-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #16]&lt;/span&gt;&lt;/a&gt; ).&lt;/p&gt;&lt;a name="mindhks-CHP-2-SECT-2.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;2.2.2. Behind the Eyes&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2544"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2545"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2546"&gt;&lt;/a&gt;Just  behind the eyes, in the middle, the optic nerves from each eye meet, split, and  recombine in a new fashion, at the &lt;i&gt;optic chiasm&lt;/i&gt;. Both the right halves of  the two retinas are dispatched to the left of the brain and vice versa (from  here on, the two hemispheres of the brain are mirror images of each other). It  seems a little odd to divide processing directly down the center of the visual  field, rather than by eye, but this allows a single side of the brain to compare  the same scene as observed by both eyes, which it needs to get access to depth  information.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2547"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2548"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2549"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2550"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2551"&gt;&lt;/a&gt;The route  plan now is a dash from the optic chiasm right to the back of the brain, to  reach the visual cortex, which is where the real work starts happening. Along  the way, there's a single pit stop at a small region buried deep within the  brain called the &lt;span class="docEmphasis"&gt;lateral geniculate nucleus&lt;/span&gt;, or  LGN (there's one of these in each hemisphere, of course).&lt;a name="mindhks-CHP-2-ITERM-2552"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-2-ITERM-2553"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2554"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img alt="" src="images/pushpin.gif" height="51" width="52" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;Already, this is where it gets a little messy. Not every signal  that passes through the optic chiasm goes to the visual cortex. Some go to the  superior colliculus, which is like an emergency visual system. Sitting in the  midbrain, it helps with decisions on head and eye orienting. The midbrain is an  evolutionary, ancient part of the brain, involved with more basic responses than  the cortex and forebrain, which are both better developed in humans. (See &lt;a class="docLink" href="mindhks-CHP-1-SECT-8.html#mindhks-CHP-1-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #7]&lt;/span&gt;&lt;/a&gt; for a quick tour.) So it looks as if this  region is all low-level functioning. But also, confusingly, the superior  colliculus influences high-level functions, as when it suddenly pushes urgent  visual signals into conscious awareness &lt;a class="docLink" href="mindhks-CHP-3-SECT-5.html#mindhks-CHP-3-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #37]&lt;/span&gt;&lt;/a&gt;  .&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="docText"&gt;Actually, the LGN isn't a simple relay station. It deals almost  entirely with optical information, all 1.5 million cells of it. But it also  takes input from areas of the brain that deal with what you're paying attention  to, as well as from the cortex in general, and mixes that in too. Before visual  features have as been extracted from the raw visual information, sophisticated  input from elsewhere is being addedwe're not really sure of what's happening  here.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2555"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2556"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2557"&gt;&lt;/a&gt;There's  another division of the visual signal here, too. The LGN has processing pathways  for two separate signals: coarse, low-resolution data (lacking in color) goes  into the &lt;i&gt;magnocellular&lt;/i&gt; pathway. High-resolution information goes along  the &lt;i&gt;parvocellular&lt;/i&gt; pathway. Although there are many subsequent crossovers,  this division remains throughout the visual system.&lt;/p&gt;&lt;a name="mindhks-CHP-2-SECT-2.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;2.2.3. Enter the Visual Cortex&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2558"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2559"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2560"&gt;&lt;/a&gt;From the  LGN, the signals are sent directly to the visual cortex. At the lower back of  the cerebrum (so about a third of the way up your brain, on the back of your  head, and toward the middle) is an area of the cortex called either the striate  or primary visual cortex. It's called "striate" simply because it contains a  dark stripe when closely examined.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2561"&gt;&lt;/a&gt;Why the stripes? The  primary visual cortex is literally six layers of cells, with a thicker and  subdivided layer four where the two different pathways from the LGN land. These  projections from LGN create the dark band that gives the striate cortex its  name. As visual information moves through this region, cells in all six layers  play a role in extracting different features. It's way more complex than the  LGNthe striate contains about 200 million cells.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2562"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2563"&gt;&lt;/a&gt;The first batch of processing takes place in a  module called V1. &lt;span class="docEmphasis"&gt;V1&lt;/span&gt; holds a map of the retina as  source material, which looks more or less like the area of the eye it's dealing  with, only distorted. The part of the map that represents the foveathe  high-resolution center of the eyeis all out of proportion because of the number  of cells dedicated to it. It's as large as the rest of the map put together.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2564"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2565"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2566"&gt;&lt;/a&gt;Physically standing on top of this map are  what are called hypercolumns. A hypercolumn is a stack of cells performing  processing that sits on top of an individual location and extracts basic  information. So some neurons will become active when they see a particular  color, others when they see a line segment at a particular angle, and other more  complex ones when they see lines at certain angles moving in particular  directions. This first map and its associated hypercolumns constitute the area  V1 (&lt;i&gt;V&lt;/i&gt; for "vision"); it performs really simple feature extraction.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2567"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2568"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2569"&gt;&lt;/a&gt;The  subsequent visual processing areas named &lt;span class="docEmphasis"&gt;V2&lt;/span&gt; and  &lt;span class="docEmphasis"&gt;V3&lt;/span&gt; (again, &lt;i&gt;V&lt;/i&gt; for "vision," the number just  denotes order), also in the visual cortex, are similar. Information gets bumped  from V1 to V2 by dumping it into V2's own map, which acts as the center for its  batch of processing. V3 follows the same pattern: at the end of each stage, the  map is recombined and passed on.&lt;a name="mindhks-CHP-2-ITERM-2570"&gt;&lt;/a&gt;&lt;/p&gt;&lt;a name="mindhks-CHP-2-SECT-2.4"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;2.2.4. "What" and "Where" Processing Streams&lt;/h4&gt; &lt;p class="docText"&gt;So far visual processing has been mostly linear. There are  feedback (the LGN gets information from elsewhere on the cortex, for example)  and crossovers, but mostly the coarse and fine visual pathways have been  processed separately and there's been a reasonably steady progression from the  eye to the primary visual cortex.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2571"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2572"&gt;&lt;/a&gt;From V3, visual information is sent to dozens  of areas all over the cortex. These modules send information to one another and  draw from and feed other areas. It stops being a production line and turns into  a big construction site, with many areas extracting and associating different  features, all simultaneously.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2573"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2574"&gt;&lt;/a&gt;There's still a broad distinction between the  two pathways though. The coarse visual information, the &lt;i&gt;magnocellular  pathway&lt;/i&gt;, flows up to the top of the head. It's called the &lt;i&gt;dorsal  stream&lt;/i&gt;, or, more memorably, the "where" stream. From here on, there are  modules to spot motion and to look for broad features.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2575"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2576"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2577"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2578"&gt;&lt;/a&gt;The fine detail of vision from the  &lt;i&gt;parvocellular pathway&lt;/i&gt; comes out of the primary visual cortex and flows  down the &lt;i&gt;ventral&lt;/i&gt; &lt;i&gt;stream&lt;/i&gt;the "what" stream. The destination for this  stream is the inferior temporal lobe, the underside of the cerebrum, above and  behind the eyes.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2579"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2580"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2581"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2582"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2583"&gt;&lt;/a&gt;As the  name suggests, the "what" stream is all about object recognition. On the way to  the temporal lobe, there's a stop-off for a little further processing at a unit  called the &lt;i&gt;lateral occipital complex &lt;/i&gt;(LOC). What happens here is key to  what'll happen at the final destination points of the "what" stream. The LOC  looks for similarity in color and orientation and groups parts of the visual map  together into objects, separating them from the background.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2584"&gt;&lt;/a&gt;Later on, these objects  will be recognized as faces or whatever else. It represents a common method: the  visual information is processed to look for features. When found, information  about those features is added to the pool of data, and the whole lot is sent  on.&lt;/p&gt;&lt;a name="mindhks-CHP-2-SECT-2.5"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;2.2.5. Processing with Built-in Assumptions&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-2-ITERM-2585"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2586"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2587"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-2-ITERM-2588"&gt;&lt;/a&gt;The wiring diagram for all the subsequent  motion detection and object recognition modules is enormously complex. After  basic feature extraction, there's still number judgment, following moving  objects, and spotting biological motion &lt;a class="docLink" href="mindhks-CHP-8-SECT-4.html#mindhks-CHP-8-SECT-4"&gt;&lt;span class="docEmphBold"&gt;[Hack #77]&lt;/span&gt;&lt;/a&gt; to be done. At a certain point, the  defining characteristic of the cortex as a whole must come into play, and visual  information is processed enough to be associated with memory, language, and  reading emotions. This is where it blends in to the higher-order functions of  the whole brain.&lt;/p&gt; &lt;p class="docText"&gt;In the hacks that follow, we'll explore the effects of early  and late visual processing. A common thread through these effects will be the  assumptions the visual system has made about the visual world to expedite its  computationand by looking at the quirks of vision, we can draw some of these  out. Assumptions like the visual world remaining relatively stable from second  to second (so we don't notice if it doesn't &lt;a class="docLink" href="mindhks-CHP-3-SECT-8.html#mindhks-CHP-3-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #40]&lt;/span&gt;&lt;/a&gt; ) and supposing that dark areas are  shadows, which is the quirk that makeup takes advantage of &lt;a class="docLink" href="mindhks-CHP-2-SECT-9.html#mindhks-CHP-2-SECT-9"&gt;&lt;span class="docEmphBold"&gt;[Hack #20]&lt;/span&gt;&lt;/a&gt; .&lt;/p&gt; &lt;p class="docText"&gt;In a sense, the fact that we can observe these assumptions  suggests that the visual system assumes as much about the external environment  as about its own modules. The visual system's expectation that the motion module  will report motion correctly (and therefore our confusion when the module  doesn't identify motion correctly &lt;a class="docLink" href="mindhks-CHP-2-SECT-14.html#mindhks-CHP-2-SECT-14"&gt;&lt;span class="docEmphBold"&gt;[Hack #25]&lt;/span&gt;&lt;/a&gt; ) is much the same as the visual  system's expectation that a shadow is reporting 3D shape correctly. While we  could think of the visual system as entirely in the brain, really we should  include the eyes, the head, the body, and the environment as components in this  big, messy, densely connected human visual processing system, all of which  report their conclusions into the mix.&lt;/p&gt; &lt;p class="docText"&gt;And somehow, in all of this, the visual perception we know and  love somehow springs into existence. There doesn't seem to be a single place  where all this visual processing is reassembled, no internal television screen  that we watch (and even if there were, who would watch it?). It's distributed  over the whole visual system, and over the environment too. Not just a picture  at the retina, after all.&lt;/p&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-5344705636285200832?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/5344705636285200832/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=5344705636285200832' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5344705636285200832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5344705636285200832'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-13-understand-visual-processing.html' title='Hack 13. Understand Visual Processing'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-6623195199990422384</id><published>2008-06-02T05:41:00.000-07:00</published><updated>2008-06-02T05:42:16.787-07:00</updated><title type='text'>Hack 12. Build Your Own Sensory Homunculus</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;All abilities are skills; practice  something and your brain will devote more resources to it&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2507"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2508"&gt;&lt;/a&gt;The sensory homunculus looks like a person,  but swollen and out of all proportion. It has hands as big as its head; huge  eyes, lips, ears, and nose; and skinny arms and legs. What kind of person is it?  It's you, the person in your head. Have a look at the sensory homunculus first,  then make your own.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-13.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.13.1. In Action&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2509"&gt;&lt;/a&gt;You can play around with  Jaakko Hakulinen's homunculus applet (&lt;a class="docLink" href="http://www.cs.uta.fi/%7Ejh/homunculus.html" target="_blank"&gt;http://www.cs.uta.fi/~jh/homunculus.html&lt;/a&gt;; Java) to see where  different bits of the body are represented in the sensory and motor cortex. &lt;a class="docLink" href="#mindhks-CHP-1-FIG-3"&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;a name="mindhks-CHP-1-FIG-3"&gt;&lt;/a&gt; &lt;p&gt; &lt;/p&gt;&lt;center&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2510"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2511"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2512"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2513"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2514"&gt;&lt;/a&gt;This is  the person inside your head. Each part of the body has been scaled according to  how much of your sensory cortex is devoted to it. The area of cortex responsible  for processing touch sensations is the &lt;i&gt;somatosensory cortex&lt;/i&gt;. It lives in  the parietal lobe, further toward the back of the head than the motor cortex,  running alongside it from the top of the head down each side of the brain. Areas  for processing neighboring body parts are generally next to each other in the  cortex, although this isn't always possible because of the constraints of  mapping the 3D surface of your skin to a 2D map. The area representing your feet  is next to the area representing your genitals, for example (the genital  representation is at the very top of the somatosensory cortex, inside the groove  between the two hemispheres).&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2515"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2516"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2517"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2518"&gt;&lt;/a&gt;The applet lets you compare the motor and  sensory maps. The motor map is how body parts are represented for movement,  rather than sensation. Although there are some differences, they're pretty  similar. Using the applet, when you click on a part of the little man, the  corresponding part of the brain above lights up. The half of the man on the left  is scaled according to the representation of the body in the primary motor  cortex, and the half on the right is scaled to represent the somatosensory  cortex. If you click on a brain section or body part, you can toggle shading and  the display of the percentage of sensory or motor representation commanded by  that body part. The picture of the man is scaled, too, according to how much  cortex each part corresponds to. That's why the hands are so much larger than  the torso.&lt;/p&gt; &lt;p class="docText"&gt;Having seen this figure, you can see the relative amount of  your own somatosensory cortex devoted to each body part by measuring your touch  resolution. To do this, you'll need a willing friend to help you perform the  two-point discrimination test.&lt;/p&gt; &lt;p class="docText"&gt;Ask your friend to get two pointy objectstwo pencils will doand  touch one of your palms with both of the points, a couple of inches apart. Look  away so you can't see him doing it. You'll be able to tell there are two points  there. Now get your friend to touch with only one pencilyou'll be able to tell  you're being touched with just one. The trick now is for him to continue  touching your palm with the pencils, sometimes with both and sometimes with just  one, moving the tips ever closer together each time. At a certain point, you  won't be able to tell how many pencils he's using. In the center of your palm,  you should be able to discriminate between two points a millimeter or so apart.  At the base of your thumb, you've a few millimeters of resolution.&lt;/p&gt; &lt;p class="docText"&gt;Now try the same on your backyour two-point discrimination will  be about 4 or 5 centimeters.&lt;/p&gt; &lt;p class="docText"&gt;To draw a homunculus from these measurements, divide the actual  width of your body part by the two-point discrimination to get the size of each  part of the figure.&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img alt="" src="images/pushpin.gif" height="51" width="52" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;My back's about 35 centimeters across, so my homunculus should  have a back that's 9 units wide (35 divided by 4 centimeters, approximately).  Then the palms should be 45 units across (my palm is 9 centimeters across;  divide that by 2 millimeters to get 45 units). Calculating in units like this  will give you the correct scalesthe hand in my drawing will be five times as  wide as the  back.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="docText"&gt;That's only two parts of your body. To make a homunculus like  the one in Hakulinen's applet (or, better, the London Natural History Museum's  sensory homunculus model: &lt;a class="docLink" href="http://owen.nhm.ac.uk/piclib/www/image.php?img=87494&amp;amp;cat=6" target="_blank"&gt;http://owen.nhm.ac.uk/piclib/www/image.php?img=87494&amp;amp;cat=6&lt;/a&gt;),  you'll also need measurements all over your face, your limbs, your feet,  fingers, belly, and the rest. You'll need to find a fairly close friend for this  experiment, I'd imagine.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-13.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.13.2. How It Works&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2519"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2520"&gt;&lt;/a&gt;The way the brain deals with different tactile  sensations is the way it deals with many different kinds of input. Within the  region of the brain that deals with that kind of input is a surface over which  different values of that input are processeddifferent values correspond to  different actual locations in physical space. In the case of sensations, the  body parts are represented in different parts of the somatosensory cortex: the  brain has a &lt;i&gt;somatotopic&lt;/i&gt; (body-oriented) map. In hearing, different tones  activate different parts of the auditory cortex: it has a &lt;i&gt;tonotopic &lt;/i&gt;map.  The same thing happens in the visual system, with much of the visual cortex  being organized in terms of feature maps comprised of neurons responsible for  representing those features, ordered by where the features are in visual  space.&lt;/p&gt; &lt;p class="docText"&gt;Maps mean that qualities of stimuli can be represented  continuously. This becomes important when you consider that the evidence for  each qualityin other words, the rate at which the neurons in that part of the  map are firingis noisy, and it isn't the absolute value of neural firing that is  used to calculate which is the correct value but the relative value. (See &lt;a class="docLink" href="mindhks-CHP-2-SECT-14.html#mindhks-CHP-2-SECT-14"&gt;&lt;span class="docEmphBold"&gt;[Hack #25]&lt;/span&gt;&lt;/a&gt; on the motion aftereffect for an example  of this in action.)&lt;/p&gt; &lt;p class="docText"&gt;The more cells the brain dedicates to building the map  representing a sense or motor skill, the more sensitive we are in discriminating  differences in that type of input or in controlling output. With practice,  changes in our representational maps can become permanent.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2521"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2522"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2523"&gt;&lt;/a&gt;Brain  scanning of musicians has shown that they have larger cortical representations  of the body parts they use to play their instruments in their sensory areasmore  neurons devoted to finger movements among guitarists, more neurons devoted to  lips among trombonists. Musicians' auditory maps of "tone-space" are larger,  with neurons more finely tuned to detecting differences in sounds,&lt;sup&gt;1&lt;/sup&gt;  and orchestra conductors are better at detecting where a sound among a stream of  other sounds is coming from.&lt;/p&gt; &lt;p class="docText"&gt;It's not surprising that musicians are good at these things,  but the neuroimaging evidence shows that practice alters the very maps our  brains use to understand the world. This explains why small differences are  invisible to beginners, but stark to experts. It also offers a hopeful message  to the rest of us: all abilities are skills, if you practice them, your brain  will get the message and devote more resources to them.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-13.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.13.3. End Note&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Münte, T. F., Altenmüller, E., &amp;amp; Jäncke, L. (2002). The  musician's brain as a model for neuroplasticity. &lt;span class="docEmphasis"&gt;Nature  Neuroscience Reviews, 3&lt;/span&gt;, 473-478. (This is a review paper rather than an  original research report.)&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;a name="mindhks-CHP-1-SECT-13.4"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.13.4. See Also&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Pantev, C., Oostenveld, R., Engelien, A., Ross, B., Roberts, L.  E., &amp;amp; Hoke, M. (1998). Increased auditory cortical representation in  musicians. &lt;span class="docEmphasis"&gt;Nature, 392&lt;/span&gt;, 811-814.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Pleger B., Dinse, H. R., Ragert, P., Schwenkreis, P., Malin, J.  P., &amp;amp; Tegenthoff, M. (2001). Shifts in cortical representations predict  human discrimination improvement. &lt;span class="docEmphasis"&gt;Proceedings of the  National Academy of Sciences of the USA, 98&lt;/span&gt;, 12255-12260.&lt;a name="mindhks-CHP-1-ITERM-2524"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2525"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="4991535.html"&gt;&lt;img alt="" src="images/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-6623195199990422384?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/6623195199990422384/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=6623195199990422384' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/6623195199990422384'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/6623195199990422384'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-12-build-your-own-sensory.html' title='Hack 12. Build Your Own Sensory Homunculus'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-3723240513499449631</id><published>2008-06-02T05:40:00.000-07:00</published><updated>2008-06-02T05:41:18.396-07:00</updated><title type='text'>Hack 11. Why People Don't Work Like Elevator Buttons</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;More intense signals cause faster  reaction times, but there are diminishing returns: as a stimulus grows in  intensity, eventually the reaction speed can't get any better. The formula that  relates intensity and reaction speed is Pieron's Law&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2494"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2495"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2496"&gt;&lt;/a&gt;It's a  common illusion that if you are in a hurry for the elevator you can make it come  quicker by pressing the button harder. Or more often. Or all the buttons at  once. It somehow feels as if it ought to work, although of course we know it  doesn't. Either the elevator has heard you, or it hasn't. How loud you call  doesn't make any difference to how long it'll take to arrive.&lt;/p&gt; &lt;p class="docText"&gt;But then elevators aren't like people. People &lt;span class="docEmphasis"&gt;do&lt;/span&gt; respond quicker to more stimulation, even on the  most fundamental level. We press the brake quicker for brighter stoplights, jump  higher at louder bangs. And it's because we all do this that we all fall so  easily into thinking that things, including elevators, should behave the same  way.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-12.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.12.1. In Action&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2497"&gt;&lt;/a&gt;Give someone this simple  task: she must sit in front of a screen and press a button as quickly as she can  as soon as she sees a light flash on. If people were like elevators, the time it  takes to press the button wouldn't be affected by the brightness of the light or  the number of lights.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2498"&gt;&lt;/a&gt;But people aren't like  elevators and we respond quicker to brighter lights; in fact, the relationship  between the physical intensity of the light and the average speed of response  follows a precise mathematical form. This form is captured by an equation called  Pieron's Law. Pieron's Law says that the time to respond to a stimulus is  related to the stimulus intensity by the formula:&lt;/p&gt;&lt;pre&gt;Reaction Time&lt;br /&gt;R&lt;sub&gt;0&lt;/sub&gt; + &lt;tt&gt;&lt;i&gt;k&lt;/i&gt;&lt;/tt&gt;I&lt;sup&gt;-&lt;span style="font-family:symbol;"&gt;b&lt;/span&gt;&lt;/sup&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;tt&gt;Reaction&lt;/tt&gt; &lt;tt&gt;Time&lt;/tt&gt; is the time between the  stimulus appearing and you responding. &lt;tt&gt;I&lt;/tt&gt; is the physical intensity of  the signal. &lt;tt&gt;R&lt;/tt&gt;&lt;sub&gt;0&lt;/sub&gt; is the minimum time for any response, the  asymptotic value representing all the components of the reaction time that don't  vary, such as the time for light to reach your eye. &lt;span class="docEmphasis"&gt;k&lt;/span&gt; and &lt;span class="docEmphasis"&gt;&lt;span style="font-family:symbol;"&gt;b&lt;/span&gt;&lt;/span&gt; are constants that vary depending on the exact setup  and the particular person involved. But whatever the setup and whoever the  person, graphically the equation .&lt;/p&gt;&lt;a name="mindhks-CHP-1-FIG-2"&gt;&lt;/a&gt; &lt;p&gt; &lt;/p&gt;&lt;center&gt; &lt;h5 class="docFigureTitle"&gt;&lt;br /&gt;&lt;/h5&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;a name="mindhks-CHP-1-SECT-12.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.12.2. How It Works&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2499"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2500"&gt;&lt;/a&gt;In fact, Pieron's Law holds for the brightness  of light, the loudness of sound, and even the strength of taste.&lt;sup&gt;1&lt;/sup&gt; It  says something fundamental about how we process signals and make decisionsthe  physical nature of a stimulus carries through the whole system to affect the  nature of the response. We are not binary systems! The actual number of photons  of light or the amplitude of the sound waves that triggers us to respond  influences how we respond. In fact, as well as affecting response time, the  physical intensity of the stimulus also affects response force as well (e.g.,  how hard we press the button).&lt;/p&gt; &lt;p class="docText"&gt;A consequence of the form of Pieron's Law is that increases in  speed are easy for low-intensity stimuli and get harder as the stimulus gains  more intensity. It follows a log scale, like a lot of things in psychophysics.  The converse is also true: for quick reaction times, it's easier to slow people  down than to speed them up.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2501"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2502"&gt;&lt;/a&gt;Pieron's Law probably results because of the  fundamental way the decisions have to be made with uncertain information.  Although it might be clear to you that the light is either there or not, that's  only because your brain has done the work of removing the uncertainty for you.  And on a neural level, everything is uncertain because neural signals always  have noise in them.&lt;/p&gt; &lt;p class="docText"&gt;So as you wait for light to appear, your neuronal  decision-making hardware is inspecting noisy inputs and trying to decide if  there is enough evidence to say "Yes, it's there!" Looking at it like this, your  response time is the time to collect enough neural evidence that something has  really appeared. This is why Pieron's Law applies; more intense stimuli provide  more evidence, and the way in which they provide more evidence results in the  equation shown earlier.&lt;/p&gt; &lt;p class="docText"&gt;To see why, think of it like this: Pieron's Law is a way of  saying that the response time improves but at a decreasing rate, as the  intensity (i.e., the rate at which evidence accumulates) increases. Try this  analogy: stimulus intensity is your daily wage and making a response is buying a  $900 holiday. If you get paid $10 a day, it'll take 90 days to get the money for  the holiday. If you get a raise of $5, you could afford the holiday in 60 days30  days sooner. If you got two $5 raises, you'd be able to afford the holiday in 45  daysonly 15 days sooner than how long it would take with just one $5 raise. The  time until you can afford a holiday gets shorter as your wage goes up, but it  gets shorter more slowly, and if you do the math it turns out to be an example  of Pieron's Law.&lt;a name="mindhks-CHP-1-ITERM-2503"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2504"&gt;&lt;/a&gt;&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-12.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.12.3. End Note&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Pins, D., &amp;amp; Bonnet, C. (1996). On the relation between  stimulus intensity and processing time: Pieron's law and choice reaction time.  &lt;span class="docEmphasis"&gt;Perception &amp;amp; Psychophysics, 58&lt;/span&gt;(3),  390-400.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;a name="mindhks-CHP-1-SECT-12.4"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.12.4. See Also&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Stafford, T., &amp;amp; Gurney, K. G. (in press). The role of  response mechanisms in determining reaction time performance: Pieron's law  revisited. &lt;span class="docEmphasis"&gt;Psychonomic Bulletin &amp;amp; Review&lt;/span&gt; (in  press).&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Luce, R. D. (1986). &lt;span class="docEmphasis"&gt;Response Times:  Their Role in Inferring Elementary Mental Organisation&lt;/span&gt;. New York:  Clarendon Press. An essential one stop for all you need to know about modeling  reaction times.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Pieron, H. (1952). &lt;span class="docEmphasis"&gt;The Sensations:  Their Functions, Processes and Mechanisms&lt;/span&gt;. London: Frederick Muller Ltd.  The book in which Pieron first proposed his law.&lt;a name="mindhks-CHP-1-ITERM-2505"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2506"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-3723240513499449631?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/3723240513499449631/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=3723240513499449631' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3723240513499449631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3723240513499449631'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-11-why-people-dont-work-like.html' title='Hack 11. Why People Don&apos;t Work Like Elevator Buttons'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-4804666651620447375</id><published>2008-06-02T05:39:00.001-07:00</published><updated>2008-06-02T05:39:59.765-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 10. Detect the Effect of Cognitive Function on Cerebral Blood Flow</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;When you think really hard, your heart  rate noticeably increases&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2461"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2462"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2463"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2464"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2465"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2466"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2467"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2468"&gt;&lt;/a&gt;The brain requires approximately 20% of the  oxygen in the body, even during times of rest. Like the other organs in our  body, our brain needs more glucose, oxygen, and other essential nutrients as it  takes on more work. Many of the scanning technologies that aim to measure  aspects of brain function take advantage of this. Functional magnetic resonance  imaging (fMRI) &lt;a class="docLink" href="mindhks-CHP-1-SECT-5.html#mindhks-CHP-1-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #4]&lt;/span&gt;&lt;/a&gt; benefits from the fact that oxygenated  blood produces slightly different electromagnetic signals when exposed to strong  magnetic fields than deoxygenated blood and that oxygenated blood is more  concentrated in active brain areas. Positron emission tomography (PET) &lt;a class="docLink" href="mindhks-CHP-1-SECT-4.html#mindhks-CHP-1-SECT-4"&gt;&lt;span class="docEmphBold"&gt;[Hack #3]&lt;/span&gt;&lt;/a&gt; involves being injected with weakly  radioactive glucose and reading the subsequent signals from the most active,  glucose-hungry areas of the brain.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2469"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2470"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2471"&gt;&lt;/a&gt;A  technology called &lt;i&gt;transcranial Doppler sonography&lt;/i&gt; takes a different  approach and measures blood flow through veins and arteries. It takes advantage  of the fact that the pitch of reflected ultrasound will be altered in proportion  to the rate of flow and has been used to measure moment-to-moment changes in  blood supply to the brain. It has been found to be particularly useful in making  comparisons between different mental tasks. However, even without transcranial  Doppler sonography, you can measure the effect of increased brain activity on  blood flow by measuring the pulse.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-11.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.11.1. In Action&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2472"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2473"&gt;&lt;/a&gt;For this exercise you will need to get someone  to measure your &lt;i&gt;carotid pulse&lt;/i&gt;, taken from either side of the front of the  neck, just below the angle of the jaw. It is important that only very light  pressure be useda couple of fingertips pressed lightly to the neck, next to the  windpipe, should enable your friend to feel your pulse with little trouble.&lt;/p&gt; &lt;p class="docText"&gt;First you need to take a measure of a resting pulse. Sit down  and relax for a few minutes. When you are calm, ask your friend to count your  pulse for 60 seconds. During this time, close your eyes and try to empty your  mind.&lt;/p&gt; &lt;p class="docText"&gt;With a baseline established, ask your friend to measure your  pulse for a second time, using exactly the same method. This time, however, try  and think of as many species of animals as you can. Keeping still and with your  eyes closed, think hard, and if you get stuck, try thinking up a new strategy to  give you some more ideas.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2474"&gt;&lt;/a&gt;During the second session,  your pulse rate is likely to increase as your brain requires more glucose and  oxygen to complete its task. Just how much increase you'll see varies from  person to person.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-11.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.11.2. How It Works&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2475"&gt;&lt;/a&gt;Thinking of as many  animals as possible is a type of &lt;i&gt;verbal fluency&lt;/i&gt; task, testing how easily  you can come up with words. To complete the task successfully, you needed to be  able to coordinate various cognitive skills, for example, searching your memory  for category examples, generating and using strategies to think up more names  (perhaps you thought about walking through the jungle or animals from your local  area) and checking you were not repeating yourself.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2476"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2477"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2478"&gt;&lt;/a&gt;Neuropsychologists often use this task to test  the &lt;i&gt;executive system&lt;/i&gt;, the notional system that allows us to coordinate  mental tasks to solve problems and work toward a goal, skills that you were  using to think up examples of animals. After brain injury (particularly to the  frontal cortex), this system can break down, and the verbal fluency task can be  one of the tests used to assess the function of this system.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2479"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2480"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2481"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2482"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2483"&gt;&lt;/a&gt;Research  using PET scanning has shown similar verbal fluency tasks use a significant  amount of brain resources and large areas of the cortex, particularly the  frontal, temporal, and parietal areas.&lt;sup&gt;1&lt;/sup&gt;&lt;/p&gt; &lt;p class="docText"&gt;Interestingly, in this study people who did best used less  blood glucose than people who did not perform as well. You can examine this  relationship yourself by trying the earlier exercise on a number of people. Do  the people who do best show a slightly lower pulse than others? In these cases,  high performers seem to be using their brain more efficiently, rather than  simply using more brain resources.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2484"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2485"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2486"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2487"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2488"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2489"&gt;&lt;/a&gt;Although measuring the carotid pulse is a  fairly crude measure of brain activity compared to PET scanning, it is still a  good indirect measure of brain activity for this type of high-demand mental  task, as the carotid arteries supply both the middle and anterior cerebral  arteries. They supply blood to most major parts of the cortex, including the  frontal, temporal, parietal, and occipital areas, and so would be important in  supplying the needed glucose and oxygen as your brain kicks into gear.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2490"&gt;&lt;/a&gt;One problem with PET  scanning is that, although it can localize activity to certain brain areas, it  has poor temporal resolution, meaning it is not very good at detecting quick  changes in the rate of blood flow. In contrast, transcranial Doppler sonography  can detect differences in blood flow over very short periods of time  (milliseconds). Frauenfelder and colleagues used this technique to measure blood  flow through the middle and anterior cerebral arteries while participants were  completing tasks that are known to need similar cognitive skills as the verbal  fluency exercise.&lt;sup&gt;2&lt;/sup&gt; They found that the rate of blood flow changed  second by second, depending on exactly which part of the task the participant  was tackling. While brain scanning can provide important information about which  areas of the brain are involved in completing a mental activity, sometimes  measuring something as simple as blood flow can fill in the missing  pieces.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-11.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.11.3. End Notes&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Parks, R. W., Loewenstein, D. A., Dodrill, K. L., Barker, W.  W., Yoshii, F., Chang, J. Y., Emran, A., Apicella, A., Sheramata, W. A., &amp;amp;  Duara, R. (1988). Cerebral metabolic effects of a verbal fluency test: A PET  scan study. &lt;span class="docEmphasis"&gt;Journal of Clinical and Experimental  Neuropsychology, 10&lt;/span&gt;(5), 565-575.&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Schuepbach, D., Merlo, M. C., Goenner, F., Staikov, I., Mattle,  H. P., Dierks, T., &amp;amp; Brenner, H. D. (2002). Cerebral hemodynamic response  induced by the Tower of Hanoi puzzle and the Wisconsin card sorting test. &lt;span class="docEmphasis"&gt;Neuropsychologia, 40&lt;/span&gt;(1), 39-53.&lt;a name="mindhks-CHP-1-ITERM-2491"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2492"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2493"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-4804666651620447375?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/4804666651620447375/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=4804666651620447375' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4804666651620447375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4804666651620447375'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-10-detect-effect-of-cognitive.html' title='Hack 10. Detect the Effect of Cognitive Function on Cerebral Blood Flow'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-7440483771831051258</id><published>2008-06-02T05:38:00.002-07:00</published><updated>2008-06-02T05:39:08.975-07:00</updated><title type='text'>Hack 9. The Neuron</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;There's a veritable electrical storm  going on inside your head: 100 billion brain cells firing electrical signals at  one another are responsible for your every thought and action&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2436"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2437"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2438"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2439"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2440"&gt;&lt;/a&gt;A  &lt;i&gt;neuron&lt;/i&gt;, a.k.a. &lt;i&gt;nerve cell &lt;/i&gt;or &lt;i&gt;brain cell&lt;/i&gt;, is a specialized  cell that sends an electrical impulse out along fibers connecting it, in turn,  to other neurons. These guys are the wires of your very own personal  circuitry.&lt;/p&gt; &lt;p class="docText"&gt;What follows is a simplistic description of the general  features of nerve cells, whether they are found sending signals from your senses  to your brain, from your brain to your muscles, or to and from other nerve  cells. It's this last class, the kind that people most likely mean when they say  "neurons," that we are most interested in here. (All nerve cells, however, share  a common basic design.)&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img alt="" src="images/pushpin.gif" height="51" width="52" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;Don't for a second think that the general structure we're  describing here is the end of the story. The elegance and complexity of neuron  design is staggering, a complex interplay of structure and noise; of  electricity, chemistry, and biology; of spatial and dynamic interactions that  result in the kind of information processing that cannot be defined using simple  rules.&lt;sup&gt;1&lt;/sup&gt; For just a glimpse at the complexity of neuron structure, you  may want to start with this free chapter on nerve cells from the textbook  &lt;i&gt;Molecular Cell Biology&lt;/i&gt; by Harvey Lodish, Arnold Berk, Lawrence S.  Zipursky, Paul Matsudaira, David Baltimore, and James Darnell and published by  W. H. Freeman (&lt;a class="docLink" href="http://www.ncbi.nlm.nih.gov/books/bv.fcgi?call=bv.View..ShowSection&amp;amp;rid=mcb.chapter.6074" target="_blank"&gt;http://www.ncbi.nlm.nih.gov/books/bv.fcgi?call=bv.View..ShowSection&amp;amp;rid=mcb.chapter.6074&lt;/a&gt;),  but any advanced cell biology or neuroscience textbook will do to give you an  idea of what you're missing  here.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2441"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2442"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2443"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2444"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2445"&gt;&lt;/a&gt;The  neuron is made up of a cell body with long offshootsthese can be very long (the  whole length of the neck, for some neurons in the giraffe, for example) or very  short (i.e., reaching only to the neighboring cell, scant millimeters away).  Signals pass only one way along a neuron. The offshoots receiving incoming  transmissions are called &lt;i&gt;dendrites&lt;/i&gt;. The outgoing end, which is typically  longer, is called the &lt;i&gt;axon&lt;/i&gt;. In most cases there's only one, long, axon,  which branches at the tip as it connects to other neuronsup to 10,000 of them.  The junction where the axon of one cell meets the dendrites of another is called  the &lt;i&gt;synapse&lt;/i&gt;. Chemicals, called &lt;i&gt;neurotransmitters&lt;/i&gt;, are used to get  the signal across the synaptic gap. Each neuron will release only one kind of  neurotransmitter, although it may have receptors for many different kinds. The  arrival of the electric signal at the end of the axon triggers the release of  stores of the neurotransmitter that move across the gap (it's very small, after  all) and bind to receptor sites on the other side, places on the neuron that are  tuned to join with this specific type of chemical.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2446"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2447"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2448"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2449"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2450"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2451"&gt;&lt;/a&gt;Whereas the signal between neurons uses  neurotransmitters, internally it's electrical. The electrical signal is sent  along the neuron in the form of an &lt;i&gt;action potential&lt;/i&gt;.&lt;sup&gt;2&lt;/sup&gt; This is  what we mean when we say &lt;i&gt;impulses&lt;/i&gt;, &lt;i&gt;signals&lt;/i&gt;, &lt;i&gt;spikes&lt;/i&gt;, or  refer, in brain imaging speak, to the &lt;i&gt;firing&lt;/i&gt; or &lt;i&gt;lighting up&lt;/i&gt; of  brain areas (because this is what activity looks like on the pictures that are  made). Action potentials are the fundamental unit of information in the brain,  the universal currency of the neural market.&lt;/p&gt; &lt;p class="docText"&gt;The two most important computational features are as  follows:&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2452"&gt;&lt;/a&gt;They are binary. A neuron  either fires or doesn't, and each time it fires, the signal is the same size  (there's more on this later). Binary signals stop the message from becoming  diluted as neurons communicate with one another over distances that are massive  compared to the molecular scale on which they operate.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2453"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2454"&gt;&lt;/a&gt;Neurons encode information in the rate at  which they send signals, not in the size of the signals they send. The signals  are always the same size, information encoded in the frequency at which signals  are sent. A stronger signal is indicated by a higher frequency of spikes, not  larger single spikes. This is called &lt;i&gt;rate coding&lt;/i&gt;.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="docText"&gt;Together these two features mean that the real language of the  brain is not just a matter of spikes (signals sent by neurons), but spikes in  time.&lt;/p&gt; &lt;p class="docText"&gt;Whether or not a new spike, or impulse, is generated by the  postsynaptic neuron (the one on the receiving side of the synapse) is affected  by the following interwoven factors:&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2455"&gt;&lt;/a&gt;The amount of  neurotransmitter released&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;The interaction with other neurotransmitters released by other  neurons&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;How near they are and how close together in space and time&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;In what order they release their  neurotransmitters&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="docText"&gt;All of this short-term information is affected by any previous  history of interaction between these two neuronstimes one has caused the other  to fire and when they have both fired at the same time for independent  reasonsand slightly adjusts the probability of interaction happening  again.&lt;sup&gt;3&lt;/sup&gt;&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img alt="" src="images/pushpin.gif" height="51" width="52" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;Spikes happen pretty often: up to once every 2 milliseconds at  the maximum rate of the fastest-firing cells (in the auditory system; see &lt;a class="docLink" href="mindhks-CHP-4.html#mindhks-CHP-4"&gt;Chapter 4&lt;/a&gt; for more on  that). Although the average rate of firing is responsive to the information  being represented and transmitted in the brain, the actual timing of individual  spikes is unpredictable. The brain seems to have evolved an internal  communication system that has noise added to only one aspect of the information  it transmitsthe timing, but not the size of the signals transmitted. Noise is a  property of any biological system, so it's not surprising that it persists even  in our most complex organ. It could very well also be the case that the noise &lt;a class="docLink" href="mindhks-CHP-2-SECT-22.html#mindhks-CHP-2-SECT-22"&gt;&lt;span class="docEmphBold"&gt;[Hack #33]&lt;/span&gt;&lt;/a&gt; is playing some useful role in the  information processing the brain  does.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2456"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2457"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2458"&gt;&lt;/a&gt;After the  neurotransmitter has carried (or not carried, as the case may be) the signal  across the synaptic gap, it's then broken down by specialized enzymes and  reabsorbed to be released again when the next signal comes along. Many drugs  work by affecting the rate and quantity of particular neurotransmitters released  and the speed at which they are broken down and reabsorbed.&lt;/p&gt; &lt;p class="docText"&gt;Hacks such as &lt;a class="docLink" href="mindhks-CHP-1-SECT-12.html#mindhks-CHP-1-SECT-12"&gt;&lt;span class="docEmphBold"&gt;[Hack #11]&lt;/span&gt;&lt;/a&gt; and &lt;a class="docLink" href="mindhks-CHP-2-SECT-15.html#mindhks-CHP-2-SECT-15"&gt;&lt;span class="docEmphBold"&gt;[Hack #26]&lt;/span&gt;&lt;/a&gt; show some of the other consequences for  psychology of using neurons to do the work. Two good introductions to how  neurons combine on a large scale can be found at &lt;a class="docLink" href="http://www.foresight.gov.uk/cognitive.html" target="_blank"&gt;http://www.foresight.gov.uk/cognitive.html&lt;/a&gt;. This is a British  government Department of Trade and Industry project that aimed to get  neuroscientists and computer scientists to collaborate in producing reviews of  recent advances in their fields and summarize the implications for the  development of artificial cognitive systems.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-10.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.10.1. End Notes&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Gurney, K. N. (2001). Information processing in dendrites II.  Information theoretic complexity. &lt;span class="docEmphasis"&gt;Neural Networks,  14&lt;/span&gt;&lt;i&gt;, &lt;/i&gt;1005-1022.&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;You can start finding out details of the delicate  electrochemical dance that allows the transmission of these binary electrical  signals on the pages about action potentials that are part of a series of  lecture notes on human physiology (&lt;a class="docLink" href="http://members.aol.com/Bio50/LecNotes/lecnot11.html" target="_blank"&gt;http://members.aol.com/Bio50/LecNotes/lecnot11.html&lt;/a&gt;), the  Neuroscience for Kids site (&lt;a class="docLink" href="http://faculty.washington.edu/chudler/ap.html" target="_blank"&gt;http://faculty.washington.edu/chudler/ap.html&lt;/a&gt;), and The Brain  from Top to Bottom project (&lt;a class="docLink" href="http://www.thebrain.mcgill.ca/flash/a/a_01/a_01_m/a_01_m_fon/a_01_m_fon.html" target="_blank"&gt;http://www.thebrain.mcgill.ca/flash/a/a_01/a_01_m/a_01_m_fon/a_01_m_fon.html&lt;/a&gt;).&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;But this is another storya story called  learning.&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;a name="mindhks-CHP-1-SECT-10.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.10.2. See Also&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;How neurons are born, develop, and die is another interesting  story and one that we're not covering here. These notes from the National  Institutes of Health are a good introduction: &lt;a class="docLink" href="http://www.ninds.nih.gov/health_and_medical/pubs/NINDS_Neuron.htm" target="_blank"&gt;http://www.ninds.nih.gov/health_and_medical/pubs/NINDS_Neuron.htm&lt;/a&gt;.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2459"&gt;&lt;/a&gt;Neurons actually make up  less than a tenth of the cells in the brain. The other 90-98%, by number, are  glial cells, which are involved in development and maintenancethe sysadmins of  the brain. Recent research also suggests that they play more of a role in  information processing than was previously thought. You can read about this in  the cover story from the April 2004 edition of &lt;span class="docEmphasis"&gt;Scientific American&lt;/span&gt; (volume 290 #4), "The Other Half of  the Brain."&lt;a name="mindhks-CHP-1-ITERM-2460"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-7440483771831051258?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/7440483771831051258/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=7440483771831051258' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/7440483771831051258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/7440483771831051258'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-9-neuron.html' title='Hack 9. The Neuron'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-6959941088842437651</id><published>2008-06-02T05:38:00.001-07:00</published><updated>2008-06-02T05:38:31.019-07:00</updated><title type='text'>Hack 8. Tour the Cortex and the Four Lobes</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;The forebrain, the classic image of the  brain we know from pictures, is the part of the brain that defines human  uniqueness. It consists of four lobes and a thin layer on the surface called the  cortex&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2387"&gt;&lt;/a&gt;When you look at pictures  of the human brain, the main thing you see is the rounded, wrinkled bulk of the  brain. This is the &lt;i&gt;cerebrum&lt;/i&gt;, and it caps off the rest of the brain and  central nervous system &lt;a class="docLink" href="mindhks-CHP-1-SECT-8.html#mindhks-CHP-1-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #7]&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2388"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2389"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2390"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2391"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2392"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2393"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2394"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2395"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2396"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2397"&gt;&lt;/a&gt;To find your way around the cerebrum, you need  to know only a few things. It's divided into two hemispheres, left and right.  It's also divided into four lobes (large areas demarcated by particularly deep  wrinkles). The wrinkles you can see on the outside are actually folds: the  cerebrum is a very large folded-up surface, which is why it's so deep. Unfolded,  this surfacethe &lt;i&gt;cerebral cortex&lt;/i&gt;would be about 1.5 m&lt;sup&gt;2&lt;/sup&gt; (a square  roughly 50 inches on the side), and between 2 and 4 mm deep. It's not thick, but  there's a lot of it and this is where all the work takes place. The outermost  part, the top of the surface, is &lt;i&gt;gray matter&lt;/i&gt;, the actual neurons  themselves. Under a few layers of these is the &lt;i&gt;white matter&lt;/i&gt;, the fibers  connecting the neurons together. The cortex is special because it's mainly where  our high-level, human functions take place. It's here that information is  integrated and combined from the other regions of the brain and used to modulate  more basic functions elsewhere in the brain. The folds exist to allow many more  neurons and connections than other animals have in a similar size area.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-9.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.9.1. Cerebral Lobes&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2398"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2399"&gt;&lt;/a&gt;The four cerebral lobes generally perform  certain classes of function.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2400"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2401"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2402"&gt;&lt;/a&gt;You can  cover the &lt;i&gt;frontal lobe&lt;/i&gt; if you put your palms on your forehead with your  fingers pointing up. It's heavily involved in planning, socializing, language,  and general control and supervision of the rest of the brain.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2403"&gt;&lt;/a&gt;The &lt;i&gt;parietal lobe&lt;/i&gt;  is at the top and back of your head, and if you lock your fingers together and  hook your hands over the top back, that's it covered there. It deals a lot with  your senses, combining information and representing your body and movements. The  object recognition module for visual processing &lt;a class="docLink" href="mindhks-CHP-2-SECT-2.html#mindhks-CHP-2-SECT-2"&gt;&lt;span class="docEmphBold"&gt;[Hack #13]&lt;/span&gt;&lt;/a&gt; is located here.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2404"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2405"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2406"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2407"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2408"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2409"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2410"&gt;&lt;/a&gt;You can  put your hands on only the ends of the &lt;i&gt;temporal lobe&lt;/i&gt;it's right behind the  ears. It sits behind the frontal lobe and underneath the parietal lobe and curls  up the underside of the cerebrum. Unsurprisingly, auditory processing occurs  here. It deals with language too (like verbal memory), and the left hemisphere  is specialized for this (non-linguistic sound is on the right). The curled-up  ends of the temporal lobe join into the limbic system at the hippocampus and are  involved in long-term memory formation.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2411"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2412"&gt;&lt;/a&gt;Finally, there's the &lt;i&gt;occipital lobe&lt;/i&gt;,  right at the back of the brain, about midway down your head. This is the  smallest lobe of the cerebrum and is where the visual cortex is located.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2413"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2414"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2415"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2416"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2417"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2418"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2419"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2420"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2421"&gt;&lt;/a&gt;The two  hemispheres are joined together by another structure buried underneath the  lobes, called the &lt;i&gt;corpus callosum&lt;/i&gt;. It's the largest bundle of nerve  fibers in the whole nervous system. While sensory information, such as vision,  is divided across the two hemispheres of the brain, the corpus callosum brings  the sides back together. It's heavily coated in a fatty substance called  &lt;i&gt;myelin&lt;/i&gt;, which speeds electrical conduction along nerve cells and is so  efficient that the two sides of the visual cortex (for example) operate together  almost as if they're adjacent. Not bad considering the corpus callosum is  connecting together brain areas a few inches apart when the cells are usually  separated by only a millimeter or two.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-9.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.9.2. Cerebral Cortex&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2422"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2423"&gt;&lt;/a&gt;The cortex, the surface of these lobes, is  divided into areas performing different functions. This isn't exact, of course,  and they're highly interconnected and draw information from one another, but  more or less there are small areas of the surface that perform edge detection  for visual information or detect tools as opposed to animate objects in much  higher-level areas of the brain.&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img alt="" src="images/pushpin.gif" height="51" width="52" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;How these areas are identified is covered in the various brain  imaging and methods hacks earlier in this  chapter.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2424"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2425"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2426"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2427"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2428"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2429"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2430"&gt;&lt;/a&gt;The  sensory areas of the cortex are characterized by maps, representations of the  information that comes in from the senses. It's called a map because continous  variations in the value of inputs are represented by continuous shifts in  distance between where they are processed in the cortical space. In the visual  cortex, visual space is preserved on the retina. This spatial map is retained  for each stage of early visual processing. This means that if two things are  next to each other out there in the world they will, at least initially, be  processed by contiguous areas of the visual cortex. This is just like when a  visual image is stored on photographic negative but unlike when a visual image  is stored in a JPEG image file. You can't automatically point to two adjoining  parts of the JPEG file and be certain that they will appear next to each other  in the image. With a photographic film and with the visual cortex, you can.  Similarly, the auditory cortex creates maps of what you're hearing, but as well  as organizing things according to where they appear in space, it also has maps  that use frequency of the sound as the coordinate frame (i.e., they are  &lt;i&gt;tonotopic&lt;/i&gt;). And there's an actual map in physical space, on the cortex,  of the whole body surface too, called the sensory homunculus &lt;a class="docLink" href="mindhks-CHP-1-SECT-13.html#mindhks-CHP-1-SECT-13"&gt;&lt;span class="docEmphBold"&gt;[Hack #12]&lt;/span&gt;&lt;/a&gt; . You can tell how much importance the  brain gives to areas of the map, comparatively, by looking at how large they  are. The middle of the map of the primary visual cortex corresponds with the  fovea in the retina, which is extremely high resolution. It's as large as the  rest of the visual map put together.&lt;a name="mindhks-CHP-1-ITERM-2431"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2432"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2433"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2434"&gt;&lt;/a&gt;When the cortex is discussed, that means the  function in question is highly integrated with the rest of the brain. When we  consider what really makes us human and where consciousness is, it isn't solely  the cortex: the rest of the brain has changed function in humans, we have human  bodies and nervous systems, and we exist within environments that our brains  reflect in their adaptations. But it's definitely mostly the cortex. You are  here.&lt;a name="mindhks-CHP-1-ITERM-2435"&gt;&lt;/a&gt;&lt;/p&gt; &lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-6959941088842437651?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/6959941088842437651/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=6959941088842437651' title='1 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/6959941088842437651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/6959941088842437651'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-8-tour-cortex-and-four-lobes.html' title='Hack 8. Tour the Cortex and the Four Lobes'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-8489380643372519</id><published>2008-06-02T05:36:00.002-07:00</published><updated>2008-06-02T05:37:49.177-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 7. Get Acquainted with the Central Nervous System</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;Take a brief tour around the spinal  cord and brain. What's where, and what does what?&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2351"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2352"&gt;&lt;/a&gt;Think of the central nervous system like a  mushroom with the spinal cord as the stalk and the brain as the cap. Most of the  hacks in this book arise from features in the cortex, the highly interconnected  cells that make a thin layer over the brain...but not all. So let's start  outside the brain itself and work back in.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2353"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2354"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2355"&gt;&lt;/a&gt;Senses  and muscles all over the body are connected to nerves, bundles of neurons that  carry signals back and forth. Neurons come in many types, but they're basically  the same wherever they're found in the body; they carry electric current and can  act as relays, passing on information from one neuron to the next. That's how  information is carried from the sensory surface of the skin, as electric  signals, and also how muscles are told to move, by information going the other  way.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2356"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2357"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2358"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2359"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2360"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2361"&gt;&lt;/a&gt;Nerves at this point run to the spinal cord  two by two. One of each pair of nerves is for receptors (a sense of touch for  instance) and one for &lt;i&gt;effectors&lt;/i&gt;these trigger actions in muscles and  glands. At the spinal cord, there's no real intelligence yet but already some  decision-makingsuch as the withdrawal reflexoccurs. Urgent signals, like a  strong sense of heat, can trigger an effector response (such as moving a muscle)  before that signal even reaches the brain.&lt;/p&gt; &lt;p class="docText"&gt;The spinal cord acts as a conduit for nerve impulses up and  down the body: sensory impulses travel up to the brain, and the motor areas of  the brain send signals back down again. Inside the cord, the signals converge  into 31 pairs of nerves (sensory and motor again), and eventually, at the top of  the neck, these meet the brain.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2362"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2363"&gt;&lt;/a&gt;At about the level of your mouth, right in the  center of your head, the bundles of neurons in the spinal cord meet the brain  proper. This tip of the spinal cord, called the &lt;i&gt;brain stem&lt;/i&gt;, continues  like a thick carrot up to the direct center of your brain, at about the same  height as your eyes.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2364"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2365"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2366"&gt;&lt;/a&gt;This,  with some other central regions, is known as the &lt;i&gt;hindbrain&lt;/i&gt;. Working  outward from the brain stem, the other large parts of the brain are the  &lt;i&gt;cerebellum&lt;/i&gt;, which runs behind the soft area you can feel at the lower  back of your head, and the &lt;i&gt;forebrain&lt;/i&gt;, which is almost all the rest and  includes the cortex.&lt;/p&gt; &lt;p class="docText"&gt;Hindbrain activities are mostly automatic: breathing, the  heartbeat, and the regulation of the blood supply.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2367"&gt;&lt;/a&gt;The cerebellum is old  brainalmost as if it were evolution's first go at performing higher-brain  functions, coordinating the senses and movement. It plays an important role in  learning and also in motor control: removing the cerebellum produces  characteristic jerky movements. The cerebellum takes input from the eyes and  ears, as well as the balance system, and sends motor signals to the brain  stem.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2368"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2369"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2370"&gt;&lt;/a&gt;Sitting  atop the hindbrain is the &lt;i&gt;midbrain&lt;/i&gt;, which is small in humans but much  larger in animals like bats. For bats, this corresponds to a relay station for  auditory informationbats make extensive use of their ears. For us, the midbrain  acts as a connection layer, penetrating deep into the forebrain (where our  higher-level functions are) and connecting back to the brain stem. It acts  partially to control movement, linking parts of the higher brain to motor  neurons and partially as a hub for some of the nerves that don't travel up the  spinal cord but instead come directly into the brain: eye movement is one such  function.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2371"&gt;&lt;/a&gt;Now we're almost at the  end of our journey. The &lt;i&gt;forebrain&lt;/i&gt;, also known as the &lt;i&gt;cerebrum&lt;/i&gt;, is  the bulbous mass divided into two great hemispheresit's the distinctive image of  the brain that we all know. Buried in the cerebrum, right in the middle where it  surrounds the tip of the brain stem and midbrain, there's the limbic system and  other primitive systems. The limbic system is involved in essential and  automatic responses like emotions, and includes the very tip of the temporal  cortex, the hippocampus and the amygdala, and, by some reckonings, the  hypothalamus. In some animals, like reptiles, this is all there is of the  forebrain. For them, it's a sophisticated olfactory system: smell is analyzed  here, and behavioral responses like feeding and fighting are triggered.&lt;a name="mindhks-CHP-1-ITERM-2372"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2373"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2374"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2375"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2376"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2377"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2378"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2379"&gt;&lt;/a&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docText"&gt;Neuroscientist joke: the hypothalamus regulates the four  essential &lt;i&gt;F&lt;/i&gt;s of life: fighting, fleeing, feeding, and mating.&lt;/p&gt; &lt;p class="docText"&gt;T.S.&lt;/p&gt;&lt;/blockquote&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2380"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2381"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2382"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2383"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2384"&gt;&lt;/a&gt;For us  humans, the limbic system has been repurposed. It still deals with smell, but  the &lt;i&gt;hippocampus&lt;/i&gt;, for exampleone part of the systemis now heavily involved  in long-term memory and learning. And there are still routing systems that take  sensory input (from everywhere but the nose, which is routed directly to the  limbic system), and distribute it all over the forebrain. Signals can come in  from the rest of the cerebrum and activate or modulate limbic system processing  common to all animalsthings like emotional arousal. The difference, for us  humans, is that the rest of the cerebrum is so large. The cap of the mushroom  consists of four large lobes on each hemisphere, visible when you look at the  picture of the brain. Taken together, they make up 90% of the weight of the  brain. And spread like a folded blanket over the whole of it is the layer of  massively interconnected neurons that is the &lt;i&gt;cerebral cortex&lt;/i&gt;, and if any  development can be said to be responsible for the distinctiveness of humanity,  this is it. For more on what functions the cerebral cortex performs, read &lt;a class="docLink" href="mindhks-CHP-1-SECT-9.html#mindhks-CHP-1-SECT-9"&gt;&lt;span class="docEmphBold"&gt;[Hack #8]&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt; &lt;p class="docText"&gt;As an orienting guide, it's useful to have a little of the  jargon as well as the map of the central nervous system. Described earlier are  the regions of the brain based mainly on how they grow and what the brain looks  like. There are also functional descriptions, like the visual system &lt;a class="docLink" href="mindhks-CHP-2-SECT-2.html#mindhks-CHP-2-SECT-2"&gt;&lt;span class="docEmphBold"&gt;[Hack #13]&lt;/span&gt;&lt;/a&gt;, that cross all these regions. They're  mainly self-explanatory, as long as you remember that functions tend to be both  regions in the brain and pathways that connect areas together.&lt;/p&gt; &lt;p class="docText"&gt;There are also positional descriptions, which describe the  brain geographically and seem confusing on first encounter. They're often used,  so it's handy to have a crib.&lt;a class="docLink" href="#mindhks-CHP-1-FIG-1"&gt;&lt;/a&gt;&lt;/p&gt;&lt;a name="mindhks-CHP-1-FIG-1"&gt;&lt;/a&gt; &lt;p&gt; &lt;/p&gt;&lt;center&gt;&lt;br /&gt;&lt;/center&gt;&lt;br /&gt;&lt;p class="docText"&gt;These terms are used to describe direction within the brain and  prefix the Latin names of the particular region they're used with (e.g.,  posterior occipital cortex means the back of the occipital cortex).&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2385"&gt;&lt;/a&gt;Unfortunately, a number of  different schemes are used to name the subsections of the brain, and they don't  always agree on where the boundaries of the different regions are. Analogous  regions in different species may have different names. Different subdisciplines  use different schemes and conventions too. A neuropsychologist might say  "Broca's areas," while a neuroanatomist might say "Brodman areas 44, 45, and  46"but they are both referring to the same thing. "Cortex" is also "neocortex"  is also "cerebrum." The analogous area in the rat is the forebrain. You get the  picture. Add to this the fact that many regions have subdivisions (the  somatosensory cortex is in the parietal lobe, which is in the neocortex, for  example) and some subdivisions can be put by different people in different  supercategories, and it can get very confusing.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-8.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.8.1. See Also&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Three excellent online resources for exploring neuroanatomy are  Brain Info (&lt;a class="docLink" href="http://www.med.harvard.edu/AANLIB/home.html" target="_blank"&gt;http://www.med.harvard.edu/AANLIB/home.html&lt;/a&gt;), The Navigable  Atlas of the Human Brain (&lt;a class="docLink" href="http://www.msu.edu/%7Ebrains/humanatlas" target="_blank"&gt;http://www.msu.edu/~brains/humanatlas&lt;/a&gt;), and The Whole Brain  Atlas (&lt;a class="docLink" href="http://braininfo.rprc.washington.edu/mainmenu.html" target="_blank"&gt;http://braininfo.rprc.washington.edu/mainmenu.html&lt;/a&gt;).&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;The Brain Museum (&lt;a class="docLink" href="http://brainmuseum.org/" target="_blank"&gt;http://brainmuseum.org&lt;/a&gt;) houses  lots of beautifully taken pictures of the brains from more than 175 different  species.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;BrainVoyager (&lt;a class="docLink" href="http://www.brainvoyager.com/" target="_blank"&gt;http://www.brainvoyager.com&lt;/a&gt;), which makes software for  processing fMRI data, is kind enough to provide a free program that lets you  explore the brain in 3D.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Nolte, J. (1999). &lt;span class="docEmphasis"&gt;The Human Brain: An  Introduction to Its Functional Anatomy&lt;/span&gt;.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Crossman, A. R., &amp;amp; Neary, D. (2000). &lt;span class="docEmphasis"&gt;Neuroanatomy: An Illustrated Colour Text&lt;/span&gt;.&lt;a name="mindhks-CHP-1-ITERM-2386"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a href="4991535.html"&gt;&lt;img alt="" src="images/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt; &lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-8489380643372519?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/8489380643372519/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=8489380643372519' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/8489380643372519'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/8489380643372519'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-7-get-acquainted-with-central.html' title='Hack 7. Get Acquainted with the Central Nervous System'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-8529577091279528243</id><published>2008-06-02T05:36:00.001-07:00</published><updated>2008-06-02T05:36:39.345-07:00</updated><title type='text'>Hack 6. Neuropsychology, the 10% Myth, and Why You Use All of Your Brain</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;Neuropsychology is the study of what  different parts of the brain do by studying people who no longer have those  parts. As well as being the oldest technique of cognitive neuroscience, it  refutes the oft-repeated myth that we only use 10% of our brains&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2322"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2323"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2324"&gt;&lt;/a&gt;Of the  many unscientific nuggets of wisdom about the brain that many people believe,  the most common may be the "fact" that we use only 10% of our brains.&lt;/p&gt; &lt;p class="docText"&gt;In a recent survey of people in Rio de Janeiro with at least a  college education, approximately half stated that the 10% myth was  true.&lt;sup&gt;1&lt;/sup&gt; There is no reason to suppose the results of a similar survey  conducted anywhere else in the world would be radically different. It's not  surprising that a lot of people believe this myth, given how often it is claimed  to be true. Its continued popularity has prompted one author to state that the  myth has "a shelf life longer than lacquered Spam".&lt;sup&gt;2&lt;/sup&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docText"&gt;Where does this rather popular belief come from?&lt;/p&gt; &lt;p class="docText"&gt;It's hard to find out how the myth started. Some people say  that something like it was said by Einstein, but there isn't any proof. The idea  that we have lots of spare &lt;span class="docEmphasis"&gt;capacity&lt;/span&gt; is certainly  true and fits with our aspirational culture, as well as with the Freudian notion  that the mind is mostly unconscious. Indeed, the myth was being used to peddle  self-help literature as early as 1929.&lt;sup&gt;3&lt;/sup&gt; The neatness and  numerological potency of the 10% figure is a further factor in the endurance of  the myth.&lt;/p&gt; &lt;p class="docText"&gt;A.B.&lt;/p&gt;&lt;/blockquote&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2325"&gt;&lt;/a&gt;Neuropsychology is the  study of patients who have suffered brain damage and the psychological  consequences of that brain damage. As well as being a vital source of  information about which bits of the brain are involved in doing which things,  neuropsychology also provides a neat refutation of the 10% myth: if we use only  10% of our brains, which bits would you be happy to lose? From neuropsychology,  we know that losing &lt;span class="docEmphasis"&gt;any&lt;/span&gt; bit of the brain causes  you to stop being able to do something or being able to do it so well. It's all  being used, not just 10% of it.&lt;/p&gt; &lt;p class="docText"&gt;Admittedly we aren't clear on exactly what each bit of the  brain does, but that doesn't mean that you can do without 90% of it.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2326"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2327"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2328"&gt;&lt;/a&gt;Neuropsychology has other uses aside from  disproving unhelpful but popularly held trivia. By looking at which  psychological functions remain after the loss of a certain brain region, we can  tell what brain regions are and are not necessary for us to do different things.  We can also see how functions group and divide by looking at whether they are  always lost together or lost only in dissimilar cases of brain damage. Two of  the famous early discoveries of neuropsychology are two distinct language  processing regions in the brain. &lt;i&gt;Broca's area &lt;/i&gt;(named after the  neuropsychologist Paul Broca) is in the frontal lobe and supports understanding  and producing structure in language. Those with damage to Broca's area speak in  stilted, single words. &lt;i&gt;Wernicke's area &lt;/i&gt;(on the junction between the  temporal and parietal lobes and named after Carl Wernicke) supports producing  and understanding the semantics of language. People with brain damage to  Wernicke's area can produce grammatically correct sentences, but often with  little or no meaning, an incomprehensible "word salad."&lt;a name="mindhks-CHP-1-ITERM-2329"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2330"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2331"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2332"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2333"&gt;&lt;/a&gt;Another line of evidence  against the 10% myth is brain imaging research [&lt;a class="docLink" href="mindhks-CHP-1-SECT-3.html#mindhks-CHP-1-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack#2]&lt;/span&gt;&lt;/a&gt; through &lt;a class="docLink" href="mindhks-CHP-1-SECT-5.html#mindhks-CHP-1-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack#4]&lt;/span&gt;&lt;/a&gt;], which has grown exponentially in the  last couple of decades. Such techniques allow the increased blood flow to be  measured in certain brain regions during the performance of cognitive tasks.  While debate continues about the degree to which it is sensible to infer much  about functional localization from imaging studies, one thing they make  abundantly clear is that there are no areas of the brain that are "black  holes"areas that never "light up" in response to some task or other. Indeed, the  neurons that comprise the cortex of the brain are active to some degree all the  time, even during sleep.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2334"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2335"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2336"&gt;&lt;/a&gt;A third  line of argument is that of evolutionary theory. The human brain is a very  expensive organ, requiring approximately 20% of blood flow from the heart and a  similar amount of available oxygen, despite accounting for only 2% of body  weight. The evolutionary argument is straightforward: is it really plausible  that such a demanding organ would be so inefficient as to have spare capacity 10  times greater than the areas being usefully employed?&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2337"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2338"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2339"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2340"&gt;&lt;/a&gt;Fourth, developmental studies indicate that  neurons that are not employed early in life are likely never to recover and  behave normally. For example, if the visual system is not provided with light  and stimulation within a fairly narrow developmental window, the neurons atrophy  and vision never develops. If the visual system is deprived of a specific kind  of stimulation, such as vertical lines, it develops without any sensitivity to  that kind of stimulus. Functions in other parts of the brain similarly rely on  activation to develop normally. If there really were a large proportion of  neurons that were not used but were instead lying in wait, likely they would be  useless by puberty.&lt;/p&gt; &lt;p class="docText"&gt;It can be seen, then, that the 10% myth simply doesn't stand up  to critical thinking. Two factors complicate the picture slightly, however; both  have been used to muddy the waters around the claim at some stage.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2341"&gt;&lt;/a&gt;First, people who suffer  hydrocephalus in childhood have been seen to have large "holes" in the middle of  their brains and yet function normally (the holes are fluid-filled  &lt;i&gt;ventricles&lt;/i&gt; that are present in every brain but are greatly enlarged in  hydrocephalus). This condition has been the focus of sensationalist television  documentaries, the thrust of which is that we can get on perfectly well without  much of our brains. Such claims are willfully misleadingwhat such examples  actually show is the remarkable capacity of the brain to assign functioning to  alternative areas if there are problems with the "standard" areas during a  specific time-point in development. Such "neuronal plasticity," as it is known,  is not seen following brain damage acquired in adulthood. As discussed earlier,  development of the brain depends on activitythis same fact explains why  hydrocephalitic brains can function normally and makes having an unused 90%  extremely unlikely.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2342"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2343"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2344"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2345"&gt;&lt;/a&gt;Second, there is actually a very disingenuous  sense in which we do "use" only 10% of our brains. The glial cells of the brain  outnumber the neurons by a factor of roughly 10 to 1. Glial cells play a  supporting role to the neurons, which are the cells that carry the  electrochemical signals of the brain. It is possible, therefore, to note that  only approximately 10% of the cells of the cortex are directly involved in  cognition.&lt;/p&gt; &lt;p class="docText"&gt;This isn't what proponents of the 10% theory are referring to,  however. Instead, the myth is almost always a claim about mind, not brain. The  claim is analogous to arguing that we operate at only 10% of our potential  (although "potential" is so immeasurable a thing, it is misleading from the  start to throw precise percentages around).&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2346"&gt;&lt;/a&gt;Uri Geller makes explicit  the "untapped potential" interpretation in the introduction to &lt;span class="docEmphasis"&gt;Uri Geller's Mind-Power Book&lt;/span&gt;:&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2347"&gt;&lt;/a&gt;Our minds are capable of  remarkable, incredible feats, yet we don't use them to their full capacity. In  fact, most of us only use about 10 per cent of our brains, if that. The other 90  per cent is full of untapped potential and undiscovered abilities, which means  our minds are only operating in a very limited way instead of at full  stretch.&lt;/p&gt;&lt;/blockquote&gt; &lt;p class="docText"&gt;The confusion between brain and mind blurs the issue, while  lending the claim an air of scientific credibility because it talks about the  physical brain rather than the unknowable mind.&lt;/p&gt; &lt;p class="docText"&gt;But it's just not true that 90% of the brain's capacity is just  sitting there unused. It is true that our brains adjust their function according  to experience &lt;a class="docLink" href="mindhks-CHP-1-SECT-13.html#mindhks-CHP-1-SECT-13"&gt;&lt;span class="docEmphBold"&gt;[Hack #12]&lt;/span&gt;&lt;/a&gt; good news for the patients studied by  neuropsychology. Many of them recover some of the ability they have lost. It is  also true that the brain can survive a surprisingly large amount of damage and  still sort of work (compare pouring two pints of beer down your throat and two  pints of beer into your computer's hard disk drive for an illustration of the  brain's superior resistance to insults). But neither of these facts mean that  you have exactly 90% of untapped potentialyou need all your brain's plasticity  and resistance to insult to keep learning and functioning across your life  span.&lt;/p&gt; &lt;p class="docText"&gt;In summary, the 10% myth isn't true, but it does offer an  intuitively seductive promise of the possibility of self-improvement. It has  been around for at least 80 years, and despite having no basis in current  scientific knowledge and being refuted by at least 150 years of neuropsychology,  it is likely to exist for as long as people are keen to aspire to be something  more than they are.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-7.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.7.1. End Notes&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Herculano-Houzel, S. (2002). Do you know your brain? A survey  on public neuroscience literacy at the closing of the decade of the brain. &lt;span class="docEmphasis"&gt;The Neuroscientist 8&lt;/span&gt;, 98-110.&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Radford, B. (1999). The ten-percent myth. &lt;span class="docEmphasis"&gt;Skeptical Inquirer&lt;/span&gt;. March-April (&lt;a class="docLink" href="http://www.csicop.org/si/9903/ten-percent-myth.html" target="_blank"&gt;http://www.csicop.org/si/9903/ten-percent-myth.html&lt;/a&gt;).&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;You can read all about the 10% myth in Beyerstein, B. L.  (1999), Whence cometh the myth that we only use 10% of our brains? In Della Sala  (ed.), &lt;span class="docEmphasis"&gt;Mind MythsExploring Popular Assumptions About the  Mind and Brain&lt;/span&gt;. New York: John Wiley and Sons, 4-24, at snopes.com (&lt;a class="docLink" href="http://www.snopes.com/science/stats/10percnt.htm" target="_blank"&gt;http://www.snopes.com/science/stats/10percnt.htm&lt;/a&gt;), and in  these two online essays by Eric Chudler, "Do We Use Only 10% of Our Brain?" (&lt;a class="docLink" href="http://faculty.washington.edu/chudler/tenper.html" target="_blank"&gt;http://faculty.washington.edu/chudler/tenper.html&lt;/a&gt;) and "Myths  About the Brain: 10 Percent and Counting" (&lt;a class="docLink" href="http://www.brainconnection.com/topics/?main=fa/brain-myth" target="_blank"&gt;http://www.brainconnection.com/topics/?main=fa/brain-myth&lt;/a&gt;).&lt;a name="mindhks-CHP-1-ITERM-2348"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2349"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2350"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-8529577091279528243?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/8529577091279528243/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=8529577091279528243' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/8529577091279528243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/8529577091279528243'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-6-neuropsychology-10-myth-and-why.html' title='Hack 6. Neuropsychology, the 10% Myth, and Why You Use All of Your Brain'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-297003341700351731</id><published>2008-06-02T05:35:00.001-07:00</published><updated>2008-06-02T05:35:55.777-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 5. Transcranial Magnetic Stimulation: Turn On and Off Bits of the Brain</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;Stimulate or suppress specific regions  of the brain, then sit back and see what happens&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;i&gt;Transcranial magnetic stimulation&lt;/i&gt;&lt;a name="mindhks-CHP-1-ITERM-2314"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2315"&gt;&lt;/a&gt; (TMS)  isn't an imaging technique like EEG &lt;a class="docLink" href="mindhks-CHP-1-SECT-3.html#mindhks-CHP-1-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack 2]&lt;/span&gt;&lt;/a&gt; or fMRI &lt;a class="docLink" href="mindhks-CHP-1-SECT-5.html#mindhks-CHP-1-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #4]&lt;/span&gt;&lt;/a&gt;, but it can be used along with them. TMS  uses a magnetic pulse or oscillating magnetic fields to temporarily induce or  suppress electrical activity in the brain. It doesn't require large machines,  just a small device around the head, andso far as we knowit's harmless with no  aftereffects.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2316"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2317"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2318"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2319"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2320"&gt;&lt;/a&gt;Neurons  communicate using electrical pulses, so being able to produce electrical  activity artificially has its advantages. Selected regions can be excited or  suppressed, causing hallucinations or partial blindness if some part of the  visual cortex is being targeted. Both uses help discover what specific parts of  the brain are for. If the subject experiences a muscle twitching, the TMS has  probably stimulated some motor control neurons, and causing hallucinations at  different points in the visual system can be used to discover the order of  processing (it has been used to discover where vision is cut out during saccades  &lt;a class="docLink" href="mindhks-CHP-2-SECT-6.html#mindhks-CHP-2-SECT-6"&gt;&lt;span class="docEmphBold"&gt;[Hack #17]&lt;/span&gt;&lt;/a&gt;, for example).&lt;/p&gt; &lt;p class="docText"&gt;Preventing a region from responding is also useful: if shutting  down neurons in a particular area of the cortex stops the subject from  recognizing motion, that's a good clue as to the function of that area. This  kind of discovery was possible before only by finding people with localized  brain damage; now TMS allows more structured experiments to take place.&lt;/p&gt; &lt;p class="docText"&gt;Coupled with brain imaging techniques, it's possible to see the  brain's response to a magnetic pulse ripple through connected areas, revealing  its structure.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-6.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.6.1. Pros&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Affects neural activity directly, rather than just measuring  it.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a name="mindhks-CHP-1-SECT-6.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.6.2. Cons&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2321"&gt;&lt;/a&gt;Apparently harmless,  although it's still early days.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a name="mindhks-CHP-1-SECT-6.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.6.3. See Also&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;"Savant For a Day" by Lawrence Osbourne (&lt;a class="docLink" href="http://www.nytimes.com/2003/06/22/magazine/22SAVANT.html" target="_blank"&gt;http://www.nytimes.com/2003/06/22/magazine/22SAVANT.html&lt;/a&gt; or &lt;a class="docLink" href="http://www.cognitiveliberty.org/neuro/TMS_NYT.html" target="_blank"&gt;http://www.cognitiveliberty.org/neuro/TMS_NYT.html&lt;/a&gt;, an  alternative URL), an article in the &lt;i&gt;New York Times&lt;/i&gt;, which describes  Lawrence Osborne's experience of TMS, having higher-level functions of his brain  suppressed, and a different type of intelligence exposed.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-297003341700351731?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/297003341700351731/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=297003341700351731' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/297003341700351731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/297003341700351731'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-5-transcranial-magnetic.html' title='Hack 5. Transcranial Magnetic Stimulation: Turn On and Off Bits of the Brain'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-5557063417392779527</id><published>2008-06-02T05:34:00.002-07:00</published><updated>2008-06-02T05:35:21.201-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 4. Functional Magnetic Resonance Imaging: The State of the Art</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;fMRI produces high-resolution  animations of the brain in action&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;i&gt;Functional magnetic resonance imaging&lt;/i&gt;&lt;a name="mindhks-CHP-1-ITERM-2303"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2304"&gt;&lt;/a&gt; &lt;a name="mindhks-CHP-1-ITERM-2305"&gt;&lt;/a&gt;(fMRI) is the king of brain imaging. Magnetic  resonance imaging is noninvasive and has no known side effectsexcept, for some,  claustrophobia. Having an MRI scan requires you to lie inside a large  electromagnet in order to be exposed to the high magnetic field necessary. It's  a bit like being slid inside a large white coffin. It gets pretty noisy too.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2306"&gt;&lt;/a&gt;The magnetic field pushes  the hydrogen atoms in your brain into a state in which they all "line up" and  spin at the same frequency. A radio frequency pulse is applied at this exact  frequency, making the molecules "resonate" and then emit radio waves as they  lose energy and return to "normal." The signal emitted depends on what type of  tissue the molecule is in. By recording these signals, a 3D map of the anatomy  of the brain is built up.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2307"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2308"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2309"&gt;&lt;/a&gt;MRI isn't  a new technology (it's been possible since the '70s), but it's been applied to  psychology with BOLD functional MRI (abbreviated to fMRI) only as recently as  1992. To obtain functional images of the brain, BOLD (blood oxygen level  dependent) fMRI utilizes the fact that deoxygenated blood is magnetic (because  of the iron in hemoglobin) and therefore makes the MRI image darker. When  neurons become active, fresh blood washes away the deoxygenated blood in the  precise regions of the brain that have been more active than usual.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2310"&gt;&lt;/a&gt;While structural MRI can  take a long time, fMRI can take a snapshot of activity over the whole brain  every couple of seconds, and the resolution is still higher than with PET &lt;a class="docLink" href="mindhks-CHP-1-SECT-4.html#mindhks-CHP-1-SECT-4"&gt;&lt;span class="docEmphBold"&gt;[Hack #3]&lt;/span&gt;&lt;/a&gt;. It can view activity in volumes of the  brain only 2 mm across and build a whole map of the brain from that. For a  particular experiment, a series of fMRI snapshots will be animated over a single  high-resolution MRI scan, and experimenters can see in exactly which brain areas  activity is taking place.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2311"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2312"&gt;&lt;/a&gt;Much of the cognitive neuroscience research  done now uses fMRI. It's a method that is still developing and improving, but  already producing great results.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-5.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.5.1. Pros&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;High spatial resolution and good enough time resolution to look  at changing patterns of activity. While not able to look at the changing brain  as easily as EEG &lt;a class="docLink" href="mindhks-CHP-1-SECT-3.html#mindhks-CHP-1-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack #2]&lt;/span&gt;&lt;/a&gt;, its far greater spatial resolution means  fMRI is suitable for looking at which parts of the brain are active in the  process of recalling a fact, for example, or seeing a face.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a name="mindhks-CHP-1-SECT-5.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.5.2. Cons&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Bulky, highly magnetic, and very expensive machinery.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2313"&gt;&lt;/a&gt;fMRI is still new. It's a  complex technique requiring computing power and a highly skilled team with good  knowledge both of physics and of the brain.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-5557063417392779527?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/5557063417392779527/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=5557063417392779527' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5557063417392779527'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5557063417392779527'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-4-functional-magnetic-resonance.html' title='Hack 4. Functional Magnetic Resonance Imaging: The State of the Art'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-2407240742220050754</id><published>2008-06-02T05:34:00.001-07:00</published><updated>2008-06-02T05:34:47.960-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 3. Positron Emission Tomography: Measuring Activity Indirectly with PET</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;PET is a radioactivity-based technique  to build a detailed 3D model of the brain and its activity&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;i&gt;Positron emission tomography&lt;/i&gt;&lt;a name="mindhks-CHP-1-ITERM-2300"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2301"&gt;&lt;/a&gt; (PET) is  more invasive than any of the other imaging techniques. It requires getting a  radioactive chemical into the bloodstream (by injection) and watching for where  in the brain the radioactivity ends upthe "positron emission" of the name. The  level of radioactivity is not dangerous, but this technique should not be used  on the same person on a regular basis.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2302"&gt;&lt;/a&gt;When neurons fire to send  a signal to other neurons, they metabolize more energy. A few seconds later,  fresh blood carrying more oxygen and glucose is carried to the region. Using a  radioactive isotope of water, the amount of blood flow to each brain location  can be monitored, and the active areas of the brain that require a lot of energy  and therefore blood flow can be deduced.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-4.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.4.1. Pros&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;A PET scan will produce a 3D model of brain  activity.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a name="mindhks-CHP-1-SECT-4.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.4.2. Cons&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Scans have to take place in bulky, expensive machinery, which  contain the entire body.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;PET requires injecting the subject with a radioactive  chemical.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Although the resolution of images has improved over the last 30  years, PET still doesn't produce as fine detail as other techniques (it can see  activity about 1 cm across).&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;PET isn't good for looking at how brain activity changes over  time. A snapshot can take minutes to be assembled.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-2407240742220050754?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/2407240742220050754/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=2407240742220050754' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2407240742220050754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2407240742220050754'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-3-positron-emission-tomography.html' title='Hack 3. Positron Emission Tomography: Measuring Activity Indirectly with PET'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-524780593543116869</id><published>2008-06-02T05:33:00.000-07:00</published><updated>2008-06-02T05:34:17.325-07:00</updated><title type='text'>Hack 2. Electroencephalogram: Getting the Big Picture with EEGs</title><content type='html'>&lt;p class="docText"&gt;&lt;span class="docEmphBold"&gt;EEGs give you an overall picture of the  timing of brain activity but without any fine detail&lt;/span&gt;.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2287"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2288"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2289"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2290"&gt;&lt;/a&gt;An &lt;i&gt;electroencephalogram&lt;/i&gt; (EEG) produces  a map of the electrical activity on the surface of the brain. Fortunately, the  surface is often what we're interested in, as the cortexresponsible for our  complex, high-level functionsis a thin sheet of cells on the brain's outer  layer. Broadly, different areas contribute to different abilities, so one  particular area might be associated with grammar, another with motion detection.  Neurons send signals to one another using electrical impulses, so we can get a  good measure of the activity of the neurons (how busy they are doing the work of  processing) by measuring the electromagnetic field nearby. Electrodes outside  the skull on the surface of the skin are close enough to take readings of these  electromagnetic fields.&lt;/p&gt; &lt;p class="docText"&gt;Small metal disks are evenly placed on the head, held on by a  conducting gel. The range can vary from two to a hundred or so electrodes, all  taking readings simultaneously. The output can be a simple graph of signals  recorded at each electrode or visualised as a map of the brain with activity  called out.&lt;/p&gt;&lt;a name="mindhks-CHP-1-SECT-3.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.3.1. Pros&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2291"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2292"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2293"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2294"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2295"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2296"&gt;&lt;/a&gt;The EEG technique is well understood and has  been in use for many decades. Patterns of electrical activity corresponding to  different states are now well-known: sleep, epilepsy, or how the visual cortex  responds when the eyes are in use. It is from EEG that we get the concepts of  alpha, beta, and gamma waves, related to three kinds of characteristic  oscillations in the signal.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2297"&gt;&lt;/a&gt;Great time resolution. A  reading of electrical activity can be taken every few milliseconds, so the  brain's response to stimuli can be precisely plotted.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2298"&gt;&lt;/a&gt;Relatively cheap. Home  kits are readily available. OpenEEG (&lt;a class="docLink" href="http://openeeg.sourceforge.net/" target="_blank"&gt;http://openeeg.sourceforge.net&lt;/a&gt;), EEG for the rest of us, is a  project to develop low-cost EEG devices, both hardware and  software.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;a name="mindhks-CHP-1-SECT-3.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;1.3.2. Cons&lt;/h4&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;a name="mindhks-CHP-1-ITERM-2299"&gt;&lt;/a&gt;Poor spatial resolution.  You can take only as many readings in space as electrodes you attach (up to 100,  although 40 is common). Even if you are recording from many locations, the  electrical signals from the scalp don't give precise information on where they  originate in the brain. You are getting only information from the surface of the  skull and cannot perfectly infer what and where the brain activity was that  generated the signals. In effect this means that it's useful for looking at  overall activity or activity in regions no more precise than an inch or so  across.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-524780593543116869?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/524780593543116869/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=524780593543116869' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/524780593543116869'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/524780593543116869'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-2-electroencephalogram-getting-big.html' title='Hack 2. Electroencephalogram: Getting the Big Picture with EEGs'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-172263951553740264</id><published>2008-06-02T05:32:00.000-07:00</published><updated>2008-06-02T05:33:34.052-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Hack 1. Find Out How the Brain Works Without Looking Inside</title><content type='html'>&lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;span class="docEmphBold"&gt;How do you tell what's inside a black  box without looking in it? This is the challenge the mind presents to cognitive  psychology&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;i&gt;Cognitive psychology &lt;/i&gt;&lt;a name="mindhks-CHP-1-ITERM-2252"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2253"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2254"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2255"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2256"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2257"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2258"&gt;&lt;/a&gt;is the psychology of the basic mental  processesthings like perception, attention, memory, language, decision-making.  It asks the question, "What are the fundamental operations on which mind is  based?"&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2259"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2260"&gt;&lt;/a&gt;The problem is, although you can measure what  goes into someone's head (the input) and measure roughly what they do (the  output), this doesn't tell you anything about what goes on in between. It's a  black box, a classic reverse engineering problem.&lt;sup&gt;1&lt;/sup&gt; How can we figure  out how it works without looking at the code?&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2261"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2262"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2263"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2264"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2265"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2266"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2267"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2268"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2269"&gt;&lt;/a&gt;These  days, of course, we can use neuroimaging (like EEG &lt;a class="docLink" href="mindhks-CHP-1-SECT-3.html#mindhks-CHP-1-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack 2]&lt;/span&gt;&lt;/a&gt;, PET &lt;a class="docLink" href="mindhks-CHP-1-SECT-4.html#mindhks-CHP-1-SECT-4"&gt;&lt;span class="docEmphBold"&gt;[Hack #3]&lt;/span&gt;&lt;/a&gt;, and fMRI &lt;a class="docLink" href="mindhks-CHP-1-SECT-5.html#mindhks-CHP-1-SECT-5"&gt;&lt;span class="docEmphBold"&gt;[Hack #4]&lt;/span&gt;&lt;/a&gt;) to look inside the head at the brain, or  use information on anatomy and information from brain-damaged individuals &lt;a class="docLink" href="mindhks-CHP-1-SECT-7.html#mindhks-CHP-1-SECT-7"&gt;&lt;span class="docEmphBold"&gt;[Hack #6]&lt;/span&gt;&lt;/a&gt; to inform how we think the brain runs the  algorithms that make up the mind. But this kind of work hasn't always been  possible, and it's never been easy or cheap. Experimental psychologists have  spent more than a hundred years refining methods for getting insight into how  the mind works without messing with the insides, and these days we call this  cognitive psychology.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2270"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2271"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2272"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2273"&gt;&lt;/a&gt;There's an example of a cognitive  psychology-style solution in another book from the hacks series, &lt;i&gt;Google  Hacks&lt;/i&gt; (&lt;a class="docLink" href="http://www.oreilly.com/catalog/googlehks" target="_blank"&gt;http://www.oreilly.com/catalog/googlehks&lt;/a&gt;). Google obviously  doesn't give access to the algorithms that run its searches, so the authors of  &lt;i&gt;Google Hacks&lt;/i&gt;, Tara Calishain and Rael Dornfest, were forced to do a  little experimentation to try and work it out. Obviously, if you put in two  words, Google returns pages that feature both words. But does the order matter?  Here's an experiment. Search Google for "reverse engineering" and then search  for "engineering reverse." The results are different; in fact, they are  sometimes different even when searching for words that aren't normally taken  together as some form of phrase. So we might conclude that order does make a  difference; in some way, the Google search algorithm takes into account the  order. If you try to whittle a search down to the right terms, something that  returned only a couple of hits, perhaps over time you could figure out more  exactly how the order mattered.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2274"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2275"&gt;&lt;/a&gt;This is basically what cognitive psychology  tries to do, reverse engineering the basic functions of the mind by manipulating  the inputs and looking at the results. The inputs are often highly restricted  situations in which people are asked to make judgments or responses in different  kinds of situations. &lt;span class="docEmphasis"&gt;How many words from the list you  learned yesterday can you still remember? How many red dots are there? Press a  key when you see an X appear on the screen&lt;/span&gt;. That sort of thing. The speed  at which they respond, the number of errors, or the patterns of recall or  success tell us something about the information our cognitive processes use, and  how they use it.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;A few things make reverse engineering the brain harder than  reverse engineering software, however.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Biological systems are often complex, sometimes even chaotic  (in the technical sense). This means that there isn't necessarily a one-to-one  correspondence in how a change in input affects output. In a logic-based or  linear system, we can clearly see causes and effects. The mind, however, doesn't  have this orderly mapping. Small things have big effects and sometime big  changes in circumstance can produce little obvious difference in how we respond.  Biological functionsincluding cognitionare often supported by multiple  processes. This means they are robust to changes in just one supporting process,  but it also means that they don't always respond how you would have thought when  you try and influence them.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2276"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2277"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2278"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2279"&gt;&lt;/a&gt;People also aren't consistent in the same way  software or machines usually are. Two sources of variability are noise and  learning. We don't automatically respond in the same way to the same stimulus  every time. This sometimes happens for no apparent reason, and we call this  randomness &lt;i&gt;noise&lt;/i&gt;. But sometimes our responses change for a reason, not  because of noise, and that's because the very act of responding first time  around creates feedback that informs our response pattern for the next time (for  example, when you get a new bike, you're cautious with your stopping distance at  first, but each time you have to stop suddenly, you're better informed about how  to handle the braking next time around). Almost all actions affect future  processing, so psychologists make sure that if they are testing someone the test  subject has either done the thing in question many times before, and hence  stopped changing his response to it, or he has never done it before.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2280"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2281"&gt;&lt;/a&gt;Another problem with trying to guess how the  mind works is that you can't trust people when they offer their opinion on &lt;span class="docEmphasis"&gt;why&lt;/span&gt; they did something or &lt;span class="docEmphasis"&gt;how&lt;/span&gt; they did it. At the beginning of the twentieth  century, psychology relied heavily on introspection and the confusion generated  led to the movement that dominated psychology until the '70s: behaviorism.  &lt;i&gt;Behaviorism&lt;/i&gt; insisted that we treat only what we can reliably measure as  part of psychology and excluded all reference to internal structures. In effect  we were to pretend that psychology was just the study of how stimuli were linked  to outputs. This made psychology much more rigorous experimentally (although  some would argue less interesting). Psychology today recognizes the need to  posit mind as more than simple stimulus-response matching, although cognitive  psychologists retain the behaviorists' wariness of introspection. For cognitive  psychologists, why you think you did something is just another bit of data, no  more privileged than anything else they've measured, and no more likely to be  right.&lt;sup&gt;2&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Cognitive psychology takes us a long way. Many phenomena  discovered by cognitive and experimental psychology are covered in this  bookthings like the attentional blink &lt;a class="docLink" href="mindhks-CHP-3-SECT-7.html#mindhks-CHP-3-SECT-7"&gt;&lt;span class="docEmphBold"&gt;[Hack #39]&lt;/span&gt;&lt;/a&gt; and state-dependent recall &lt;a class="docLink" href="mindhks-CHP-9-SECT-8.html#mindhks-CHP-9-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #87]&lt;/span&gt;&lt;/a&gt; . The rigor and precision of the methods  developed by cognitive psychology are still vital, but now they can be used in  tandem with methods that give insight into the underlying brain structure and  processes that are supporting the phenomenon being investigated.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="mindhks-CHP-1-SECT-2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;1.2.1. End Notes&lt;/span&gt;&lt;/h4&gt; &lt;div style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2282"&gt;&lt;/a&gt;Daniel Dennett has written  a brief essay called "Cognitive Science as Reverse Engineering" (&lt;a class="docLink" href="http://pp.kpnet.fi/seirioa/cdenn/cogscirv.htm" target="_blank"&gt;http://pp.kpnet.fi/seirioa/cdenn/cogscirv.htm&lt;/a&gt;) in which he  discusses the philosophy of this approach to mind.&lt;/span&gt;&lt;/p&gt;&lt;/div&gt; &lt;/li&gt;&lt;li&gt; &lt;div style="font-weight: normal;"&gt; &lt;p class="docList"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="mindhks-CHP-1-ITERM-2283"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2284"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2285"&gt;&lt;/a&gt;A  psychologist called Daryl Bem formalized this in "self-perception theory." He  said "Individuals come to know their own attitudes, emotions and internal states  by inferring them from observations of their own behavior and circumstances in  which they occur. When internal cues are weak, ambiguous, or uninterpretable,  the individual is in the same position as the outside observer." Bem, D. J.,  "Self Perception Theory." In L. Berkowitz (ed.), &lt;span class="docEmphasis"&gt;Advances in Experimental Social Psychology&lt;/span&gt;, volume 6  (1972).&lt;a name="mindhks-CHP-1-ITERM-2286"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a href="4991535.html"&gt;&lt;img alt="" src="images/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt; &lt;/span&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-172263951553740264?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/172263951553740264/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=172263951553740264' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/172263951553740264'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/172263951553740264'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/hack-1-find-out-how-brain-works-without.html' title='Hack 1. Find Out How the Brain Works Without Looking Inside'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-3546198497263493181</id><published>2008-06-02T05:31:00.000-07:00</published><updated>2008-06-02T05:32:29.487-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Inside the Brain</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top"&gt;&lt;a name="mindhks-CHP-1-SECT-1"&gt;&lt;/a&gt; &lt;h3 class="docSection1Title"&gt;1.1. Hacks 1-12&lt;/h3&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2242"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2243"&gt;&lt;/a&gt;It's never entirely true to say, "This bit of  the brain is solely responsible for function X." Take the visual system &lt;a class="docLink" href="mindhks-CHP-2-SECT-2.html#mindhks-CHP-2-SECT-2"&gt;&lt;span class="docEmphBold"&gt;[Hack #13]&lt;/span&gt;&lt;/a&gt;, for instance; it runs through many  varied parts of the brain with no single area solely responsible for all of  vision. Vision is made up of lots of different subfunctions, many of which will  be compensated for if areas become unavailable. With some types of brain damage,  it's possible to still be able to see, but not be able to figure out what's  moving or maybe not be able to see what color things are.&lt;/p&gt; &lt;p class="docText"&gt;What we can do is look at which parts of the brain are active  while it is performing a particular taskanything from recognizing a face to  playing the pianoand make some assertions. We can provide input and see what  output we getthe black box approach to the study of mind. Or we can work from  the outside in, figuring out which abilities people with certain types of  damaged brains lack.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2244"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2245"&gt;&lt;/a&gt;The latter, part of neuropsychology &lt;a class="docLink" href="mindhks-CHP-1-SECT-7.html#mindhks-CHP-1-SECT-7"&gt;&lt;span class="docEmphBold"&gt;[Hack #6]&lt;/span&gt;&lt;/a&gt;, is an important tool for psychologists.  Small, isolated strokes can deactivate very specific brain regions, and also  (though more rarely) accidents can damage small parts of the brain. Seeing what  these people can no longer do in these pathological cases, provides good clues  into the functions of those regions of the brain. Animal experimentation,  purposely removing pieces of the brain to see what happens, is another.&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2246"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2247"&gt;&lt;/a&gt;These are, however, pathology-based  methodsless invasive techniques are available. Careful experimentationmeasuring  response types, reaction times, and response changes to certain stimuli over  timeis one such alternative. That's cognitive psychology &lt;a class="docLink" href="mindhks-CHP-1-SECT-2.html#mindhks-CHP-1-SECT-2"&gt;&lt;span class="docEmphBold"&gt;[Hack #1]&lt;/span&gt;&lt;/a&gt;, the science of making deductions about  the structure of the brain through reverse engineering from the outside. It has  a distinguished history. More recently we've been able to go one step further.  Pairing techniques from cognitive psychology with imaging methods and  stimulation techniques &lt;a class="docLink" href="mindhks-CHP-1-SECT-3.html#mindhks-CHP-1-SECT-3"&gt;&lt;span class="docEmphBold"&gt;[Hack#2]&lt;/span&gt;&lt;/a&gt; through &lt;a class="docLink" href="mindhks-CHP-1-SECT-6.html#mindhks-CHP-1-SECT-6"&gt;&lt;span class="docEmphBold"&gt;[Hack#5]&lt;/span&gt;&lt;/a&gt;, we can manipulate and look at the brain  from the outside, without having to, say, remove the skull and pull a bit of the  cerebrum out. These imaging methods are so important and referred to so much in  the rest of this book, we've provided an overview and short explanation for some  of the most common techniques in this chapter.&lt;a name="mindhks-CHP-1-ITERM-2248"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;a name="mindhks-CHP-1-ITERM-2249"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2250"&gt;&lt;/a&gt;&lt;a name="mindhks-CHP-1-ITERM-2251"&gt;&lt;/a&gt;In order  that the rest of the book make sense, after looking at the various neuroscience  techniques, we take a short tour round the central nervous system &lt;a class="docLink" href="mindhks-CHP-1-SECT-8.html#mindhks-CHP-1-SECT-8"&gt;&lt;span class="docEmphBold"&gt;[Hack #7]&lt;/span&gt;&lt;/a&gt;, from the spine, to the brain &lt;a class="docLink" href="mindhks-CHP-1-SECT-9.html#mindhks-CHP-1-SECT-9"&gt;&lt;span class="docEmphBold"&gt;[Hack #8]&lt;/span&gt;&lt;/a&gt;, and then down to the individual neuron  &lt;a class="docLink" href="mindhks-CHP-1-SECT-10.html#mindhks-CHP-1-SECT-10"&gt;&lt;span class="docEmphBold"&gt;[Hack #9]&lt;/span&gt;&lt;/a&gt; itself. But what we're really interested  in is how the biology manifests in everyday life. What does it really mean for  our decision-making systems to be assembled from neurons rather than, well,  silicon, like a computer? What it means is that we're not software running on  hardware. The two are one and the same, the physical properties of our mental  substrate continually leaking into everyday life: the telltale sign of our  neurons is evident when we respond faster to brighter lights &lt;a class="docLink" href="mindhks-CHP-1-SECT-12.html#mindhks-CHP-1-SECT-12"&gt;&lt;span class="docEmphBold"&gt;[Hack #11]&lt;/span&gt;&lt;/a&gt;, and our biological roots show through  when blood flow has to increase because we're thinking so hard &lt;a class="docLink" href="mindhks-CHP-1-SECT-11.html#mindhks-CHP-1-SECT-11"&gt;&lt;span class="docEmphBold"&gt;[Hack #10]&lt;/span&gt;&lt;/a&gt; .&lt;/p&gt; &lt;p class="docText"&gt;And finally take a gander at a picture of the body your brain  thinks you have and get in touch with your inner sensory homunculus &lt;a class="docLink" href="mindhks-CHP-1-SECT-13.html#mindhks-CHP-1-SECT-13"&gt;&lt;span class="docEmphBold"&gt;[Hack #12]&lt;/span&gt;&lt;/a&gt; .&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-3546198497263493181?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/3546198497263493181/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=3546198497263493181' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3546198497263493181'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3546198497263493181'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/inside-brain.html' title='Inside the Brain'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-3638745543325701721</id><published>2008-06-02T05:29:00.002-07:00</published><updated>2008-06-02T05:31:24.185-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mind hacks'/><title type='text'>Why Mind Hacks?</title><content type='html'>&lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The term "&lt;span class="docEmphasis"&gt;hacking&lt;/span&gt;" has a bad  reputation in the media. They use it to refer to those who break into systems or  wreak havoc with computers as their weapons. Among people who write code,  though, the term "&lt;span class="docEmphasis"&gt;hack&lt;/span&gt;" refers to a  "quick-and-dirty" solution to a problem, or a clever way to get something done.  And the term "&lt;span class="docEmphasis"&gt;hacker&lt;/span&gt;" is taken very much as a  compliment, referring to someone as being "&lt;span class="docEmphasis"&gt;creative&lt;/span&gt;," having the technical chops to get things  done. The Hacks series is an attempt to reclaim the word, document the good ways  people are hacking, and pass the hacker ethic of creative participation on to  the uninitiated. Seeing how others approach systems and problems is often the  quickest way to learn about a new technology.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The brain, like all hidden systems, is prime territory for  curious hackers. Thanks to relatively recent developments in cognitive  neuroscience, we're able to satisfy a little of that curiosity, making educated  explanations for psychological effects rather than just pointing those effects  out, throwing light on the internal workings of the brain.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some of the hacks in this collection document the neat tricks  the brain has used to get the job done. Looking at the brain from the outside  like this, it's hard not to be impressed at the way it works. Other hacks point  to quirks of our own minds that we can exploit in unexpected ways, and that's  all part of learning our way round the wrinkles in this newly exposed  technology.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Mind Hacks is for people who want to know a bit more about  what's going on inside own heads and for people who are going to assemble the  hacks in new ways, playing with the interface between ourselves and the world.  It's wonderfully easy to get involved. We've all got brains, after all.&lt;/span&gt;&lt;/p&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-3638745543325701721?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/3638745543325701721/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=3638745543325701721' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3638745543325701721'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/3638745543325701721'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/why-mind-hacks.html' title='Why Mind Hacks?'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-1885194911301985272</id><published>2008-06-02T05:29:00.001-07:00</published><updated>2008-06-02T05:29:53.221-07:00</updated><title type='text'>Restrictions on the Superuser</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6423"&gt;&lt;/a&gt;Because the superuser  account is occasionally compromised—for example, by somebody sharing the  superuser password with a friend—there have been numerous attempts to limit the  availability and the power of the Unix superuser account.&lt;/p&gt;&lt;a name="puis3-CHP-5-SECT-4.1"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;5.4.1 Secure Terminals: Limiting Where the Superuser  Can Log In&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6424"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6425"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6426"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6427"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6428"&gt;&lt;/a&gt;Most versions  of Unix allow you to configure certain terminals so that users can't log in as  the superuser from the &lt;tt&gt;login&lt;/tt&gt;: prompt. Anyone who wishes to have  superuser privileges must first log in as himself and then &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. This feature  makes tracking who is using the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account  easier because the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command logs the username  of the person who runs it and the time that it was run.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-13"&gt;[13]&lt;/a&gt;&lt;/sup&gt; Unix also requires  that the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; user's password be provided when  booting in single-user mode if the console is not listed as being secure.&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-13"&gt;[13]&lt;/a&gt;&lt;/sup&gt; Unless you  configure your &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt; system so that this log is  kept on a remote machine, the person who uses the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command can delete the logfile after successfully  becoming &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. For information on configuring the  &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt; system, see &lt;a class="docLink" href="0596003234_puis3-chp-21.html#puis3-CHP-21"&gt;Chapter  21&lt;/a&gt;.&lt;/p&gt;&lt;/blockquote&gt; &lt;p class="docText"&gt;Secure consoles add to overall system security because they  force people to know &lt;span class="docEmphasis"&gt;two&lt;/span&gt; passwords to gain  superuser access to the system. Network virtual terminals should not be listed  as secure to prevent users from logging into the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account remotely using &lt;span class="docEmphasis"&gt;telnet&lt;/span&gt;. (Of course, &lt;span class="docEmphasis"&gt;telnet&lt;/span&gt; should also be disabled, which it isn't in some  environments.) The Secure Shell server ignores the terminal security attribute,  but it has its own directive (&lt;tt&gt;PermitRootLogin&lt;/tt&gt; in &lt;i&gt;sshd_config&lt;/i&gt;)  that controls whether users may log in as &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  remotely.&lt;/p&gt; &lt;p class="docText"&gt;On BSD-derived systems, terminal security is specified in the  &lt;a name="puis3-CHP-5-ITERM-6429"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6430"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6431"&gt;&lt;/a&gt;&lt;i&gt;/etc/ttys&lt;/i&gt; file. In this excerpt from the  file, the tty00 terminal is secure and the tty01 terminal is not:&lt;/p&gt;&lt;pre&gt;tty00   "/usr/libexec/getty std.9600"   unknown on secure&lt;br /&gt;tty01   "/usr/libexec/getty std.9600"   unknown on&lt;/pre&gt; &lt;p class="docText"&gt;On System V-derived systems, terminal security is specified in  the file &lt;a name="puis3-CHP-5-ITERM-6432"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6433"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6434"&gt;&lt;/a&gt;&lt;i&gt;/etc/securetty&lt;/i&gt;. This file specifies that  tty1 and tty2 are secure:&lt;/p&gt;&lt;pre&gt;#&lt;b&gt; more /etc/securetty &lt;/b&gt;&lt;br /&gt;tty1&lt;br /&gt;tty2&lt;br /&gt;#&lt;/pre&gt; &lt;p class="docText"&gt;In general, most Unix systems today are configured so that the  superuser can log in with the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account on the  system console, but not on other terminals.&lt;/p&gt; &lt;p&gt; &lt;table align="center" bgcolor="black" border="0" cellpadding="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bgcolor="white" border="0" cellpadding="6" cellspacing="0" width="100%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;Even if your system allows users to log directly into the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account, we recommend that you institute rules  that require users to first log into their own accounts and then use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  command.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;a name="puis3-CHP-5-SECT-4.2"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;5.4.2 BSD Kernel Security Levels&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6435"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6436"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6437"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6438"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6439"&gt;&lt;/a&gt;FreeBSD, Mac  OS X, and other operating systems have &lt;i&gt;kernel security levels&lt;/i&gt;, which can  be used to significantly reduce the power that the system allots to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; user. Using kernel security levels, you can  decrease the chances that an attacker who gains &lt;span class="docEmphasis"&gt;root&lt;/span&gt; access to your computer will be able to hide this  fact in your logfiles.&lt;/p&gt; &lt;p class="docText"&gt;The kernel security level starts at 0; it can be raised as part  of the system startup, but never lowered. The secure level is set with the &lt;span class="docEmphasis"&gt;sysctl&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6440"&gt;&lt;/a&gt; command:&lt;/p&gt;&lt;pre&gt;sysctl kern.securelevel=1&lt;/pre&gt; &lt;p class="docText"&gt;Level 1 is used for secure mode. Level 2 is used for "very  secure" mode. Level 3 is defined as the "really-really secure mode."&lt;/p&gt; &lt;p class="docText"&gt;At security level 1, the following restrictions are in  place:&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Write access to the raw disk partitions is prohibited. (This  forces all changes to the disk to go through the filesystem.)&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Raw access to the SCSI bus controller is prohibited.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Files that have the immutable flag set cannot be changed. Files  that have the append-only bit set can only be appended to, and not otherwise  modified or deleted.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;The contents of IP packets cannot be logged.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Raw I/O to the system console is prohibited.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Raw writes to system memory or I/O device controllers from user  programs are prohibited.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Some access is denied to the Linux /proc filesystem.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;Additional kernel modules cannot be loaded.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;The system clock cannot be set backwards. In addition, it  cannot be set forward more than a maximum of one second, and it can be set  forward only once per second (effectively, the clock can be pushed at most to  double time).&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="docText"&gt;At security level 2, the following restriction is added:&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Reads from raw disk partitions are not permitted.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="docText"&gt;At security level 3, the following restriction is added:&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;Changes to the IP filter are not permitted.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p class="docText"&gt;This list is not comprehensive.&lt;/p&gt; &lt;p class="docText"&gt;Overall, setting the secure level to 1 or 2 enables you to  increase the overall security of a Unix system; it also makes the system  dramatically harder to administer. If you need to take an action that's  prohibited by the current security level, you must reboot the system to do so.  Furthermore, the restrictions placed on the &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  user at higher secure levels may not be sufficient; it may be possible, given  enough persistence, for a determined attacker to circumvent the extra security  that the secure level system provides. In this regard, setting the level higher  may create a false sense of security that lulls the administrator into failing  to put in the proper safeguards. Nevertheless, if you can run your system at a  secure level higher than 0 without needing to constantly reboot it, it's  probably worthwhile to do so.&lt;/p&gt;&lt;a name="puis3-CHP-5-SECT-4.3"&gt;&lt;/a&gt; &lt;h4 class="docSection2Title"&gt;5.4.3 Linux Capabilities&lt;/h4&gt; &lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6441"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6442"&gt;&lt;/a&gt;Another mechanism for limiting the power of the  superuser is the Linux &lt;i&gt;capabilities system&lt;/i&gt;, invented on other operating  systems five decades ago and included with the Linux 2.4 kernel. Some other  high-security Unix systems and security add-ons to Unix have used capabilities  for years, and the POSIX committee drafted a standard (POSIX 1003.1e) but later  withdrew it.&lt;/p&gt; &lt;p class="docText"&gt;The Linux capabilities system allows certain privileged tasks  to be restricted to processes that have a specific "capability." This capability  can be used, transferred to other processes, or given up. Once a process gives  up a capability, it cannot regain that capability unless it gets a copy of the  capability from another process that was similarly endowed. At startup, the  &lt;span class="docEmphasis"&gt;init&lt;/span&gt; process generates all of the capabilities  that the operating system requires for its use. As processes start their  operations, they shed unneeded capabilities. In this manner, compromising one of  these processes does not compromise other aspects of the operating system, even  if the compromised process is running as &lt;span class="docEmphasis"&gt;root&lt;/span&gt;.&lt;/p&gt; &lt;p&gt;&lt;a name="puis3-CHP-5-SIDEBAR-3"&gt;&lt;/a&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;Alternatives to the Superuser&lt;/h2&gt; &lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6443"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6444"&gt;&lt;/a&gt;Other operating systems—including  Multics—obviate the superuser flaw by compartmentalizing the many system  privileges that Unix bestows on the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; user.  Indeed, attempts to design a "secure" Unix (one that meets U.S. Government  definitions of highly trusted systems) have adopted this same strategy of  dividing superuser privileges into many different categories.&lt;/p&gt; &lt;p class="docText"&gt;Unfortunately, attempts at compartmentalization often fail. For  example, Digital's VAX/VMS operating system divided system privileges into many  different classifications. But many of these privileges could be used by a  persistent person to establish the others. For example, an attacker who achieves  "physical I/O access" can modify the operating system's database to grant  himself any other privilege that he desires. Thus, instead of a single  catastrophic failure in security, we have a cascading series of smaller failures  leading to the same end result. For compartmentalization to be successful, it  must be carefully thought out.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p class="docText"&gt;Some of the capabilities that a program can give up in the  Linux 2.4.19 kernel are shown in &lt;a class="docLink" href="#puis3-CHP-5-TABLE-2"&gt;Table 5-2&lt;/a&gt;. (This table also provides a nice  illustration of the power of the superuser!)&lt;/p&gt;&lt;a name="puis3-CHP-5-TABLE-2"&gt;&lt;/a&gt; &lt;p&gt; &lt;table border="1" cellpadding="1" cellspacing="0" width="100%"&gt; &lt;caption&gt; &lt;h5 class="docTableTitle"&gt;Table 5-2. Some capabilities in Linux  2.4.19&lt;/h5&gt;&lt;/caption&gt; &lt;colgroup span="2"&gt; &lt;/colgroup&gt;&lt;tbody&gt; &lt;tr&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;Capability&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;Description&lt;/p&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_CHOWN&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can change file owner and group&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_FOWNER&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can override file restrictions based on file owner  ID&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_FSETIDCAP_SETUIDCAP_SETGID&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can override requirements for setting SUID and SGID bits on  files&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_KILL&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can send signals to any process&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_LINUX_IMMUTABLE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can change the immutable or append-only attributes on  files&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_NET_BIND_SERVICE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can bind to TCP/UDP ports below 1024&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_NET_BROADCAST&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can transmit broadcasts&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_NET_ADMIN&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can configure interfaces, bind addresses, modify routing tables  and packet filters, and otherwise manage networking&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_NET_RAW&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can use raw and packet sockets&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_IPC_LOCK&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can lock shared memory&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_IPC_OWNER&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can override IPC ownership checks&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_MODULE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can load and remove kernel modules&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_CHROOT&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can use &lt;span class="docEmphasis"&gt;chroot( )&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_PTRACE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can &lt;span class="docEmphasis"&gt;ptrace( )&lt;/span&gt; any  process&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_PACCT&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can enable, disable, or configure process  accounting&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_ADMIN&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can configure disk quotas, configure kernel logging, set  hostnames, mount and unmount filesystems, enable and disable swap, tune disk  devices, access system bios, set up serial ports, and many other  things&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_BOOT&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can use &lt;span class="docEmphasis"&gt;reboot( )&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_NICE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can change process priorities and scheduling&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_RESOURCE&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can set or override limits on resources, quotas, reserved  filesystem space, and other things&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_TIME&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can manipulate system clock&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SYS_TTY_CONFIG&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can configure tty devices&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;CAP_SETPCAP&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;Can transfer or remove capabilities from any other  process&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p class="docText"&gt;Unfortunately, at the time this edition is being written, few  Linux systems are designed to take advantage of the kernel capabilities and few  system programs have been written to shed capabilities.&lt;a name="puis3-CHP-5-ITERM-6445"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-5-ITERM-6446"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6447"&gt;&lt;/a&gt;&lt;/p&gt;&lt;a href="0596003234_"&gt;&lt;img src="FILES/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-1885194911301985272?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/1885194911301985272/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=1885194911301985272' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1885194911301985272'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1885194911301985272'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/restrictions-on-superuser.html' title='Restrictions on the Superuser'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-921400537484185568</id><published>2008-06-02T05:27:00.000-07:00</published><updated>2008-06-02T05:28:37.594-07:00</updated><title type='text'>The su Command: Changing Who You Claim to Be</title><content type='html'>&lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6359"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6360"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6361"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6362"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6363"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;Sometimes,  one user must assume the identity of another. For example, you might sit down at  a friend's terminal and want access to one of your protected files. Rather than  forcing you to log your friend out and log yourself in, Unix gives you a way to  change your user ID temporarily: the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command,  which is short for "substitute user." The &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  command requires that you provide the password of the user to whom you are  changing.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;For example, to change yourself from &lt;span class="docEmphasis"&gt;tim&lt;/span&gt; to &lt;span class="docEmphasis"&gt;john&lt;/span&gt;, you might  type:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;% whoami&lt;br /&gt;tim&lt;br /&gt;% /bin/su john&lt;br /&gt;password: &lt;span class="docEmphStrike"&gt;fuzbaby&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;% whoami&lt;br /&gt;john&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;You can now access &lt;span class="docEmphasis"&gt;john&lt;/span&gt;'s files.  (And you will be unable to access &lt;span class="docEmphasis"&gt;tim&lt;/span&gt;'s files,  unless those files are specifically available to the user &lt;span class="docEmphasis"&gt;john&lt;/span&gt;.)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6364"&gt;&lt;/a&gt;The most common use of the  &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command is to invoke superuser access. For  example, if you are the system administrator and Rachel needs her password  reset, you could reset the password by becoming the superuser and then using the  &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; command:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;$ /bin/su&lt;br /&gt;Password: &lt;span class="docEmphStrike"&gt;rates34&lt;/span&gt;&lt;br /&gt;# passwd rachel&lt;br /&gt;Changing local password for rachel.&lt;br /&gt;New password:&lt;span class="docEmphStrike"&gt;mymy5544&lt;/span&gt;&lt;br /&gt;Retype new password:&lt;span class="docEmphStrike"&gt;mymy5544&lt;/span&gt;&lt;br /&gt;passwd: updating the database...&lt;br /&gt;passwd: done&lt;br /&gt;# exit&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;This will be discussed at length in &lt;a class="docLink" href="#puis3-CHP-5-SECT-3.2"&gt;Section 5.3.2&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.1 Real and Effective UIDs with the su  Command&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6365"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6366"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6367"&gt;&lt;/a&gt;Processes on  Unix systems always have at least two identities. Normally, these two identities  are the same. The first identity is the &lt;i&gt;real UID&lt;/i&gt;. The real UID is your  "real identity" and matches up (usually) with the username you logged in as.  Sometimes you may want to take on the identity of another user to access some  files or execute some commands. You might do this by logging in as that user,  thus obtaining a new command interpreter whose underlying process has a real UID  equal to that user.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Alternatively, if you only want to execute a few commands as  another user, you can use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command (as  described in the previous section) to create a new process. This will run a new  copy of your command interpreter (shell), and have the identity (real UID) of  that other user. To use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command, you must  either know the password for the other user's account or be currently running as  the superuser.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;There are times when a software author wants a single command  to execute with the rights and privileges of another user—most often, the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; user. In a case such as this, we certainly don't  want to disclose the password to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  account, nor do we want the user to have access to a command interpreter running  as &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. Unix addresses this problem through the  use of a special kind of file designation called &lt;i&gt;setuid&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6368"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-5-ITERM-6369"&gt;&lt;/a&gt;or SUID.  When a SUID file is run, the process involved takes on an effective UID that is  the same as the owner of the file, but the real UID remains the same. SUID files  are explained in &lt;a class="docLink" href="0596003234_puis3-chp-6.html#puis3-CHP-6"&gt;Chapter 6&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.1.1 Saved IDs&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Some versions of Unix have a third form of UID: the &lt;i&gt;saved  UID&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6370"&gt;&lt;/a&gt;. In these systems, a user may run a  setuid program that sets an effective UID of 0 and then sets some different real  UID as well. The saved UID is used by the system to allow the user to set her  identity back to the original value. Normally, this is not something the user  can see, but it can be important when you are writing or running SUID  programs.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.1.2 Other IDs&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Unix also has the analogous concepts of &lt;i&gt;effective GID&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6371"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-5-ITERM-6372"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6373"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6374"&gt;&lt;/a&gt;, &lt;i&gt;real  GID&lt;/i&gt;, and &lt;i&gt;setgid &lt;/i&gt;for groups&lt;i&gt;. &lt;/i&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Some versions of Unix also have concepts of &lt;i&gt;session  ID,&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6375"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6376"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6377"&gt;&lt;/a&gt; &lt;i&gt;process group ID&lt;/i&gt;, and &lt;i&gt;audit ID&lt;/i&gt;. A  session ID is associated with the processes connected to a terminal, and can be  thought of as indicating a "login session." A process group ID designates a  group of processes that are in the &lt;i&gt;foreground&lt;/i&gt; or &lt;i&gt;background &lt;/i&gt;on  systems that allow job control. An audit ID indicates a thread of activity that  should be treated as the same in the audit mechanism. You need to understand  session IDs and process group IDs if you are developing software that needs to  remain running after a user logs out, or if you are creating a system of  programs that need to communicate with each other by using signals. Audit IDs  are important if you are developing software that needs to analyze audit log  files.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.2 Becoming the Superuser&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6378"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6379"&gt;&lt;/a&gt;Typing &lt;span class="docEmphasis"&gt;su&lt;/span&gt; without  a username tells Unix that you wish to become the superuser. You will be  prompted for a password. Typing the correct &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  password causes a shell to be run with a UID of 0. When you become the  superuser, your prompt should change to the pound sign (#) to remind you of your  new powers. For example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;% /bin/su -&lt;br /&gt;password: &lt;span class="docEmphStrike"&gt;k697dgf&lt;/span&gt;&lt;br /&gt;# whoami&lt;br /&gt;root&lt;br /&gt;#&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Once you have become the superuser, you are free to perform  whatever system administration you wish.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;When using the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command to  become the superuser, you should always type the command's full pathname,  &lt;i&gt;/bin/su&lt;/i&gt;. By typing the full pathname, you are assuring the system that  you are actually running the real &lt;span class="docEmphasis"&gt;/bin/su&lt;/span&gt;  command, and not another command named &lt;span class="docEmphasis"&gt;su&lt;/span&gt; that  happens to be in your search path. This method is a very important way of  protecting yourself (and the superuser password) from capture by a Trojan horse.  Other techniques are described in &lt;a class="docLink" href="0596003234_puis3-chp-23.html#puis3-CHP-23"&gt;Chapter 23&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Notice the use of the dash in the earlier example. Most  versions of the &lt;span class="docEmphasis"&gt;su&lt;/span&gt;&lt;span class="docEmphasis"&gt;su&lt;/span&gt; to invoke its subshell with a dash, which causes the  shell to read all relevant startup files and simulate a login. Using the dash  option is important when becoming a superuser: the option guarantees that you  will be using the superuser's path, and not the path of the account from which  you &lt;span class="docEmphasis"&gt;su&lt;/span&gt;ed. command support an optional  argument of a single dash. When supplied, this causes &lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;To exit the subshell, type &lt;tt&gt;exit&lt;/tt&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6380"&gt;&lt;/a&gt;If you use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command to change to another user while you are the  superuser, you won't be prompted for the password of that user. (This makes  sense; as the superuser, you could easily change that user's password and then  log in as that user.) For example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;# /bin/su john&lt;br /&gt;% whoami&lt;br /&gt;john&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Using &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to become the superuser  is not a security hole. Any user who knows the superuser password could also log  in as the superuser; breaking in through &lt;span class="docEmphasis"&gt;su&lt;/span&gt; is no  easier. In fact, &lt;span class="docEmphasis"&gt;su&lt;/span&gt; enhances security: many Unix  systems can be set up so that every &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempt is  logged, with the date, time, and user who typed the command. Examining these log  files allows the system administrator to see who is exercising superuser  privileges—as well as who shouldn't be!&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.3 Use su with Caution&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6381"&gt;&lt;/a&gt;If you are the system  administrator, you should be careful about how you use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command. Remember that if you &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to the superuser account, you can do things by  accident that you would normally be protected from doing. You could also  accidentally give away access to the superuser account without knowing you did  so.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;As an example of the first case, consider the real instance of  someone we know who thought that he was in a temporary directory in his own  account and typed &lt;tt&gt;rm -rf *&lt;/tt&gt;. Unfortunately, he was actually in the  &lt;i&gt;/usr/lib&lt;/i&gt; directory, and he was operating as the superuser. He spent the  next few hours restoring tapes, checking permissions, and trying to soothe irate  users. The moral of this small vignette, and hundreds more we could relate with  similar consequences, is that you should not issue commands as the superuser  unless you need the extra privileges. Program construction, testing, and  personal "housecleaning" should all be done under your own user identity.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:100%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt; Another  good moral of this story is that you should always type &lt;tt&gt;rm -rf&lt;/tt&gt; with a  full pathname (e.g., &lt;tt&gt;rm -rf /usr/tmp/*&lt;/tt&gt;—especially when running the  command as the superuser!&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Another example is when you accidentally execute a &lt;a name="puis3-CHP-5-ITERM-6382"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6383"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6384"&gt;&lt;/a&gt;Trojan Horse program instead of the system  command you thought you executed. (See the sidebar &lt;a class="docLink" href="#puis3-CHP-5-SIDEBAR-2"&gt;Stealing Superuser&lt;/a&gt;, later in this chapter.) If  something like this happens to you as user &lt;span class="docEmphasis"&gt;root&lt;/span&gt;,  your entire system can be compromised. We discuss some defenses to this in &lt;a class="docLink" href="0596003234_puis3-chp-23.html#puis3-CHP-23"&gt;Chapter 23&lt;/a&gt;,  but one major suggestion is worth repeating: if you need access to someone  else's files, &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to that user ID and access them  as that user rather than as the superuser.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;For instance, if a user reports a problem with files in her  account, you could &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account and investigate, because you might not be  able to access her account or files from your own, regular account. However, a  better approach is to &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to the superuser  account, and then &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to the user's account—you  won't need her password for the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; after you are  &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. Not only does this method protect the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account, but you will also have some of the same  access permissions as the user you are helping, and that may help you find the  problem sooner.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-SIDEBAR-2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:100%;"&gt;Stealing Superuser&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6385"&gt;&lt;/a&gt;Once upon a time, many years  ago, one of us needed access to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account  on an academic machine. Although we had been authorized by management to have  &lt;span class="docEmphasis"&gt;root&lt;/span&gt;&lt;span class="docEmphasis"&gt;root&lt;/span&gt; account was dangerous (correct), that he had far  more knowledge of Unix than we did (unlikely), and that we didn't need the  access (incorrect). After several diplomatic and bureaucratic attempts to get  access normally, we took a slightly different approach, with management's wry  approval. access, the local system manager didn't want  to disclose the password. He asserted that access to the &lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;We noticed that this user had "." at the beginning of his shell  search path. This meant that every time he typed a command name, the shell would  first search the current directory for the command of the same name. When he did  a &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to &lt;span class="docEmphasis"&gt;root&lt;/span&gt;, this  search path was inherited by the new shell. This was all we really needed.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;First, we created an executable shell file named &lt;i&gt;ls&lt;/i&gt; in  the current directory:&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-size:100%;"&gt;#!/bin/sh&lt;br /&gt;cp /bin/sh ./stuff/junk/.superdude&lt;br /&gt;chmod 4555 ./stuff/junk/.superdude&lt;br /&gt;rm -f $0&lt;br /&gt;exec /bin/ls ${1+"$@"}&lt;/span&gt;&lt;/pre&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;Then, we executed the following commands:&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-size:100%;"&gt;% cd&lt;br /&gt;% chmod 700 .&lt;br /&gt;% touch ./-f&lt;/span&gt;&lt;/pre&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;The trap was ready. We approached the recalcitrant  administrator with the complaint, "I have a funny file in my directory I can't  seem to delete." Because the directory was mode 700, he couldn't list the  directory to see the contents. So, he used &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to  become user &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. Then he changed the directory  to our home directory and issued the command &lt;span class="docEmphasis"&gt;ls&lt;/span&gt;  to view the problem file. Instead of the system version of &lt;i&gt;ls&lt;/i&gt;, he ran our  version. This created a hidden &lt;span class="docEmphasis"&gt;setuid&lt;/span&gt; &lt;span class="docEmphasis"&gt;root&lt;/span&gt; copy of the shell, deleted the bogus &lt;span class="docEmphasis"&gt;ls&lt;/span&gt;&lt;span class="docEmphasis"&gt;ls&lt;/span&gt; command. The administrator never knew what  happened. command, and ran the real &lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;We listened politely as he explained (superciliously) that  files beginning with a dash character (-) needed to be deleted with a pathname  relative to the current directory (in our case, &lt;i&gt;rm ./-f&lt;/i&gt;); of course, we  knew that.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:100%;"&gt;A few minutes later, he couldn't get the new &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.4 Using su to Run Commands from Scripts&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6386"&gt;&lt;/a&gt;Another common use of the  &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command is to run a program under a specific  userID in a script that is being run automatically by &lt;span class="docEmphasis"&gt;root&lt;/span&gt;. For example, a startup script for a system that  runs three programs under three different user IDs might look like this:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;/bin/su usera -c /usr/local/system/scripta&lt;br /&gt;/bin/su userb -c /usr/local/system/scriptb&lt;br /&gt;/bin/su userc -c /usr/local/system/scriptc&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Early versions of the Unix &lt;span class="docEmphasis"&gt;cron&lt;/span&gt;  program ran all programs in the &lt;i&gt;crontab&lt;/i&gt; under the user &lt;span class="docEmphasis"&gt;root&lt;/span&gt;; to run a program under a different user, the  &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command was used:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;0 4 * * * /bin/su uucp -c /usr/lib/uucp/uuclean&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.5"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.5 Restricting su&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6387"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6388"&gt;&lt;/a&gt;On some versions of Berkeley-derived Unix, a  user cannot &lt;span class="docEmphasis"&gt;su&lt;/span&gt; to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account unless the user is a member of the Unix  group &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;—or any other group given the group ID  of 0. For this restriction to work, the &lt;i&gt;/etc/group&lt;/i&gt; entry for group &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;&lt;span class="docEmphasis"&gt;su&lt;/span&gt; to user &lt;span class="docEmphasis"&gt;root&lt;/span&gt; if he  has the password.&lt;/span&gt; must be non-empty; if the entry has no usernames  listed, the restriction is disabled, and anyone can &lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Some versions of &lt;span class="docEmphasis"&gt;su&lt;/span&gt; also allow  members of the &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt; group to become the &lt;a name="puis3-CHP-5-ITERM-6389"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6390"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6391"&gt;&lt;/a&gt;superuser by providing their own passwords  instead of the superuser password. The advantage of this feature is that you  don't need to tell the superuser's password to a user for him to have superuser  access—you simply have to put him into the &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;  group. You can take away his access simply by taking him out of the group.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Some versions of &lt;a name="puis3-CHP-5-ITERM-6392"&gt;&lt;/a&gt;System V  Unix require that users specifically be given permission to &lt;span class="docEmphasis"&gt;su&lt;/span&gt;. Different versions of Unix accomplish this in  different ways; consult your own system's documentation for details, and use the  mechanism if it is available.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Another way to restrict the &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  program is by making it executable only by a specific group and by placing in  that group only the people who you want to be able to run the command. For  information on how to do this, see &lt;a class="docLink" href="0596003234_puis3-chp-6-sect-3.html#puis3-CHP-6-SECT-3"&gt;Section 6.3&lt;/a&gt;. &lt;a name="puis3-CHP-5-ITERM-6393"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.6"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.6 The su Log&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6394"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6395"&gt;&lt;/a&gt;Most &lt;a name="puis3-CHP-5-ITERM-6396"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6397"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6398"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6399"&gt;&lt;/a&gt;versions of the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command log successful and failed attempts. Older  versions of Unix explicitly logged &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts to  the console and to a hardcoded file, such as the &lt;i&gt;/var/adm/messages&lt;/i&gt; file.  Newer versions log bad &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts through the  &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6400"&gt;&lt;/a&gt;  facility, allowing you to send the messages to a file of your choice or to log  facilities on remote computers across the network. The &lt;a name="puis3-CHP-5-ITERM-6401"&gt;&lt;/a&gt;FreeBSD version of &lt;span class="docEmphasis"&gt;su&lt;/span&gt; uses the &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt;  facility, but opens the facility with the LOG_CONS flag so that the bad &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts are logged both to the &lt;span class="docEmphasis"&gt;auth&lt;/span&gt; facility and to the console. You should be careful  who has access to the log of failed &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts,  as the log files can occasionally contain a variation of the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;If you notice many bad attempts, it may be an indication that  somebody using an account on your system is trying to gain unauthorized  privileges; this might be a legitimate user poking around, or it might be an  indication that the user's account has been appropriated by an outsider who is  trying to gain further access.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;A single bad attempt, of course, might simply be a mistyped  password, someone mistyping the &lt;span class="docEmphasis"&gt;du&lt;/span&gt; command, or  somebody wondering what the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command does.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:100%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt; Which of  course leads us to observe that people who try commands to see what they do  shouldn't be allowed to run commands like &lt;span class="docEmphasis"&gt;su&lt;/span&gt; once  they find out.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.6.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.6.1 The sulog under Solaris&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6402"&gt;&lt;/a&gt;You can quickly scan the  appropriate &lt;i&gt;su&lt;/i&gt; log file for bad passwords with the &lt;span class="docEmphasis"&gt;grep&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6403"&gt;&lt;/a&gt; command:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;% grep BAD /var/adm/messages&lt;br /&gt;BADSU 09/12 18:40 - pts/0 rachel-root&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Good &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts on a Solaris  system look like this:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;% grep + /var/adm/sulog&lt;br /&gt;SU 09/14 23:42 + pts/2 simsong-root&lt;br /&gt;SU 09/16 08:40 + pts/4 simsong-root&lt;br /&gt;SU 09/16 10:34 + pts/3 simsong-root&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;It would appear that Simson has been busy &lt;span class="docEmphasis"&gt;su&lt;/span&gt;ing to &lt;span class="docEmphasis"&gt;root&lt;/span&gt; on  September 14th and 16th.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.6.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.6.2 The sulog under Berkeley Unix&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6404"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6405"&gt;&lt;/a&gt;Here is a similar command executed on a FreeBSD  system:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;r2# grep 'su:' /var/log/messages&lt;br /&gt;Jun 14 19:22:25 &lt;auth.notice&gt; r2 su: simsong to root on /dev/ttyp1&lt;br /&gt;Jun 14 19:30:06 &lt;auth.warn&gt; r2 su: BAD SU simsong to root on /dev/ttyp1&lt;br /&gt;Jun 14 19:30:18 &lt;auth.warn&gt; r2 su: BAD SU simsong to root on /dev/ttyp1&lt;br /&gt;Jun 14 19:31:10 &lt;auth.warn&gt; r2 su: BAD SU simsong to root on /dev/ttyp2&lt;br /&gt;Jun 14 19:31:38 &lt;auth.notice&gt; r2 su: simsong to root on /dev/ttyp2&lt;br /&gt;r2#&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Note that the successful &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  attempts are logged with the &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt; level  &lt;tt&gt;&lt;auth.notice&gt;&lt;/tt&gt;, while the failed attempts are logged at the level  &lt;tt&gt;&lt;auth.warn&gt;&lt;/tt&gt;. For more information on &lt;span class="docEmphasis"&gt;syslog&lt;/span&gt; warning levels, see &lt;a class="docLink" href="0596003234_puis3-chp-20.html#puis3-CHP-20"&gt;Chapter 20&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.6.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.6.3 The sulog under Red Hat Linux&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6406"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6407"&gt;&lt;/a&gt;Red Hat uses the &lt;span class="docEmphasis"&gt;pam_unix&lt;/span&gt; module to log &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts to the &lt;i&gt;/var/log/messages&lt;/i&gt;&lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts look like this: file.  Successful &lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;# grep 'su.pam_unix' messages | grep -v failure&lt;br /&gt;Jun 11 04:05:59 l1 su(pam_unix)[19838]: session opened for user news by (uid=0)&lt;br /&gt;Jun 11 04:06:00 l1 su(pam_unix)[19838]: session closed for user news&lt;br /&gt;Jun 11 15:48:37 l1 su(pam_unix)[22433]: session opened for user root by&lt;br /&gt;simsong(uid=500)&lt;br /&gt;Jun 11 15:51:23 l1 su(pam_unix)[22433]: session closed for user root&lt;br /&gt;Jun 11 16:31:16 l1 su(pam_unix)[22695]: session opened for user root by&lt;br /&gt;simsong(uid=500)&lt;br /&gt;Jun 11 19:06:03 l1 su(pam_unix)[22695]: session closed for user root&lt;br /&gt;#&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Note that the &lt;span class="docEmphasis"&gt;pam_unix&lt;/span&gt; system  logs successful &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts by both users and  programs. The &lt;span class="docEmphasis"&gt;pam_unix&lt;/span&gt; system also logs when the  &lt;span class="docEmphasis"&gt;su&lt;/span&gt; session starts and ends. In the preceding  example, the first two lines represent the start and end of a Netnews cleanup  script that is run automatically at 4:00 a.m. every day by the operating system.  UID 0 (the superuser) successfully &lt;span class="docEmphasis"&gt;su&lt;/span&gt;s to the  &lt;span class="docEmphasis"&gt;news&lt;/span&gt; user, and then runs a script. The second and  third attempts represent interactive &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts  by the user &lt;span class="docEmphasis"&gt;simsong&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Failed &lt;span class="docEmphasis"&gt;su&lt;/span&gt; attempts are logged to  the same file, but with a different error message:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;# grep 'su.pam_unix' messages | grep failure&lt;br /&gt;Jun 15 14:40:55 l1 su(pam_unix)[10788]: authentication failure; logname=rachel&lt;br /&gt;uid=181 euid=0 tty= ruser= rhost=  user=root&lt;br /&gt;Jun 15 14:40:59 l1 su(pam_unix)[10789]: authentication failure; logname=rachel&lt;br /&gt;uid=181 euid=0 tty= ruser= rhost=  user=root&lt;br /&gt;#&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;These two examples indicate that user &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt; attempted to &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  to the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account, and failed.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.6.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.6.4 Final caution&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6408"&gt;&lt;/a&gt;The &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account is &lt;span class="docEmphasis"&gt;not&lt;/span&gt; an  account designed for the personal use of the system administrator. Because all  security checks are turned off for the &lt;a name="puis3-CHP-5-ITERM-6409"&gt;&lt;/a&gt;superuser, a typing error could easily trash the  entire system. Murphy's Law ensures that this happens more often than even  experienced users might wish, so use the &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  account with caution!&lt;/span&gt;&lt;/p&gt;&lt;span style="font-weight: bold;font-size:100%;" &gt;&lt;a name="puis3-CHP-5-SECT-3.7"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:100%;"&gt;5.3.7 sudo: A More Restrictive su&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6410"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6411"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6412"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6413"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6414"&gt;&lt;/a&gt;Mac OS X,  OpenBSD, and many Linux distributions are equipped with a program named &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt; that allows a person to exercise &lt;a name="puis3-CHP-5-ITERM-6415"&gt;&lt;/a&gt;superuser privileges on a single command. The  commands executed as superuser are logged with the name of the person who has  run the command, and the time that the command was executed. Security of logs  can be increased if they are stored on a second computer; &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt;&lt;span class="docEmphasis"&gt;sudo&lt;/span&gt; attempt fails. can also send email messages when it runs  successfully, or when a &lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;To be allowed to use the &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt;  command, the user must be listed in the file &lt;a name="puis3-CHP-5-ITERM-6416"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6417"&gt;&lt;/a&gt;&lt;i&gt;sudoers&lt;/i&gt;, which is usually found in  &lt;i&gt;/etc&lt;/i&gt; or &lt;i&gt;/usr/local/etc&lt;/i&gt;. The &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt;  command can be configured to allow users to use their own passwords or special  &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt; passwords.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;The &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt; command offers  accountability. For example, on a Mac OS X computer, you'll see:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;[G3:/var/log] simsong% sudo passwd rachel&lt;br /&gt;Password: &lt;span class="docEmphStrike"&gt;rates34&lt;/span&gt;&lt;br /&gt;Changing local password for rachel.&lt;br /&gt;New password:&lt;span class="docEmphStrike"&gt;mymy5544&lt;/span&gt;&lt;br /&gt;Retype new password:&lt;span class="docEmphStrike"&gt;mymy5544&lt;/span&gt;&lt;br /&gt;passwd: updating the database...&lt;br /&gt;passwd: done&lt;br /&gt;[G3:/var/log] simsong%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;This results in the following entry being saved in the system's  logfile:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;Jun 11 16:36:38 G3 sudo:  simsong : TTY=ttyp1 ; PWD=/Users/simsong ; USER=root ;&lt;br /&gt;COMMAND=/usr/bin/passwd&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;Another advantage of &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt; is  that the &lt;i&gt;/etc/sudoers&lt;/i&gt; file can specify not only who may use &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt;, but which commands they are permitted to run.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt;  For example, &lt;span class="docEmphasis"&gt;simsong&lt;/span&gt; may be allowed to run only  &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;, &lt;span class="docEmphasis"&gt;dump&lt;/span&gt;, or  &lt;span class="docEmphasis"&gt;mount&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:100%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt; In fact,  it can even specify on which machines the users may run the commands. This makes  it possible for a single &lt;i&gt;sudoers&lt;/i&gt; file to be distributed across many  machines.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;It's important to be careful about which commands you allow  users to run through &lt;span class="docEmphasis"&gt;sudo&lt;/span&gt;. Many commands, such as  editors, provide a way to escape to a shell. If a user can run an editor as  &lt;span class="docEmphasis"&gt;root&lt;/span&gt;, they can often escape to a &lt;span class="docEmphasis"&gt;root&lt;/span&gt; shell:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;[G3:/var/log] simsong% sudo ed /dev/null&lt;br /&gt;Password: &lt;span class="docEmphStrike"&gt;rates34&lt;/span&gt;&lt;br /&gt;0&lt;br /&gt;!sh&lt;br /&gt;[G3:/var/log] root#&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:100%;"&gt;At this point, the user has full access to the system and can  run any command without having it logged.&lt;a name="puis3-CHP-5-ITERM-6418"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6419"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6420"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6421"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6422"&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-921400537484185568?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/921400537484185568/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=921400537484185568' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/921400537484185568'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/921400537484185568'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/su-command-changing-who-you-claim-to-be.html' title='The su Command: Changing Who You Claim to Be'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-425655849069985317</id><published>2008-06-02T05:25:00.000-07:00</published><updated>2008-06-02T05:27:29.850-07:00</updated><title type='text'>The Superuser (root)</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6340"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Almost every Unix system  comes with a special user in the &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;/etc/passwd&lt;/i&gt;&lt;span style="font-weight: bold;"&gt; file with a UID of 0. This  user is known as the &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;superuser&lt;/i&gt;&lt;span style="font-weight: bold;"&gt; and is normally given the username &lt;/span&gt;&lt;span style="font-weight: bold;" class="docEmphasis"&gt;root&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;. The password for the &lt;/span&gt;&lt;span style="font-weight: bold;" class="docEmphasis"&gt;root&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; account is usually called simply the "&lt;/span&gt;&lt;span style="font-weight: bold;" class="docEmphasis"&gt;root&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; password."&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;span class="docEmphasis"&gt;root&lt;/span&gt; account is the identity  used by the operating system itself to accomplish its basic functions, such as  logging users in and out of the system, recording accounting information, and  managing input/output devices. For this reason, the superuser exerts nearly  complete control over the operating system: nearly all security restrictions are  bypassed for any program that is run by the &lt;span class="docEmphasis"&gt;root&lt;/span&gt;  user, and most of the checks and warnings are turned off.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-6"&gt;[6]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-6"&gt;[6]&lt;/a&gt;&lt;/sup&gt; On a few  systems, it's possible to restrict &lt;span class="docEmphasis"&gt;root&lt;/span&gt;'s  capabilities as part of the kernel boot process, so that even if the superuser  account is compromised, some kinds of damage are not possible unless the  attacker is physically at the console and has an additional password. Systems  that use &lt;a name="puis3-CHP-5-ITERM-6341"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6342"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6343"&gt;&lt;/a&gt;MAC often do  not have a superuser at all, so the discussion in this section does not apply to  such systems.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.2.1 What the Superuser Can Do&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6344"&gt;&lt;/a&gt;Any process that has an  &lt;i&gt;effective UID&lt;/i&gt; of 0 (see &lt;a class="docLink" href="0596003234_puis3-chp-5-sect-3.html#puis3-CHP-5-SECT-3.1"&gt;Section 5.3.1&lt;/a&gt;  later in this chapter) runs as the superuser—that is, any process with a UID of  0 runs without security checks and is allowed to do almost anything. Normal  security checks and constraints are ignored for the superuser, although most  systems do audit and log some of the superuser's actions.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some of the things that the superuser can do include:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6345"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6346"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6347"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6348"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6349"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6350"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6351"&gt;&lt;/a&gt;&lt;/span&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6345"&gt;&lt;/a&gt;Process  control&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Change the &lt;i&gt;nice&lt;/i&gt; value of any process (see &lt;a class="docLink" href="0596003234_puis3-app-b-sect-1.html#puis3-APP-B-SECT-1.3.3"&gt;Section  B.1.3.3&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Send any signal to any process (see &lt;a class="docLink" href="0596003234_puis3-app-b-sect-2.html#puis3-APP-B-SECT-2"&gt;Signals&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Alter "hard limits" for maximum CPU time as well as maximum  file, data segment, stack segment, and core file sizes (see &lt;a class="docLink" href="0596003234_puis3-chp-23.html#puis3-CHP-23"&gt;Chapter 23&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Turn accounting and auditing on and off (see &lt;a class="docLink" href="0596003234_puis3-chp-21.html#puis3-CHP-21"&gt;Chapter 21&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Bypass login restrictions prior to shutdown. (Note that this  may not be possible if you have configured your system so that the superuser  cannot log into terminals.)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Change his process UID to that of any other user on the  system.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Log out all users and prevent new logins.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6346"&gt;&lt;/a&gt;Device  control&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Access any working device.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Shut down or reboot the computer.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Set the date and time.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Read or modify any memory location.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Create new devices (anywhere in the filesystem) with the &lt;span class="docEmphasis"&gt;mknod&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6347"&gt;&lt;/a&gt;&lt;/span&gt;  command.&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6348"&gt;&lt;/a&gt;Network  control&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Run network services on "trusted" ports (see &lt;a class="docLink" href="0596003234_puis3-chp-17.html#puis3-CHP-17"&gt;Chapter 17&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Reconfigure the network.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Put the network interface into "promiscuous mode" and examine  all packets on the network (possible only with certain kinds of networks and  network interfaces).&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6349"&gt;&lt;/a&gt;Filesystem  control&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Read, modify, or delete any file or program on the system (see  &lt;a class="docLink" href="0596003234_puis3-chp-6.html#puis3-CHP-6"&gt;Chapter  6&lt;/a&gt;).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Run any program.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt; If a program  has a file mode of 000, &lt;span class="docEmphasis"&gt;root&lt;/span&gt; must set the execute  bit of the program with the &lt;span class="docEmphasis"&gt;chmod( )&lt;/span&gt; system call  before the program can be run, although shell scripts can be run by feeding  their input directly into &lt;span class="docEmphasis"&gt;/bin/sh&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Change a disk's electronic label.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt; Usually  stored on the first 16 blocks of a hard disk or floppy disk formatted with the  Unix filesystem.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Mount and unmount filesystems.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Add, remove, or change user accounts.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Enable or disable quotas and accounting.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Use the &lt;a name="puis3-CHP-5-ITERM-6350"&gt;&lt;/a&gt;&lt;span class="docEmphasis"&gt;chroot( )&lt;/span&gt; system call, which changes a process's view  of the filesystem root directory.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Write to the disk after it is "100 percent" full. The Berkeley  Fast Filesystem and the &lt;a name="puis3-CHP-5-ITERM-6351"&gt;&lt;/a&gt;Linux ext2 File  System both allow the reservation of some &lt;span class="docEmphasis"&gt;minfree&lt;/span&gt;  amount of the disk. Normally, a report that a disk is 100% full implies that  there is still 10% left. Although this space can be used by the superuser, it  shouldn't be: filesystems run faster when their disks are not completely  filled.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.2.2 What the Superuser Can't Do&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6352"&gt;&lt;/a&gt;Despite all of the powers  listed in the previous section, there are some things that the superuser can't  do, including:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Make a change to a filesystem that is mounted read-only.  (However, the superuser can make changes directly to the raw device, or can  unmount a read-only filesystem and remount it read/write, provided that the  media is not physically write-protected.)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Unmount a filesystem that contains open files, or one in which  some running process has set its current directory.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt; &lt;a name="puis3-CHP-5-ITERM-6353"&gt;&lt;/a&gt;Many BSD variants (including NetBSD and FreeBSD)  provide an &lt;span class="docEmphasis"&gt;-f&lt;/span&gt; option to &lt;span class="docEmphasis"&gt;umount&lt;/span&gt;, which forcibly unmounts a busy  filesystem.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Write directly to a directory, or create a hard link to a  directory (although these operations are allowed on some Unix systems).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Decrypt the passwords stored in the shadow password file,  although the superuser can modify the &lt;span class="docEmphasis"&gt;/bin/login&lt;/span&gt;  and &lt;span class="docEmphasis"&gt;su&lt;/span&gt; system programs to record passwords when  they are typed. The superuser can also use the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;&lt;/span&gt; command to change the password of any  account.&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Terminate a process that has entered a wait state inside the  kernel, although the superuser can shut down the computer, effectively killing  all processes.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-2.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.2.3 Any Username Can Be a Superuser&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6354"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6355"&gt;&lt;/a&gt;As we noted in &lt;span style="text-decoration: underline;"&gt;the next art.&lt;/span&gt;,  &lt;span class="docEmphasis"&gt;any&lt;/span&gt; account that has a UID of 0 has superuser  privileges. The username &lt;span class="docEmphasis"&gt;root&lt;/span&gt; is merely a  convention. Thus, in the following sample &lt;i&gt;/etc/passwd&lt;/i&gt; file, both &lt;span class="docEmphasis"&gt;root&lt;/span&gt; and &lt;span class="docEmphasis"&gt;beth&lt;/span&gt; can  execute commands without any security checks:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;root:x:0:1:Operator:/:/bin/ksh&lt;br /&gt;beth:x:0:101:Beth Cousineau:/u/beth:/bin/csh&lt;br /&gt;rachel:x:181:181:Rachel Cohen:/u/rachel:/bin/ksh&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;You should immediately be suspicious of accounts on your system  that have a UID of 0 that you did not install; accounts such as these are  frequently added by people who break into computers so that they will have a  simple way of obtaining superuser access in the future.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-2.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.2.4 The Problem with the Superuser&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6356"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6357"&gt;&lt;/a&gt;The superuser is the main security weakness in  the Unix operating system. Because the superuser can do anything, after a person  gains superuser privileges—for example, by learning the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password and logging in as &lt;span class="docEmphasis"&gt;root&lt;/span&gt;—that person can do virtually anything to the  system. This explains why most attackers who break into Unix systems try to  become the superuser.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Most Unix security holes that have been discovered are of the  kind that allow regular users to obtain superuser privileges. Thus, most Unix  security holes result in a catastrophic bypass of the operating system's  security mechanisms. After a flaw is discovered and exploited, the entire  computer is compromised.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;There are a number of techniques for minimizing the impact of  such system compromises, including:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Storing sensitive files on removable media, and mounting the  media only when you need to access the files. An attacker who gains superuser  privileges while the media are unmounted will not have access to critical  files.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Encrypting your files. Being the superuser grants privileges  only on the Unix system; it does not magically grant the mathematical prowess  necessary to decrypt a well-coded file or the necessary clairvoyance to divine  encryption keys. (Encryption is discussed in &lt;a class="docLink" href="0596003234_puis3-chp-7.html#puis3-CHP-7"&gt;C 7&lt;/a&gt;.) Best practice is  to encrypt with a passphrase other than your login password, which an attacker  might capture.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Mounting disks read-only when possible.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Taking advantage of filesystem features like immutable and  append-only files if your system supports them.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-425655849069985317?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/425655849069985317/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=425655849069985317' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/425655849069985317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/425655849069985317'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/superuser-root.html' title='The Superuser (root)'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-4897053765809557292</id><published>2008-06-02T05:23:00.000-07:00</published><updated>2008-06-02T05:24:52.949-07:00</updated><title type='text'>Users and Groups</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-5-ITERM-6275"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6276"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Although every Unix user has a username  consisting of one or more characters, inside the computer Unix represents the  identity of each user by a single number: the user identifier (UID). Under most  circumstances, each user is assigned his own unique ID.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix also uses special usernames for a variety of system  functions. As with usernames associated with human users, system usernames  usually have their own UIDs as well. Here are some common &lt;a name="puis3-CHP-5-ITERM-6277"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6278"&gt;&lt;/a&gt;"users" on  various versions of Unix:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6279"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6280"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6281"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6282"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6283"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6284"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6285"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6286"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6287"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6288"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6289"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6290"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6291"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6292"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6293"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6294"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6295"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6296"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6297"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6298"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6299"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6300"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6301"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6302"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6303"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6304"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6305"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-ITERM-6306"&gt;&lt;/a&gt;&lt;/span&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6279"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6280"&gt;&lt;/a&gt;root&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Superuser account. Performs accounting and low-level system  functions.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6281"&gt;&lt;/a&gt;bin&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Binary owner. Has ownership of system files on some systems but  doesn't typically execute programs.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6282"&gt;&lt;/a&gt;daemon&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Handles some aspects of the network. This username is also  associated with other utility systems, such as the print spoolers, on some  versions of Unix.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6283"&gt;&lt;/a&gt;mail&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Handles aspects of electronic mail. On many systems there is no  &lt;span class="docEmphasis"&gt;mail&lt;/span&gt; user, and &lt;span class="docEmphasis"&gt;daemon&lt;/span&gt; is used instead.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6284"&gt;&lt;/a&gt;guest&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used (infrequently) for site visitors to access the system.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6285"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6286"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6287"&gt;&lt;/a&gt;ftp&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used for anonymous FTP access.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6288"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6289"&gt;&lt;/a&gt;uucp&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Controls ownership of the Unix serial ports. (&lt;span class="docEmphasis"&gt;uucp&lt;/span&gt; traditionally managed the UUCP system, which is  now deprecated.)&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6290"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6291"&gt;&lt;/a&gt;news&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used for Usenet news.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;i&gt;lp&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6292"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6293"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used for the printer system.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt; &lt;span class="docEmphasis"&gt;lp&lt;/span&gt; stands for line printer, although these days most  people seem to be using laser printers.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6294"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6295"&gt;&lt;/a&gt;nobody&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Owns no files and is sometimes used as a default user for  unprivileged operations.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6296"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6297"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6298"&gt;&lt;/a&gt;www or  http&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Runs the web server.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6299"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6300"&gt;&lt;/a&gt;named&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Runs the BIND name server.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6301"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6302"&gt;&lt;/a&gt;sshd&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Performs unprivileged operations for the OpenSSH Secure Shell  daemon.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6303"&gt;&lt;/a&gt;operator&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used for creating backups and (sometimes) for printer  operation.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;span class="docEmphasis"&gt;games&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6304"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Allowed to access high-score files.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docPubcolor"&gt;&lt;a name="puis3-CHP-5-ITERM-6305"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6306"&gt;&lt;/a&gt;amanda&lt;/span&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Used for the Amanda remote backup system.&lt;/span&gt;&lt;/p&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.1.1 The /etc/passwd File&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6307"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6308"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6309"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6310"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6311"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6312"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6313"&gt;&lt;/a&gt;On most Unix  systems the user accounts are listed in the database file &lt;i&gt;/etc/passwd&lt;/i&gt;;  the corresponding passwords for these accounts are kept in a file named  &lt;i&gt;/etc/shadow&lt;/i&gt;, &lt;i&gt;/etc/security/passwd&lt;/i&gt;, or &lt;i&gt;/etc/master.passwd&lt;/i&gt;.  To improve lookup speed, some systems compile the password file into a compact  index file named something like &lt;i&gt;/etc/pwd.db&lt;/i&gt;, which is used instead.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here is an example of an &lt;i&gt;/etc/passwd&lt;/i&gt; file from a Linux  system containing a variety of system and ordinary users:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;$ more /etc/passwd&lt;br /&gt;root:x:0:0:Mr. Root:/root:/bin/bash&lt;br /&gt;bin:x:1:1:Binary Installation User:/bin:/sbin/nologin&lt;br /&gt;daemon:x:2:2:daemon:/sbin:/sbin/nologin&lt;br /&gt;adm:x:3:4:adm:/var/adm:/sbin/nologin&lt;br /&gt;lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin&lt;br /&gt;sync:x:5:0:sync:/sbin:/bin/sync&lt;br /&gt;shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown&lt;br /&gt;halt:x:7:0:halt:/sbin:/sbin/halt&lt;br /&gt;mail:x:8:12:mail:/var/spool/mail:/sbin/nologin&lt;br /&gt;news:x:9:13:news:/var/spool/news:&lt;br /&gt;uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin&lt;br /&gt;operator:x:11:0:operator:/root:/sbin/nologin&lt;br /&gt;games:x:12:100:games:/usr/games:/sbin/nologin&lt;br /&gt;gopher:x:13:30:gopher:/var/gopher:/sbin/nologin&lt;br /&gt;ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin&lt;br /&gt;nobody:x:99:99:Nobody:/:/sbin/nologin&lt;br /&gt;mailnull:x:47:47::/var/spool/mqueue:/dev/null&lt;br /&gt;rpm:x:37:37::/var/lib/rpm:/bin/bash&lt;br /&gt;xfs:x:43:43:X Font Server:/etc/X11/fs:/bin/false&lt;br /&gt;ntp:x:38:38::/etc/ntp:/sbin/nologin&lt;br /&gt;rpc:x:32:32:Portmapper RPC user:/:/bin/false&lt;br /&gt;gdm:x:42:42::/var/gdm:/sbin/nologin&lt;br /&gt;rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin&lt;br /&gt;nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin&lt;br /&gt;nscd:x:28:28:NSCD Daemon:/:/bin/false&lt;br /&gt;ident:x:98:98:pident user:/:/sbin/nologin&lt;br /&gt;rachel:x:181:181:Rachel Cohen:/u/rachel:/bin/ksh&lt;br /&gt;ralph:x:182:182:Ralph Knox:/u/ralph:/bin/tcsh&lt;br /&gt;mortimer:x:183:183:Mortimer Merkle:/u/mortimer:/bin/sh&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Notice that most of these accounts do not have "people names,"  and that all have a password field of "x". In the old days of Unix, the second  field was used to hold the user's encrypted password. This information is now  stored in a second file, the shadow password file.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;i&gt;/etc/passwd&lt;/i&gt; file can be thought of as a  directory&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-2"&gt;[2]&lt;/a&gt;&lt;/sup&gt; that lists all of the users on the  system. As we saw in the last chapter, it is possible to configure a Unix system  to use other directory services, such as NIS, NIS+, LDAP, and Kerberos. (We'll  discuss directory services in detail in &lt;a class="docLink" href="0596003234_puis3-chp-14.html#puis3-CHP-14"&gt;Chapter 14&lt;/a&gt;.) When these  systems are used, the Unix operating system is often modified so that the  utility programs still respond as if all of the accounts actually reside in a  single &lt;i&gt;/etc/passwd&lt;/i&gt; file.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-2"&gt;[2]&lt;/a&gt;&lt;/sup&gt; Technically,  it is a simple relational database.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.1.2 User Identifiers (UIDs)&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6314"&gt;&lt;/a&gt;UIDs are historically  unsigned 16-bit integers, which means they can range from 0 to 65535. UIDs  between 0 and 99 are typically used for system functions; UIDs for humans  usually begin at 100 or 1000. Many versions of Unix now support 32-bit UIDs. A  few older versions of Unix have UIDs that are signed 16-bit integers, ranging  from -32768 to 32767.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6315"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6316"&gt;&lt;/a&gt;There is one special UID, which is UID 0. This  is the UID that is reserved for the Unix superuser. The Unix kernel disables  most security checks when a process is being run by a user with the UID of  0.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-NOTE-274"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;There is generally nothing special about any Unix account name.  All Unix privileges are determined by the UID (and sometimes the group ID, or  GID), and not directly by the account name. Thus, an account with name &lt;span class="docEmphasis"&gt;root&lt;/span&gt; and UID 1005 would have no special privileges, but  an account named &lt;span class="docEmphasis"&gt;mortimer&lt;/span&gt; with UID 0 would be a  superuser.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;In general, you should avoid creating users with a UID of 0  other than &lt;span class="docEmphasis"&gt;root&lt;/span&gt;, and you should avoid using the  name &lt;span class="docEmphasis"&gt;root&lt;/span&gt; for a regular user account. In this  book, we will use the terms "root" and "superuser" interchangeably to mean a UID  of 0.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix keeps the mapping between usernames and UIDs in the file  &lt;i&gt;/etc/passwd&lt;/i&gt;. Each user's UID is stored in the field after the one  containing the user's encrypted password. For example, consider the sample  &lt;i&gt;/etc/passwd&lt;/i&gt; entry presented in &lt;a class="docLink" href="0596003234_puis3-chp-4.html#puis3-CHP-4"&gt;Chapter 4&lt;/a&gt;:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;rachel:x:181:181:Rachel Cohen:/u/rachel:/bin/ksh&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In this example, Rachel's username is &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt; and her UID is 181.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The UID is the actual information that the operating system  uses to identify the user; usernames are provided merely as a convenience for  humans. If two users are assigned the same UID, Unix views them as the same  user, even if they have different usernames and passwords. Two users with the  same UID can freely read and delete each other's files and can kill each other's  running programs. Giving two users the same UID is almost always a bad idea; it  is better to create multiple users and put them in the same group, as we will  see later.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Conversely, files can be owned by a UID that is not listed in  &lt;i&gt;/etc/passwd&lt;/i&gt; as having an associated username. This is also a bad idea. If  a user is added to &lt;i&gt;/etc/passwd&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6317"&gt;&lt;/a&gt;&lt;/span&gt; in the future with that UID, that user  will suddenly become the owner of the files.&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-1.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;5.1.3 Groups and Group Identifiers (GIDs)&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6318"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6319"&gt;&lt;/a&gt;Every Unix user belongs to one or more  &lt;i&gt;groups&lt;/i&gt;. As with user accounts, groups have both a group name and a group  identification number (GID). GID values are also historically 16-bit integers,  but many systems now use 32-bit integers for these, too.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;As the name implies, Unix groups are used to group users  together. As with usernames, group names and numbers are assigned by the system  administrator when each user's account is created. Groups can be used by the  system administrator to designate sets of users who are allowed to read, write,  and/or execute specific files, directories, or devices.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Each user belongs to a &lt;i&gt;primary group&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6320"&gt;&lt;/a&gt; that is stored in the &lt;i&gt;/etc/passwd&lt;/i&gt; file.  The GID of the user's primary group follows the user's UID. Historically, every  Unix user was placed in the group &lt;span class="docEmphasis"&gt;users&lt;/span&gt;, which  had a GID of 100. These days, however, most Unix sites place each account in its  own group. This results in decreased sharing but somewhat greater security.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-3"&gt;[3]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-3"&gt;[3]&lt;/a&gt;&lt;/sup&gt; The  advantage of assigning each user his own group is that it allows users to have a  unified umask of 007 in all instances. When users wish to restrict access of a  file or directory to themselves, they leave the group set to their individual  group. When they wish to open the file or directory to members of their  workgroup or project, all they need to do is to change the file's or directory's  group accordingly.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Consider, again, our &lt;i&gt;/etc/passwd&lt;/i&gt; example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;rachel:x:181:181:Rachel Cohen:/u/rachel:/bin/ksh&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In this example, Rachel's primary GID is 181.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Groups provide a handy mechanism for treating a number of users  in a certain way. For example, you might want to set up a group for a team of  students working on a project so that students in the group, but nobody else,  can read and modify the team's files.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Groups can also be used to restrict access to sensitive  information or specially licensed applications to a particular set of users: for  example, many Unix computers are set up so that only users who belong to the  &lt;span class="docEmphasis"&gt;kmem&lt;/span&gt; group can examine the operating system's  kernel memory. The &lt;span class="docEmphasis"&gt;operator&lt;/span&gt; group is commonly  used to allow only specific users to run the tape backup system, which may have  "read" access to the system's raw disk devices. And a &lt;span class="docEmphasis"&gt;sources&lt;/span&gt; group might be limited to people who have  signed nondisclosure forms so they can view the source code for particular  software.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some special versions of Unix support &lt;a name="puis3-CHP-5-ITERM-6321"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6322"&gt;&lt;/a&gt;mandatory  access controls (MAC), which have controls based on data labeling instead of, or  in addition to, the traditional &lt;a name="puis3-CHP-5-ITERM-6323"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6324"&gt;&lt;/a&gt;Unix discretionary access controls (DAC).  MAC-based systems do not use traditional Unix groups. Instead, the GID values  and the &lt;i&gt;/etc/group&lt;/i&gt; file may be used to specify security access control  labeling or to point to capability lists. If you are using one of these systems,  you should consult the vendor documentation to ascertain what the actual format  and use of these values might  be.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-SECT-1.3.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;5.1.3.1 The /etc/group file&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;i&gt;/etc/group&lt;/i&gt;&lt;a name="puis3-CHP-5-ITERM-6325"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6326"&gt;&lt;/a&gt; file contains the database that lists every  group on your computer and its corresponding GID. Its format is similar to the  format used by the &lt;i&gt;/etc/passwd&lt;/i&gt; file.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-4"&gt;[4]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-4"&gt;[4]&lt;/a&gt;&lt;/sup&gt; As with the  password file, if your site is running NIS, NIS+, or DCE, the &lt;i&gt;/etc/group&lt;/i&gt;  file may be incomplete or missing. See the discussion in &lt;a class="docLink" href="0596003234_puis3-chp-4-sect-3.html#puis3-CHP-4-SECT-3.1"&gt;Section 4.3.1&lt;/a&gt;  in &lt;a class="docLink" href="0596003234_puis3-chp-4.html#puis3-CHP-4"&gt;Chapter  4&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here is a sample &lt;i&gt;/etc/group&lt;/i&gt; file that defines six  groups: &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;, &lt;span class="docEmphasis"&gt;http&lt;/span&gt;, &lt;span class="docEmphasis"&gt;vision&lt;/span&gt;, &lt;span class="docEmphasis"&gt;startrek&lt;/span&gt;, &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt;, and  &lt;span class="docEmphasis"&gt;users&lt;/span&gt;:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;wheel:*:0:root,rachel&lt;br /&gt;http:*:10:http&lt;br /&gt;users:*:100:&lt;br /&gt;vision:*:101:keith,arlin,janice&lt;br /&gt;startrek:*:102:janice,karen,arlin&lt;br /&gt;rachel:*:181:&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The first line of this file defines the &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6327"&gt;&lt;/a&gt; group. The  fields are explained in &lt;a class="docLink" href="#puis3-CHP-5-TABLE-1"&gt;Table  5-1&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-5-TABLE-1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table border="1" cellpadding="1" cellspacing="0" width="100%"&gt; &lt;caption&gt; &lt;h5 class="docTableTitle"&gt;&lt;span style="font-size:85%;"&gt;Table 5-1. The first line of the example /etc/group  file&lt;/span&gt;&lt;/h5&gt;&lt;/caption&gt; &lt;colgroup span="2"&gt; &lt;/colgroup&gt;&lt;tbody&gt; &lt;tr&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Field contents&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Description&lt;/span&gt;&lt;/p&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;wheel&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Group name&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;*&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Group's "password" (described later)&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;0&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Group's GID&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;root&lt;/tt&gt;, &lt;tt&gt;rachel&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;List of the users who are in the  group&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Most versions of Unix use the &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt; group as the list of all of the computer's &lt;a name="puis3-CHP-5-ITERM-6328"&gt;&lt;/a&gt;system administrators (in this case, &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt; and the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; user  are the only members). On some systems, the group has a GID of 0; on other  systems, the group has a GID of 10. Unlike a UID of 0, a GID of 0 is usually not  significant. However, the name &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt; is very  significant: on many systems the use of the &lt;span class="docEmphasis"&gt;su&lt;/span&gt;  command to invoke &lt;a name="puis3-CHP-5-ITERM-6329"&gt;&lt;/a&gt;superuser privileges is  restricted to users who are members of a group named &lt;span class="docEmphasis"&gt;wheel&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The second line of this file defines the &lt;a name="puis3-CHP-5-ITERM-6330"&gt;&lt;/a&gt;&lt;span class="docEmphasis"&gt;http&lt;/span&gt; group. There  is one member in the &lt;span class="docEmphasis"&gt;http&lt;/span&gt;&lt;span class="docEmphasis"&gt;http&lt;/span&gt; user.&lt;/span&gt; group—the &lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The third line defines the &lt;span class="docEmphasis"&gt;users&lt;/span&gt;  group. The &lt;span class="docEmphasis"&gt;users&lt;/span&gt; group does not explicitly list  any users; on some systems, each user is placed into this group by default  through his individual entry in the &lt;i&gt;/etc/passwd&lt;/i&gt; file.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The fourth and fifth lines define two groups of users. The  &lt;span class="docEmphasis"&gt;vision&lt;/span&gt; group includes the users &lt;span class="docEmphasis"&gt;keith&lt;/span&gt;, &lt;span class="docEmphasis"&gt;arlin&lt;/span&gt;, and &lt;span class="docEmphasis"&gt;janice&lt;/span&gt;. The &lt;span class="docEmphasis"&gt;startrek&lt;/span&gt;  group contains the users &lt;span class="docEmphasis"&gt;janice&lt;/span&gt;, &lt;span class="docEmphasis"&gt;karen&lt;/span&gt;, and &lt;span class="docEmphasis"&gt;arlin&lt;/span&gt;. Notice  that the order in which the usernames are listed on each line is not important.  (This group is depicted graphically in &lt;a class="docLink" href="#puis3-CHP-5-FIG-1"&gt;Figure 5-1&lt;/a&gt;.)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Finally, the sixth line defines a group for the user &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Remember that the users mentioned in the &lt;i&gt;/etc/group&lt;/i&gt; file  are in these groups &lt;span class="docEmphasis"&gt;in addition to&lt;/span&gt; the groups  mentioned as their primary groups in the file &lt;i&gt;/etc/passwd&lt;/i&gt;. For example,  Rachel is in the &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt; group even though she  does not appear in that group in the file &lt;i&gt;/etc/group&lt;/i&gt; because her primary  group number is 181. On most versions of Unix, you can use the &lt;span class="docEmphasis"&gt;groups&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6331"&gt;&lt;/a&gt; command to  list which groups that you are currently in:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% groups&lt;br /&gt;rachel wheel&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;span class="docEmphasis"&gt;groups&lt;/span&gt; command can also take  a username as an argument:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% groups arlin&lt;br /&gt;vision, startrek&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;When a user logs into the Unix system, the &lt;span class="docEmphasis"&gt;/bin/login&lt;/span&gt; program scans the&lt;i&gt; /etc/passwd&lt;/i&gt; and  &lt;i&gt;/etc/group&lt;/i&gt; files, determines which groups the user is a member of, and  adds them to the user's user structure using the &lt;span class="docEmphasis"&gt;setgroups( )&lt;/span&gt; system call.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FNOTE-5"&gt;[5]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-5-FNOTE-5"&gt;[5]&lt;/a&gt;&lt;/sup&gt; If you are  on a system that uses NIS, NIS+, or some other system for managing user accounts  throughout a network, these network databases will be referenced as well. For  more information, see &lt;a class="docLink" href="0596003234_puis3-chp-19.html#puis3-CHP-19"&gt;Chapter  19&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some versions of Unix are equipped with an &lt;span class="docEmphasis"&gt;id&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6332"&gt;&lt;/a&gt; command that  offers more detailed UIDs, GIDs, and group lists:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% id&lt;br /&gt;uid=181(rachel) gid=181(rachel) groups=181(rachel), 0(wheel)&lt;br /&gt;% id root&lt;br /&gt;uid=0(root) gid=0(wheel) groups=0(wheel),1(bin),15(shadow),65534(nogroup)&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a class="docLink" href="#puis3-CHP-5-FIG-1"&gt;Figure 5-1&lt;/a&gt;  illustrates how users can be included in multiple groups.&lt;/span&gt;&lt;/p&gt; &lt;center style="font-weight: bold;"&gt; &lt;h5 class="docFigureTitle"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-FIG-1"&gt;&lt;/a&gt;Figure 5-1. Users and  groups&lt;/span&gt;&lt;/h5&gt;&lt;span style="font-size:85%;"&gt;&lt;img alt="figs/puis3_0501.gif" src="FILES/puis3_0501.gif" border="0" height="327" width="423" /&gt;&lt;/span&gt;&lt;/center&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-SIDEBAR-1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;Group Passwords&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;span class="docEmphasis"&gt;newgrp&lt;/span&gt;&lt;a name="puis3-CHP-5-ITERM-6333"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6334"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6335"&gt;&lt;/a&gt; command is used to change the user's active  group. This is useful when a user wants to create files owned by a group other  than his default group.&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;$ id&lt;br /&gt;uid=1001(alansz) gid=20(users)&lt;br /&gt;$ newgrp project&lt;br /&gt;$ id&lt;br /&gt;uid=1001(alansz) gid=100(project)&lt;/span&gt;&lt;/pre&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-5-ITERM-6336"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6337"&gt;&lt;/a&gt;Solaris and other versions of Unix derived from  AT&amp;amp;T SVR4 allow users to use &lt;span class="docEmphasis"&gt;newgrp&lt;/span&gt; to switch  to a group that they are not a member of if the group is equipped with a group  password:&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;$ newgrp fiction&lt;br /&gt;password: &lt;span class="docEmphStrike"&gt;rates34&lt;/span&gt;&lt;br /&gt;$&lt;/span&gt;&lt;/pre&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;The user is now free to exercise all of the rights and  privileges of the &lt;span class="docEmphasis"&gt;fiction&lt;/span&gt; group instead of his  default group.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;The password in the &lt;i&gt;/etc/group&lt;/i&gt; file is interpreted  exactly like the passwords in the &lt;i&gt;/etc/passwd&lt;/i&gt; file, including salts  (described in &lt;a class="docLink" href="0596003234_puis3-chp-4.html#puis3-CHP-4"&gt;Chapter 4&lt;/a&gt; and &lt;a class="docLink" href="0596003234_puis3-chp-19.html#puis3-CHP-19"&gt;Chapter 19&lt;/a&gt;).  However, most systems do not have a program to install or change the passwords  in this file. To set a group password, you must first assign it to a user with  the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; command, then use a text editor to  copy the encrypted password out of the &lt;i&gt;/etc/passwd&lt;/i&gt; file into the  &lt;i&gt;/etc/group&lt;/i&gt; file. Alternatively, you can encode the password using the  &lt;span class="docEmphasis"&gt;/usr/lib/makekey&lt;/span&gt; program (if present) and edit  the result into the &lt;i&gt;/etc/group&lt;/i&gt; file in the appropriate place.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Group passwords are rarely used and can represent a security  vulnerability, as an attacker can put a password on a critical group as a way of  creating a back door for future access.&lt;a name="puis3-CHP-5-ITERM-6338"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-5-ITERM-6339"&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;It is not necessary for there to be an entry in the  &lt;i&gt;/etc/group&lt;/i&gt; file for a group to exist! As with UIDs and account names,  Unix actually uses only the integer part of the GID for all settings and  permissions. The name in the &lt;i&gt;/etc/group&lt;/i&gt; file is simply a convenience for  the users—a means of associating a mnemonic with the GID value.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-4897053765809557292?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/4897053765809557292/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=4897053765809557292' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4897053765809557292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4897053765809557292'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/users-and-groups.html' title='Users and Groups'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-4784207888264989496</id><published>2008-06-02T05:22:00.002-07:00</published><updated>2008-06-02T05:23:37.951-07:00</updated><title type='text'>Pluggable Authentication Modules (PAM)</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-4-ITERM-6258"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6259"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6260"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Because there  are so many ways to authenticate users, it's convenient to have a unified  approach to authentication that can handle multiple authentication systems for  different needs. The Pluggable Authentication Modules (PAM) system is one such  approach.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;PAM was originally developed by Sun, and implementations are  available for &lt;a name="puis3-CHP-4-ITERM-6261"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6262"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6263"&gt;&lt;/a&gt;Solaris,  FreeBSD, and especially Linux, where most PAM development is now centered. PAM  provides a library and API that any application can use to authenticate users  against a myriad of authentication systems. Each authentication system that PAM  knows about is implemented as a PAM module, which in turn is implemented as a  dynamically-loaded shared library. PAM modules are available to authenticate  users through:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;/etc/passwd&lt;/i&gt; or &lt;i&gt;/etc/shadow&lt;/i&gt;&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;NIS or NIS+&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;LDAP&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Kerberos 4 or 5&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;An arbitrary Berkeley DB file&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-20"&gt;[20]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-20"&gt;[20]&lt;/a&gt;&lt;/sup&gt; If that's  not enough layers for you, some applications, such as SMTP authentication in  &lt;span class="docEmphasis"&gt;sendmail&lt;/span&gt; or access to mailboxes managed by the  Cyrus &lt;span class="docEmphasis"&gt;imapd&lt;/span&gt; server, use the Cyrus &lt;a name="puis3-CHP-4-ITERM-6264"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6265"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6266"&gt;&lt;/a&gt;SASL (Simple Authentication and Security Layer)  authentication library, which can authenticate users with a separate database or  through PAM! It is not inconceivable that you might find SASL using PAM using  LDAP to authenticate a user's IMAP connection.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Each PAM-aware service is configured either in the &lt;a name="puis3-CHP-4-ITERM-6267"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6268"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6269"&gt;&lt;/a&gt;&lt;i&gt;/etc/pam.conf&lt;/i&gt; file or, more commonly, in  its own file in the &lt;i&gt;/etc/pam.d&lt;/i&gt; directory. For example, the PAM  configuration file for the &lt;span class="docEmphasis"&gt;/bin/su&lt;/span&gt; command in  Linux distributions is &lt;i&gt;/etc/pam.d/su&lt;/i&gt;. A service named &lt;span class="docEmphasis"&gt;other&lt;/span&gt; is used to provide defaults for PAM-aware  services that are not explicitly configured.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here is an excerpt from &lt;i&gt;/etc/pam.conf&lt;/i&gt; for the OpenSSH  server:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;sshd  auth     required    /lib/security/pam_env.so&lt;br /&gt;sshd  auth     sufficient  /lib/security/pam_unix.so likeauth nullok&lt;br /&gt;sshd  auth     required    /lib/security/pam_deny.so&lt;br /&gt;sshd  account  required    /lib/security/pam_unix.so&lt;br /&gt;&lt;br /&gt;sshd password required   /lib/security/pam_cracklib.so retry=3&lt;br /&gt;sshd password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow&lt;br /&gt;sshd password required   /lib/security/pam_deny.so&lt;br /&gt;&lt;br /&gt;sshd  session  required  /lib/security/pam_limits.so&lt;br /&gt;sshd  session  required  /lib/security/pam_unix.so&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here's how the same excerpt looks in  &lt;i&gt;/etc/pam.d/sshd&lt;/i&gt;:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;auth     required   /lib/security/pam_env.so&lt;br /&gt;auth     sufficient /lib/security/pam_unix.so&lt;br /&gt;auth     required   /lib/security/pam_deny.so&lt;br /&gt;&lt;br /&gt;account  required  /lib/security/pam_unix.so&lt;br /&gt;&lt;br /&gt;password required  /lib/security/pam_cracklib.so retry=3&lt;br /&gt;password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow&lt;br /&gt;password required   /lib/security/pam_deny.so&lt;br /&gt;&lt;br /&gt;session  required   /lib/security/pam_limits.so&lt;br /&gt;session  required   /lib/security/pam_unix.so&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;tt&gt;auth&lt;/tt&gt; lines describe the authentication process for  this service, which proceeds in the order specified. Modules marked  &lt;tt&gt;required&lt;/tt&gt; must run successfully for authentication to progress—if they  fail, the user is considered unauthenticated and generally will be denied  access. Multiple required modules can be specified; in these cases, all of the  modules must run successfully. Modules marked &lt;tt&gt;sufficient&lt;/tt&gt;, if run  successfully, are sufficient to authenticate the user and end the authentication  process.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Note the modules in this example:&lt;/span&gt;&lt;/p&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;pam_env&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The first module run, &lt;span class="docEmphasis"&gt;pam_env&lt;/span&gt;,  optionally sets or clears environment variables specified in  &lt;i&gt;/etc/security/pam_env.conf&lt;/i&gt;. This module is required—it must run  successfully for authentication to proceed.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;pam_unix&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The next module run, &lt;span class="docEmphasis"&gt;pam_unix&lt;/span&gt;,  performs authentication with the usual Unix password files, &lt;i&gt;/etc/passwd&lt;/i&gt;  and &lt;i&gt;/etc/shadow&lt;/i&gt;. If this succeeds, it is sufficient to authenticate the  user, and the process is complete.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;pam_deny&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The final authentication module, &lt;span class="docEmphasis"&gt;pam_deny&lt;/span&gt;, simply fails, ending the process with  authentication unsuccessful.&lt;/span&gt;&lt;/p&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;This particular configuration file will also enforce any  account aging or expiration rules of the system, and set resources limits on the  user's &lt;i&gt;sshd&lt;/i&gt; session. If &lt;i&gt;sshd&lt;/i&gt; provided a password-changing  function, this configuration file would also prevent the user from changing his  password to an easily guessable one, and store passwords in &lt;i&gt;/etc/shadow&lt;/i&gt;  encrypted by the MD5 cryptographic hash function.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The PAM subsystem can be configured in a number of different  ways. For instance, it is possible to require two or three separate passwords  for some accounts&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-21"&gt;[21]&lt;/a&gt;&lt;/sup&gt; to combine a biometric method along  with a passphrase, or to pick a different mechanism depending on the time of  day. It is also possible to remove the requirement of a password for hardwired  lines in highly secured physical locations. PAM allows the administrator to pick  a policy that best matches the risk and technology at hand.&lt;a name="puis3-CHP-4-ITERM-6270"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6271"&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-21"&gt;[21]&lt;/a&gt;&lt;/sup&gt; This is  highly annoying and of questionable value when the same user holds all of the  passwords. This approach can be valuable when the passwords are assigned to  different users, so that any login requires two or more people and creates a  "witness" trail.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;PAM can do a lot more than authentication, as these examples  suggest. One of its strengths is that it clearly delineates four phases of the  access process.&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Verifying that the account is viable for the desired service at  the desired time and from the desired location (the account phase)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Authenticating the user (the auth phase)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Updating passwords and other authentication tokens when  necessary (the password phase)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Setting up and closing down the user's session (the session  phase), which can include limiting resource access and establishing audit  trails&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-4784207888264989496?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/4784207888264989496/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=4784207888264989496' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4784207888264989496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/4784207888264989496'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/pluggable-authentication-modules-pam.html' title='Pluggable Authentication Modules (PAM)'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-5078662383002385182</id><published>2008-06-02T05:22:00.001-07:00</published><updated>2008-06-02T05:22:37.568-07:00</updated><title type='text'>Network Account and Authorization Systems</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;These days, many organizations have moved away from large  time-sharing computers and invested in large client/server networks containing  many servers and dozens or hundreds of workstations. These systems are usually  set up so that any user can make use of any workstation in a group or in the  entire organization. When these systems are in use, every user effectively has  an account on every workstation. These systems provide for automatic account  creation and password synchronization between some or many computer systems.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;When you are working with a large, distributed system, it is  not practical to ensure that every computer has the same &lt;a name="puis3-CHP-4-ITERM-6217"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6218"&gt;&lt;/a&gt;&lt;i&gt;/etc/passwd&lt;/i&gt; file. For this reason, there  are now several different commercial systems available that make the information  traditionally stored in the &lt;i&gt;/etc/passwd&lt;/i&gt; file available over a  network.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.1 Using Network Authorization Systems&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6219"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6220"&gt;&lt;/a&gt;Five network authorization systems in use today  are:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Sun Microsystems' &lt;a name="puis3-CHP-4-ITERM-6221"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6222"&gt;&lt;/a&gt;Network Information System (NIS) and NIS+.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6223"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6224"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6225"&gt;&lt;/a&gt;MIT Kerberos,  which is now part of the OSF Distributed Computing Environment (DCE) and  Microsoft's Windows XP. Kerberos clients are also included with &lt;a name="puis3-CHP-4-ITERM-6226"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6227"&gt;&lt;/a&gt;Solaris,  Linux, and several other Unix versions.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6228"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6229"&gt;&lt;/a&gt;NetInfo, originally developed by NeXT Computer,  now part of Mac OS X.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6230"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6231"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6232"&gt;&lt;/a&gt;RADIUS, the  Remote Authentication Dial-In User Service. Traditionally, RADIUS has been used  by many ISPs to provide for authentication of dialup users. It has been extended  to provide authentication for other devices (e.g., routers) and for password  synchronization in a Unix environment.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Authentication systems that store account information in a &lt;a name="puis3-CHP-4-ITERM-6233"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6234"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6235"&gt;&lt;/a&gt;Lightweight Directory Access Protocol (LDAP)  server.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;These systems all take the information that is usually stored  in each workstation's &lt;i&gt;/etc/passwd&lt;/i&gt; file and store it in one or more  network servers. Some systems use the network-based account to supersede the  accounts on the local system; others augment the local accounts with  network-based accounts.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some of these systems provide for multiple servers or backup  caching, should the primary server be unavailable. Others do not, and instead  create a single point of failure for the entire network.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;At some sites, administrators prefer not to use network  database management systems. Instead, each computer might have its own accounts.  Alternatively, one computer might be regarded as the "master computer," and that  computer's &lt;i&gt;/etc/passwd&lt;/i&gt; and &lt;i&gt;/etc/shadow&lt;/i&gt; files are then distributed  to other computers using &lt;span class="docEmphasis"&gt;scp&lt;/span&gt;, &lt;span class="docEmphasis"&gt;rdist&lt;/span&gt;, or a similar system. There are several reasons  that an administrator might make such a decision.&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Managing a network-based authentication system is often  considerably more complex than managing accounts on a single system.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Unless redundant servers are provided, a crashed authentication  server or failed network segment can negatively impact a disproportionately  large number of users.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The administrator might be fearful that the central  authentication server could be compromised, which would allow an attacker to  create an account on any computer that the attacker wished.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The drawback to this approach is that it often requires the  administrator to intervene to change a user password or shell entry. In most  cases, the energy spent developing and fielding custom solutions would be better  spent mastering systems that are already in existence and, in many cases,  preinstalled on most Unix systems.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Because there are so many different ways to access the  information that has traditionally been stored in the &lt;i&gt;/etc/passwd&lt;/i&gt; file,  throughout this book we will simply use the phrase "password file" or  "&lt;i&gt;/etc/passwd&lt;/i&gt; " as a shorthand for the multitude of different  systems.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2 Viewing Accounts in the Network Database&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6236"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6237"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6238"&gt;&lt;/a&gt;If you are  using one of these systems and wish to retrieve the contents of the password  database, you cannot simply &lt;span class="docEmphasis"&gt;cat&lt;/span&gt; the  &lt;i&gt;/etc/passwd&lt;/i&gt; file. Instead, you must use a command that is specific to  your system to view the account database.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Sun's &lt;a name="puis3-CHP-4-ITERM-6239"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6240"&gt;&lt;/a&gt;NIS service supplements the information stored  in the workstations' own files. If you are using NIS and you wish to get a list  of every user account, you would use the following command:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6241"&gt;&lt;/a&gt;&lt;/span&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% cat /etc/passwd;ypcat passwd&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2.1 NIS and NIS+&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Sun's &lt;a name="puis3-CHP-4-ITERM-6242"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6243"&gt;&lt;/a&gt;NIS+ service can be configured to supplement or  substitute its user account entries for those entries in the &lt;i&gt;/etc/passwd&lt;/i&gt;  file, depending on the contents of the &lt;i&gt;/etc/nsswitch.conf&lt;/i&gt; file. If you  are using a system that runs NIS+, you should use the &lt;span class="docEmphasis"&gt;niscat&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6244"&gt;&lt;/a&gt; command and  specify your NIS+ domain. For example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% niscat -o passwd.bigco&lt;/span&gt;&lt;/pre&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2.2 Kerboros DCE&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6245"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6246"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6247"&gt;&lt;/a&gt;Computers  that are using DCE use an encrypted network database system as an alternative to  encrypted passwords and &lt;i&gt;/etc/passwd&lt;/i&gt; files. However, to maintain  compatibility, some of them have programs that run on a regular basis to create  a local &lt;i&gt;/etc/passwd&lt;/i&gt; file. You should check your manuals for information  about your specific system.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2.3"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6248"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6249"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6250"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2.3 NetInfo&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;On Mac OS X systems running NetInfo, you can view the account  database using the command:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% nidump passwd . &lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/warning_yellow.gif" height="36" width="51" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Note again that Mac OS X's system exposes the encrypted  password field when the &lt;span class="docEmphasis"&gt;nidump&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6251"&gt;&lt;/a&gt; command is used. Thus, although &lt;a name="puis3-CHP-4-ITERM-6252"&gt;&lt;/a&gt;Mac OS X uses the FreeBSD &lt;i&gt;master.passwd&lt;/i&gt;  file, it still exposes the entire password database to anyone who wants it. This  happens whether or not a network server is in  use.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2.4"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6253"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6254"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2.4 RADIUS&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Systems that are configured for RADIUS generally do not make it  possible to access the entire account database at once.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-4.2.5"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6255"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6256"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.4.2.5 LDAP&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;LDAP is used to build a true network authentication system;  rather than create local &lt;i&gt;/etc/passwd&lt;/i&gt; entries, systems that use LDAP for  authentication are configured to check logins against the network's LDAP server  each time (though some configurations do include a name service-caching  daemon&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-19"&gt;[19]&lt;/a&gt;&lt;/sup&gt; [&lt;span class="docEmphasis"&gt;nscd&lt;/span&gt;] that caches LDAP responses locally to reduce the  number of network authentications required). LDAP is covered in detail in &lt;a class="docLink" href="0596003234_puis3-chp-14.html#puis3-CHP-14"&gt;Chapter 14&lt;/a&gt;.&lt;a name="puis3-CHP-4-ITERM-6257"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-19"&gt;[19]&lt;/a&gt;&lt;/sup&gt; Don't  confuse this "name service" with Domain Name Service (DNS). Although &lt;span class="docEmphasis"&gt;nscd&lt;/span&gt; can cache DNS lookups of hostnames, its primary  strength is its ability to cache lookups of users, groups, and passwords made  through local files, NIS, NIS+, LDAP, and other authentication  systems.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" href="0596003234_"&gt;&lt;img src="FILES/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-5078662383002385182?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/5078662383002385182/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=5078662383002385182' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5078662383002385182'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5078662383002385182'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/network-account-and-authorization.html' title='Network Account and Authorization Systems'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-1572074378515040275</id><published>2008-06-02T05:21:00.001-07:00</published><updated>2008-06-02T05:21:58.765-07:00</updated><title type='text'>How Unix Implements Passwords</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;This section describes how passwords are implemented inside the  Unix operating system for both locally administered and network-based  systems.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.1 The /etc/passwd File&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6150"&gt;&lt;/a&gt;Traditionally, &lt;a name="puis3-CHP-4-ITERM-6151"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6152"&gt;&lt;/a&gt;Unix uses the  &lt;i&gt;/etc/passwd&lt;/i&gt; file to keep track of every user on the system. The  &lt;i&gt;/etc/passwd&lt;/i&gt; file contains the username, real name, identification  information, and basic account information for each user. Each line in the file  contains a database record; the record fields are separated by a colon (:).&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;You can use the &lt;span class="docEmphasis"&gt;cat&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6153"&gt;&lt;/a&gt; command to display your system's  &lt;i&gt;/etc/passwd&lt;/i&gt; file. Here are a few sample lines from a typical file:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;root:x:0:1:System Operator:/:/bin/ksh&lt;br /&gt;daemon:x:1:1::/tmp:&lt;br /&gt;uucp:x:4:4::/var/spool/uucppublic:/usr/lib/uucp/uucico&lt;br /&gt;rachel:x:181:100:Rachel Cohen:/u/rachel:/bin/ksh&lt;br /&gt;arlin:x.:182:100:Arlin Steinberg:/u/arlin:/bin/csh&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The first three accounts, &lt;span class="docEmphasis"&gt;root&lt;/span&gt;,  &lt;span class="docEmphasis"&gt;daemon&lt;/span&gt;, and &lt;span class="docEmphasis"&gt;uucp&lt;/span&gt;,  are system accounts, while &lt;span class="docEmphasis"&gt;rachel&lt;/span&gt; and &lt;span class="docEmphasis"&gt;arlin&lt;/span&gt; are accounts for individual users.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The individual fields of the &lt;i&gt;/etc/passwd&lt;/i&gt; file have  fairly straightforward meanings. &lt;a class="docLink" href="#puis3-CHP-4-TABLE-1"&gt;Table 4-1&lt;/a&gt; explains a sample line from the file  shown above.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-TABLE-1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table border="1" cellpadding="1" cellspacing="0" width="100%"&gt; &lt;caption&gt; &lt;h5 class="docTableTitle"&gt;&lt;span style="font-size:85%;"&gt;Table 4-1. Example /etc/passwd fields&lt;/span&gt;&lt;/h5&gt;&lt;/caption&gt; &lt;colgroup span="2"&gt; &lt;/colgroup&gt;&lt;tbody&gt; &lt;tr&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Field&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Contents&lt;/span&gt;&lt;/p&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;rachel&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Username.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;x&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Holding place for the user's "encrypted password."  Traditionally, this field actually stored the user's encrypted password. Modern  Unix systems store encrypted passwords in a separate file (the &lt;i&gt;shadow  password file&lt;/i&gt;) that can be accessed only by privileged users.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;181&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;User's user identification number (UID).&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;100&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;User's group identification number (GID).&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Rachel Cohen&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;User's full name (also known as the GECOS or GCOS field).&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;/u/rachel&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;User's home directory.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;/bin/ksh&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6158"&gt;&lt;/a&gt;User's shell.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-13"&gt;[13]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt; When Unix  was first written, it ran on a small minicomputer. Many users at Bell Labs used  their Unix accounts to create batch jobs to be run via &lt;a name="puis3-CHP-4-ITERM-6154"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6155"&gt;&lt;/a&gt;Remote Job  Entry (RJE) on the bigger GECOS computer in the Labs. The user identification  information for the RJE was kept in the &lt;i&gt;/etc/passwd&lt;/i&gt; file as part of the  standard user identification. &lt;a name="puis3-CHP-4-ITERM-6156"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6157"&gt;&lt;/a&gt;GECOS stood for General Electric Computer  Operating System; GE was one of several major companies that made computers  around that time.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-13"&gt;[13]&lt;/a&gt;&lt;/sup&gt; An empty  field for the shell name does not mean that the user has no shell; instead, it  means that a default shell—usually the Korn shell (&lt;span class="docEmphasis"&gt;/bin/ksh&lt;/span&gt;) or Bourne shell (&lt;span class="docEmphasis"&gt;/bin/sh&lt;/span&gt;)—should be used. To prevent a user from logging  in, the program &lt;span class="docEmphasis"&gt;/bin/false&lt;/span&gt; is often used as the  "shell."&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Passwords were traditionally stored in the &lt;i&gt;/etc/passwd&lt;/i&gt;  file in an encrypted format (hence the file's name). However, because of  advances in processor speed, encrypted passwords are now almost universally  stored in separate &lt;i&gt;shadow password file&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6159"&gt;&lt;/a&gt;s, which are described later.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The meanings of the UID and GID fields are described in &lt;a class="docLink" href="0596003234_puis3-chp-5.html#puis3-CHP-5"&gt;Chapter  5&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.2 The Unix Encrypted Password System&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6160"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6161"&gt;&lt;/a&gt;When Unix requests your password, it needs some  way of determining that the password you type is the correct one. Many early  computer systems (and quite a few still around today!) kept the passwords for  all of their accounts plainly visible in a so-called "password file" that  contained exactly that—passwords. Under normal circumstances, the system  protected the passwords so that they could be accessed only by privileged users  and operating system utilities. But through accident, programming error, or  deliberate act, the contents of the password file could occasionally become  available to unprivileged users. This scenario is illustrated in the following  remembrance:&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Perhaps the most memorable such occasion occurred in the early  1960s when a system administrator on the CTSS system at MIT was editing the  password file and another system administrator was editing the daily message  that is printed on everyone's terminal on login. Due to a software design error,  the temporary editor files of the two users were interchanged and thus, for a  time, the password file was printed on every terminal when it was logged in.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;—Robert Morris and Ken Thompson, &lt;span class="docEmphasis"&gt;"Password Security: A Case History"&lt;/span&gt; &lt;span class="docEmphasis"&gt;Communications of the ACM&lt;/span&gt;, November 1979. &lt;a name="puis3-CHP-4-ITERM-6162"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6163"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The real danger posed by such systems, explained Morris and  Thompson, is not that software problems might someday cause a recurrence of this  event, but that people can make copies of the password file and purloin them  without the knowledge of the system administrator. For example, if the password  file is saved on backup tapes, then those backups must be kept in a physically  secure place. If a backup tape is stolen, then &lt;span class="docEmphasis"&gt;everybody's&lt;/span&gt; password needs to be changed.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix avoids this problem by not keeping actual passwords  anywhere on the system. Instead, Unix stores a value that is generated by using  the password to encrypt a block of zero bits with a one-way function called  &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6164"&gt;&lt;/a&gt;; the  result of the calculation was traditionally stored in the &lt;i&gt;/etc/passwd&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6165"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6166"&gt;&lt;/a&gt; file.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-14"&gt;[14]&lt;/a&gt;&lt;/sup&gt;  When you try to log in, the program &lt;span class="docEmphasis"&gt;/bin/login&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6167"&gt;&lt;/a&gt; does not decrypt the stored password. Instead,  &lt;span class="docEmphasis"&gt;/bin/login&lt;/span&gt; takes the password that you typed,  uses it to transform another block of zeros, and compares the newly transformed  block with the block stored in the &lt;i&gt;/etc/passwd&lt;/i&gt; file. If the two encrypted  results match, the system lets you in.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-14"&gt;[14]&lt;/a&gt;&lt;/sup&gt; These  days, the encrypted password is stored either in the shadow password file or on  a network-based server, as we'll see in a later section.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The security of this approach rests upon the strength of the  encryption algorithm and the difficulty of guessing the user's password. To  date, the &lt;span class="docEmphasis"&gt;crypt ( )&lt;/span&gt; algorithm and its successors  have proven highly resistant to attacks. Unfortunately, users have a habit of  picking easy-to-guess passwords, which creates the need for shadow password  files.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.2.1 The traditional crypt ( ) algorithm&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The algorithm that traditional &lt;span class="docEmphasis"&gt;crypt(  )&lt;/span&gt; uses is based on the &lt;a name="puis3-CHP-4-ITERM-6168"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6169"&gt;&lt;/a&gt;Data Encryption Standard (DES) of the National  Institute of Standards and Technology (NIST). In normal operation, DES uses a  56-bit key (8 7-bit ASCII characters, for instance) to encrypt blocks of  original text, or &lt;i&gt;cleartext&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6170"&gt;&lt;/a&gt;, that are  64 bits in length. The resulting 64-bit blocks of encrypted text, or  &lt;i&gt;ciphertext&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6171"&gt;&lt;/a&gt;, cannot easily be decrypted  to the original cleartext without knowing the original 56-bit key.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The Unix &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt; function takes  the user's password as the encryption key and uses it to encrypt a 64-bit block  of zeros. The resulting 64-bit block of ciphertext is then encrypted again with  the user's password; the process is repeated a total of 25 times. The final 64  bits are unpacked into a string of 11 printable characters that are stored in  the shadow password file.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-15"&gt;[15]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-15"&gt;[15]&lt;/a&gt;&lt;/sup&gt; Each of  the 11 characters holds six bits of the result, represented as one of 64  characters in the set ".", "/", 0-9, A-Z, a-z, in that order. Thus, the value 0  is represented as ".", and 32 is the letter "U".&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Don't confuse the &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt;  algorithm with the &lt;span class="docEmphasis"&gt;crypt&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6172"&gt;&lt;/a&gt; encryption program. The &lt;span class="docEmphasis"&gt;crypt&lt;/span&gt; program uses a different encryption system from  &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt; and is very easy to break. See &lt;a class="docLink" href="0596003234_puis3-chp-7.html#puis3-CHP-7"&gt;Chapter 7&lt;/a&gt; for  more details.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Although the source code to &lt;span class="docEmphasis"&gt;crypt(  )&lt;/span&gt; is readily available, no technique has been discovered (or publicized)  to translate the encrypted password back into the original password. Such  reverse translation may not even be possible. As a result, the only known way to  defeat &lt;a name="puis3-CHP-4-ITERM-6173"&gt;&lt;/a&gt;Unix password security is via a  brute-force attack (see the next note), or by a &lt;i&gt;dictionary attack&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6174"&gt;&lt;/a&gt;. A dictionary attack is conducted by choosing  likely passwords—as from a dictionary—encrypting them, and comparing the results  with the value stored in &lt;i&gt;/etc/passwd&lt;/i&gt;. This approach to breaking a  cryptographic cipher is also called a &lt;i&gt;key search&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6175"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6176"&gt;&lt;/a&gt; or  &lt;i&gt;password cracking. &lt;/i&gt;It is made easier by the fact that DE uses only the  first eight characters of the password as its key; dictionaries need only  contain passwords of eight characters or fewer.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6177"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6178"&gt;&lt;/a&gt;Robert Morris and Ken Thompson designed &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt; to make a key search computationally  expensive. The idea was to make a dictionary attack take too long to be  practical. At the time, software implementations of DES were quite slow;  iterating the encryption process 25 times made the process of encrypting a  single password 25 times slower still. On the original &lt;a name="puis3-CHP-4-ITERM-6179"&gt;&lt;/a&gt;PDP-11 processors upon which Unix was designed,  nearly a full second of computer time was required to encrypt a single password.  To eliminate the possibility of using DES hardware encryption chips, which were  a thousand times faster than software running on a PDP-11, Morris and Thompson  modified the DES tables used by their software implementation, rendering the two  incompatible. The same modification also served to prevent a bad guy from simply  pre-encrypting an entire dictionary and storing it.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;What was the modification? Morris and Thompson added a bit of  &lt;i&gt;salt&lt;/i&gt;, as we'll describe in the next section.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-NOTE-267"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;There is no published or known method to easily decrypt  DES-encrypted text without knowing the key. Of course, "easily" has a different  meaning for cryptographers than for mere mortals. To decrypt something encrypted  with DES is computationally expensive; using the fastest current,  general-purpose computers might take hundreds of years.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;However, computers have grown so much faster in the past 25  years that it is now possible to test millions of passwords in a relatively  short amount of  time.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.2.2 Unix salt&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6180"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6181"&gt;&lt;/a&gt;As table salt adds zest to popcorn, the salt  that Morris and Thompson sprinkled into the DES algorithm added a little more  spice and variety. The DES salt is a 12-bit number, between 0 and 4,095, which  slightly changes the result of the DES function. Each of the 4,096 different  salts makes a password encrypt a different way.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;When you change your password, the &lt;span class="docEmphasis"&gt;/bin/passwd&lt;/span&gt; &lt;a name="puis3-CHP-4-ITERM-6182"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6183"&gt;&lt;/a&gt;program selects a salt based on the time of day.  The salt is converted into a two-character string and is stored in the  &lt;i&gt;/etc/passwd&lt;/i&gt; file along with the encrypted "password."&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-16"&gt;[16]&lt;/a&gt;&lt;/sup&gt;  In this manner, when you type your password at login time, the same salt is used  again. Unix stores the salt as the first two characters of the encrypted  password.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-16"&gt;[16]&lt;/a&gt;&lt;/sup&gt; By now,  you know that what is stored in the &lt;i&gt;/etc/passwd&lt;/i&gt; file is not really the  encrypted password. However, everyone calls it that, and we will do the same  from here on. Otherwise, we'll need to keep typing "the superencrypted block of  zeros that is used to verify the user's password" everywhere in the book,  filling many extra pages and contributing to the premature demise of yet more  trees.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a class="docLink" href="#puis3-CHP-4-TABLE-2"&gt;Table 4-2&lt;/a&gt;  shows how a few different words encrypt with different salts.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-TABLE-2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table border="1" cellpadding="1" cellspacing="0" width="100%"&gt; &lt;caption&gt; &lt;h5 class="docTableTitle"&gt;&lt;span style="font-size:85%;"&gt;Table 4-2. Passwords and salts&lt;/span&gt;&lt;/h5&gt;&lt;/caption&gt; &lt;colgroup span="3"&gt; &lt;/colgroup&gt;&lt;tbody&gt; &lt;tr&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Password&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Salt&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Encrypted password&lt;/span&gt;&lt;/p&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;nutmeg&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Mi&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;MiqkFWCm1fNJI&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;ellen1&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;ri&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;ri79KNd7V6.Sk&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;Sharon&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;./&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;./2aN7ysff3qM&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;norahs&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;am&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;amfIADT2iqjAf&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;tt&gt;norahs&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;7a&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt;&lt;pre&gt;&lt;span style="font-size:85%;"&gt;7azfT5tIdyh0I&lt;/span&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Notice that the last password, &lt;tt&gt;norahs&lt;/tt&gt;, was encrypted  two different ways with two different salts. As a side effect, the salt makes it  possible for a user to have the same password on a number of different computers  and to keep this fact a secret (usually), even from somebody who has access to  the &lt;i&gt;/etc/passwd&lt;/i&gt; files on all of those computers; two systems would not  likely assign the same salt to the user, thus ensuring that the encrypted  password field is different.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-17"&gt;[17]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-17"&gt;[17]&lt;/a&gt;&lt;/sup&gt; This case  occurs only when the user actually types in his password on the second computer.  Unfortunately, in practice, system administrators commonly cut and paste  &lt;i&gt;/etc/passwd&lt;/i&gt; entries from one computer to another when they build accounts  for users on new computers. As a result, others can easily tell when a user has  the same password on more than one system.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-SIDEBAR-5"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;On the Importance of Encrypted Passwords&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6184"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6185"&gt;&lt;/a&gt;Alec Muffett, the author of the &lt;span class="docEmphasis"&gt;Crack&lt;/span&gt; program (discussed in &lt;a class="docLink" href="0596003234_puis3-chp-19-sect-1.html#puis3-CHP-19-TABLE-1"&gt;Table 19-1&lt;/a&gt;),  related an entertaining story to us about the reuse of passwords in more than  one place, which we paraphrase here.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;A student friend of Alec's (call him Bob) spent a co-op year at  a major computer company site. During his vacations and on holidays, he'd come  back to school and play AberMUD (a network-based game) on Alec's computer. One  of Bob's responsibilities at the company involved system management. The company  was concerned about security, so all passwords were random strings of letters  with no sensible pattern or order.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;One day, Alec fed the AberMUD passwords into his development  version of the &lt;span class="docEmphasis"&gt;Crack&lt;/span&gt;&lt;/span&gt; program as a dictionary,  because they were stored on his machine as plaintext. He then ran this file  against his system user-password file, and found a few student account  passwords. He had the students change their passwords, and he then forgot about  the matter.&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some time later, Alec posted a revised version of the &lt;span class="docEmphasis"&gt;Crack&lt;/span&gt; program and associated files to the Usenet. They  ended up in one of the Usenet sources newsgroups and were distributed quite  widely. Eventually, after a trip of thousands of miles around the world, they  came to Bob's company. Bob, being a concerned administrator, decided to download  the files and check them against his company's passwords. Imagine Bob's shock  and horror when the widely distributed &lt;span class="docEmphasis"&gt;Crack&lt;/span&gt;  promptly churned out a match for his randomly chosen, super-secret &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password!&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;The moral of the story is that you should teach your users  &lt;span class="docEmphasis"&gt;never&lt;/span&gt; to use their account passwords for other  purposes—such as games or web sites. They never know when those passwords might  come back to haunt them! For developers, the moral is that all programs—even  games—should store passwords encrypted with one-way hash  functions.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In recent years the security provided by the salt has  diminished significantly. Having a salt means that the same password can encrypt  in 4,096 different ways. This makes it much harder for an attacker to build a  reverse dictionary for translated encrypted passwords back into her unencrypted  form: to build a reverse dictionary of 100,000 words, an attacker would need to  have 409,600,000 entries. But with 8-character passwords and 13-character  encrypted passwords, 409,600,000 entries fit in roughly 8 GBs of storage.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Another problem with the salt was an error in implementation:  many systems selected which salt to use based on the time of day, which made  some salts more likely than others.&lt;a name="puis3-CHP-4-ITERM-6186"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6187"&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.2.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.2.3 crypt16( ), DES Extended, and Modular Crypt  Format&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Modern Unix systems have improved the security of the &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt; function by changing the underlying encryption  algorithm. Instead of a modified DES, a variety of other algorithms have been  adopted, including Blowfish and MD5. The advantage of these new algorithms is  that more characters of the password are significant, and there are many more  possible values for the salt; both of these changes significantly improve the  strength of the underlying encrypted password system. The disadvantage is that  the encrypted passwords on these systems will not be compatible with the  encrypted passwords on other systems.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Because of the widespread use of the original Unix password  encryption algorithm, Unix vendors have gone to great lengths to ensure  compatibility. Thus, the &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt; function called  with a traditional salt will always use the original DES-based algorithm. To use  one of the newer algorithms you must use either a different function call (some  vendors use &lt;span class="docEmphasis"&gt;bigcrypt( )&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6188"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-4-ITERM-6189"&gt;&lt;/a&gt;or &lt;span class="docEmphasis"&gt;crypt16( )&lt;/span&gt;) or a different salt value. Consult your  documentation to find out what is appropriate for your system.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;a name="puis3-CHP-4-ITERM-6190"&gt;&lt;/a&gt;DES Extended format is a  technique for increasing the number of DES rounds and extending the salt from  2&lt;sup&gt;12&lt;/sup&gt; to 2&lt;sup&gt;24&lt;/sup&gt; possible values. This format has limited use on  modern Unix systems but is included on many to provide backwards  compatibility.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;a name="puis3-CHP-4-ITERM-6191"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6192"&gt;&lt;/a&gt;Modular Crypt Format (MCF) specifies an  extensible scheme for formatting encrypted passwords. MCF is one of the most  popular formats for encrypted passwords around today. Here is an example of an  MCF-encrypted password:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;$1$EqkVUoQ2$4VLpJuZ.Q2wm6TAiyYt75.&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Dollar signs are used to delimit the MCF fields, as described  in &lt;a class="docLink" href="#puis3-CHP-4-TABLE-3"&gt;Table 4-3&lt;/a&gt;.&lt;a name="puis3-CHP-4-ITERM-6193"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-TABLE-3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table border="1" cellpadding="1" cellspacing="0" width="100%"&gt; &lt;caption&gt; &lt;h5 class="docTableTitle"&gt;&lt;span style="font-size:85%;"&gt;Table 4-3. The modular crypt format&lt;/span&gt;&lt;/h5&gt;&lt;/caption&gt; &lt;colgroup span="3"&gt; &lt;/colgroup&gt;&lt;tbody&gt; &lt;tr&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Field&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Purpose&lt;/span&gt;&lt;/p&gt;&lt;/th&gt; &lt;th class="docTableHeader"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Notes&lt;/span&gt;&lt;/p&gt;&lt;/th&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;#1&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Specifies encryption algorithm to use&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;1 specifies MD5.2 specifies Blowfish.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;#2&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Salt&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Limited to 16 characters.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;#3&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Encrypted password&lt;/span&gt;&lt;/p&gt;&lt;/td&gt; &lt;td class="docTableCell"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Does not include salt, unlike traditional Unix &lt;span class="docEmphasis"&gt;crypt( )&lt;/span&gt;&lt;/span&gt;  function.&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.2.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.2.4 The shadow password and master password  files&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6194"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6195"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6196"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6197"&gt;&lt;/a&gt;Although changes to the encrypted password  system (as described in the previous section) have improved the security of  encrypted passwords, they have failed to fundamentally address the weakness  exploited by password crackers: people pick passwords that are easy to guess. If  an attacker can obtain a copy of the password file, it is a simple matter to  guess passwords, perform the encryption transform, and compare against the  file.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Ultimately, the best way to deal with the problem of  poorly-chosen passwords is to eliminate reusable passwords entirely by using  one-time passwords, some form of biometrics, or a token-based authentication  system. Because such systems can be awkward or expensive, modern Unix systems  have adopted a second approach called shadow password files or &lt;i&gt;master  password files&lt;/i&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;As the name implies, a shadow password file is a secondary  password file that &lt;span class="docEmphasis"&gt;shadows&lt;/span&gt; the primary password  file. On &lt;a name="puis3-CHP-4-ITERM-6198"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6199"&gt;&lt;/a&gt;Solaris and Linux systems, the shadow password  is usually stored in the file &lt;a name="puis3-CHP-4-ITERM-6200"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6201"&gt;&lt;/a&gt;&lt;i&gt;/etc/shadow&lt;/i&gt; and contains the encrypted  password and a password expiration date. The &lt;i&gt;/etc/shadow&lt;/i&gt; file is  protected so that it can be read only by the superuser. Thus, an attacker cannot  obtain a copy to use in verifying guesses of passwords.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Instead of a shadow password file, &lt;a name="puis3-CHP-4-ITERM-6202"&gt;&lt;/a&gt;FreeBSD uses a master password file. This file,  &lt;a name="puis3-CHP-4-ITERM-6203"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6204"&gt;&lt;/a&gt;&lt;i&gt;/etc/master.passwd&lt;/i&gt;, is a complete  password file that includes usernames, passwords, and other account information.  The &lt;i&gt;/etc/passwd&lt;/i&gt; file is identical to the &lt;i&gt;/etc/master.passwd&lt;/i&gt; file,  except that all encrypted passwords have been changed to the letter "x".&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Mac OS X stores all account information in the NetInfo  network-based account management system. Mac OS X does this for all computers,  even for standalone computers that are never placed on a network. The version of  NetInfo that is supplied in Mac OS 10.0 and 10.1 does not provide for shadow  passwords, although the &lt;i&gt;/etc/master.passwd&lt;/i&gt; file is present and is used  during boot-up.&lt;a name="puis3-CHP-4-ITERM-6205"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6206"&gt;&lt;/a&gt;&lt;/span&gt; &lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.3 One-Time Passwords&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6207"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6208"&gt;&lt;/a&gt;The most effective way to minimize the danger of  bad passwords is not to use conventional passwords at all. Instead, your site  can install software and/or hardware to allow &lt;i&gt;one-time passwords&lt;/i&gt;. A  one-time password is exactly that—a password that is used only once.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;There are two popular techniques for implementing one-time  passwords:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6209"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6210"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6211"&gt;&lt;/a&gt;&lt;/span&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Hardware tokens&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6209"&gt;&lt;/a&gt;An example is the RSA  SecureID card, which displays a new PIN or password for each login. Some  token-based systems display a different code every minute. Other token-based  systems look like little calculators. When you attempt to log in you are  presented with a challenge. You type this challenge into your calculator, type  in your personal identification number, and then type the resulting number that  is displayed into the computer.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Codebooks&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6210"&gt;&lt;/a&gt;These list valid passwords.  Each password is crossed off the list after it is used. S/Key is a popular  codebook system.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-18"&gt;[18]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-18"&gt;[18]&lt;/a&gt;&lt;/sup&gt; More  correctly, it is a &lt;a name="puis3-CHP-4-ITERM-6211"&gt;&lt;/a&gt;&lt;i&gt;one-time pad&lt;/i&gt; and  not a codebook.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;One-time passwords can be implemented as a replacement for  conventional passwords or in addition to them. In a typical S/Key environment,  you enter the S/Key password instead of your standard Unix password. For  example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;login: darrel&lt;br /&gt;Password: &lt;span class="docEmphStrike"&gt;says rusk wag hut gwen loge&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Last login: Wed Jul  5 08:11:33 from r2.nitroba.com&lt;br /&gt;You have new mail.&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;All of these one-time password systems provide an astounding  improvement in security over the conventional system. Unfortunately, because  they require either the installation of special software or the purchase of  additional hardware, they are not as widespread at this time in the Unix  marketplace as they should be. However, many major companies and government  agencies have moved to using these one-time methods. (See &lt;a class="docLink" href="0596003234_puis3-chp-19-sect-1.html#puis3-CHP-19-TABLE-1"&gt;Table 19-1&lt;/a&gt;  for additional details.)&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-3.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.3.4 Public Key Authentication&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6212"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6213"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6214"&gt;&lt;/a&gt;Another  approach to solving the problem of passwords is to do away with them entirely  and use an alternative authentication system. One popular authentication system  that has been used is recent years is based on public key cryptography  (described in &lt;a class="docLink" href="0596003234_puis3-chp-7.html#puis3-CHP-7"&gt;Chapter 7&lt;/a&gt; ).&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In a public key authentication system, each user generates a  pair of "keys"—two long numbers with the interesting property that a message  encoded with one of the keys can be decoded only using the other key. The user  keeps one of the keys private on his local computer (and often protects its  privacy by encrypting the key itself with a password), and provides the other,  public key to the remote server. When the user wants to log into the server, the  server selects a random number, encodes it with the user's public key, and sends  it to the user. By decrypting the random number using his private key and  returning it to the server (possibly re-encrypted with the server's public key),  the user proves that he is in possession of the private key and is therefore  authentic. In a similar fashion, the server can authenticate itself to the user,  so that the user is sure that he's logging into the correct machine.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Public key authentication systems have two fundamental  problems. The first problem is the management of private keys. Private keys must  be kept secure at all costs. Typically, private keys are encrypted with a  passphrase to protect them, but all of the caveats about choosing a good  password (and not transmitting it where others can eavesdrop) apply.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The second problem is the certification of public keys. If an  attacker can substitute his public key for someone else's (or for that of a  server to which you wish to connect) all your communication will be visible to  the attacker. One solution to this problem is to use a secure channel to  exchange public keys. With the Secure Shell (&lt;span class="docEmphasis"&gt;ssh&lt;/span&gt;), the public key is merely copied to the remote  system (after logging in with a password or another non-public key method) and  put into a file in the user's home directory called  &lt;i&gt;~/.ssh/authorized_keys&lt;/i&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;A more sophisticated technique for distributing public keys  involves the creation of a &lt;a name="puis3-CHP-4-ITERM-6215"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6216"&gt;&lt;/a&gt;public key infrastructure (PKI). A group of  users and system administrators could all certify their keys to one another in  person, or each could have his own key certified by a common person or  organization that everyone trusts to verify the identities associated with the  keys. SSL, the Secure Socket Layer, provides transparent support for PKI.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" href="0596003234_"&gt;&lt;img src="FILES/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-1572074378515040275?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/1572074378515040275/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=1572074378515040275' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1572074378515040275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1572074378515040275'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/how-unix-implements-passwords.html' title='How Unix Implements Passwords'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-2626192879063954237</id><published>2008-06-02T05:20:00.000-07:00</published><updated>2008-06-02T05:21:11.779-07:00</updated><title type='text'>The Care and Feeding of Passwords</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-4-ITERM-6115"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Although passwords are an  important element of computer security, users often receive only cursory  instructions about selecting them.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you are a user, be aware that by picking a bad password—or  by revealing your password to an untrustworthy individual—you are potentially  compromising your entire computer's security. If you are a system administrator,  you should make sure that all of your users are familiar with the issues raised  in this section.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.2.1 Bad Passwords: Open Doors&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6116"&gt;&lt;/a&gt;A bad password is any  password that is easily guessed.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-SIDEBAR-3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;Bad Passwords&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6117"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6118"&gt;&lt;/a&gt;When picking passwords, avoid the following:&lt;/span&gt;&lt;/p&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Your name, spouse's name, or partner's name&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Your pet's name or your child's name&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Names of close friends or coworkers&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The name of your company, school, department, or group&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Names of your favorite fantasy characters&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Your boss's name&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Anybody's name&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The name of the operating system you're using&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Information in the GECOS field of your &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; file entry (discussed later in this chapter)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;The hostname of your computer&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Your phone number or your license plate number &lt;a name="puis3-CHP-4-ITERM-6119"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Any part of your Social Security number&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Anybody's birth date&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Other information easily obtained about you (e.g., address,  alma mater)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Words such as &lt;tt&gt;wizard&lt;/tt&gt;, &lt;tt&gt;guru&lt;/tt&gt;, &lt;tt&gt;gandalf&lt;/tt&gt;,  and so on &lt;a name="puis3-CHP-4-ITERM-6120"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Any username on the computer in any form (as is, capitalized,  doubled, etc.)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;A word in the English dictionary or in a foreign dictionary&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Place names or any proper nouns&lt;a name="puis3-CHP-4-ITERM-6121"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Passwords of all the same letter&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Simple patterns of letters on the keyboard, like  &lt;tt&gt;qwerty&lt;/tt&gt;&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Any of the above spelled backwards&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Any of the above followed or prepended by a single digit &lt;a name="puis3-CHP-4-ITERM-6122"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In the movie &lt;span class="docEmphasis"&gt;Real Genius&lt;/span&gt;, a  computer recluse named Laszlo Hollyfeld breaks into a top-secret military  computer over the telephone by guessing passwords. Laszlo starts by typing the  password &lt;tt&gt;AAAAAA&lt;/tt&gt;, then trying &lt;tt&gt;AAAAAB&lt;/tt&gt;, then &lt;tt&gt;AAAAAC&lt;/tt&gt;, and  so on, until he finally finds the password that matches.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6123"&gt;&lt;/a&gt;Real-life computer crackers  are far more sophisticated. Instead of typing each password by hand, attackers  use their computers to open network connections (or make phone calls) then try  the passwords, automatically retrying when they are disconnected. Instead of  trying every combination of letters, starting with &lt;tt&gt;AAAAAA&lt;/tt&gt;&lt;a name="puis3-CHP-4-ITERM-6124"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6125"&gt;&lt;/a&gt;hit lists of common passwords such as  &lt;tt&gt;wizard&lt;/tt&gt; or &lt;tt&gt;demo&lt;/tt&gt;. Even a modest home computer with a good  password-guessing program can try many thousands of passwords in less than a  day's time. Some hit lists used by crackers are several hundred thousand words  in length, and include words in many different languages.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-6"&gt;[6]&lt;/a&gt;&lt;/sup&gt;  Therefore, a password that &lt;span class="docEmphasis"&gt;anybody on the  planet&lt;/span&gt;&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt; (or  whatever), attackers use  might use for a password is probably a  bad password choice for you.&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-6"&gt;[6]&lt;/a&gt;&lt;/sup&gt; In contrast,  if you were to program a home computer to try all 6-letter combinations from  &lt;tt&gt;AAAAAA&lt;/tt&gt; to &lt;tt&gt;ZZZZZZ&lt;/tt&gt;, it would have to try 308,915,776 different  passwords. Guessing one password per second, that would require nearly 10 years.  Many Unix systems make this process even slower by introducing delays between  login attempts.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt; If you  believe that beings from other planets have access to your computer account,  then you should not pick a password that &lt;span class="docEmphasis"&gt;they&lt;/span&gt; can  guess, either, although this may be the least of your problems.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;What's a popular and bad password? Some examples are your name,  your partner's name, or your parents' names. Other bad passwords are these names  backwards or followed by a single digit. Short passwords are also bad, because  there are fewer of them: they are, therefore, more easily guessed. Especially  bad are "magic words" from computer games, such as &lt;tt&gt;xyzzy&lt;/tt&gt;. Magic words  look secret and unguessable, but in fact they are widely known. Other bad  choices include phone numbers, characters from your favorite movies or books,  local landmark names, favorite drinks, or famous computer scientists (see the  sidebar &lt;a class="docLink" href="#puis3-CHP-4-SIDEBAR-3"&gt;Bad Passwords&lt;/a&gt; for  still more bad choices). These words backwards or capitalized are also weak.  Replacing the letter "l" (lowercase "L") with "1" (numeral one), the letter "o"  with "0" (numeral zero), or "E" with "3," adding a digit to either end, or other  simple modifications of common words are also weak. Words in other languages are  no better. Dictionaries for dozens of languages are available for download on  the Internet, including Klingon! There are also dictionaries available that  consist solely of words frequently chosen as passwords.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Many versions of Unix make a minimal attempt to prevent users  from picking bad passwords. For example, under some versions of Unix, if you  attempt to pick a password with fewer than six letters or letters that are all  the same case, the &lt;a name="puis3-CHP-4-ITERM-6126"&gt;&lt;/a&gt;&lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; program will ask the user to "Please pick a  different password" followed by some explanation of the local requirements for a  password. After three tries, however, some versions of the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; program relent and let the user pick a short  one. Better versions allow the administrator to require a minimum number of  letters, a requirement for nonalphabetic characters, and other restrictions.  However, some administrators turn these requirements off because users complain  about them! Users will likely complain more loudly if their computers are broken  into.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.2.2 Smoking Joes&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6127"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6128"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6129"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6130"&gt;&lt;/a&gt;Surprisingly, a significant percentage of all  computers that do not explicitly check for bad passwords contain at least one  account in which the username and the password are the same or extremely  similar. Such accounts are often called "Joes." Joe accounts are easy for  crackers to find and trivial to penetrate. Attackers can find an entry point  into far too many systems simply by checking every account to see whether it is  a Joe account. This is one reason why it is dangerous for your computer to make  a list of all of the valid usernames available to the outside world.&lt;a name="puis3-CHP-4-ITERM-6131"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-2.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.2.3 Good Passwords: Locked Doors&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6132"&gt;&lt;/a&gt;Good passwords are passwords  that are difficult to guess. The best passwords are difficult to guess because  they include some subset of the following characteristics:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Have both uppercase and lowercase letters&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Have digits and/or punctuation characters as well as  letters&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;May include some control characters and/or spaces&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt; In some  cases, using &lt;a name="puis3-CHP-4-ITERM-6133"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6134"&gt;&lt;/a&gt;spaces may be problematic. An attacker who is in  a position to listen carefully can distinguish the sound of the space bar from  the sound of other keys. Similarly, Shift or Control key combinations have a  distinctive sound, but there are many shifted characters and only one  space.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Are easy to remember, so they do not have to be written  down&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Are seven or eight characters long.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Can be typed quickly, so somebody cannot determine what you  type by watching over your shoulder&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;It's easy to pick a good password. Here are some  suggestions:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Take two short words and combine them with a special character  or a number, like &lt;tt&gt;robot4my&lt;/tt&gt; or &lt;tt&gt;eye-con&lt;/tt&gt;.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Put together an acronym that's special to you, like  &lt;tt&gt;Anotfsw&lt;/tt&gt; (Ack, none of this fancy stuff works), &lt;tt&gt;aUpegcbm&lt;/tt&gt; (All  Unix programmers eat green cheese but me), or &lt;tt&gt;Ttl*Hiww&lt;/tt&gt; (Twinkle,  twinkle, little star. How I wonder what . . . ).&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Create a nonsense word by alternating consonant and vowel  sounds, like &lt;tt&gt;huroMork&lt;/tt&gt;. These words are usually easy to pronounce and  remember.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Of course, &lt;tt&gt;robot4my&lt;/tt&gt;, &lt;tt&gt;eye-con&lt;/tt&gt;,  &lt;tt&gt;Anotfsw&lt;/tt&gt;, &lt;tt&gt;Ttl*Hiww&lt;/tt&gt;, &lt;tt&gt;huroMork&lt;/tt&gt;, and &lt;tt&gt;aUpegcbm&lt;/tt&gt;  are now all bad passwords because they've been printed here.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-SIDEBAR-4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;Number of Passwords&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6135"&gt;&lt;/a&gt;If you exclude a few of the  &lt;a name="puis3-CHP-4-ITERM-6136"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6137"&gt;&lt;/a&gt;Control  characters that should not be used in a password, it is still possible to create  more than 5,000,000,000,000,000 unique 8-character passwords in standard  Unix.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Combining dictionaries from 10 different major languages, plus  those words reversed, capitalized, with a trailing digit appended, and otherwise  slightly modified results in less than 5,000,000 words. Adding a few thousand  names and words from popular culture hardly changes that.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;From this, we can see that users who pick weak passwords are  making it easy for attackers—they reduce the search space to less than  .000000001% of the possible passwords!&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;One study of passwords chosen in an unconstrained environment  revealed that users chose passwords with Control characters only 1.4% of the  time, and punctuation and space characters less than 6% of the time. &lt;a name="puis3-CHP-4-ITERM-6138"&gt;&lt;/a&gt;All of the characters !@#$%^&amp;amp;*( )_-+=[  ]|\;:"?/,.&lt; &gt;'~' can be used in passwords too; although, some systems may  treat the "\", "#", and "@" symbols as escape (literal), erase, and kill,  respectively. (See the footnote to the earlier sidebar entitled "Password:  ChangeMe" for a list of the control characters that should not be included in a  password.)&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Next time one of your users complains because of the password  selection restrictions you have in place and proclaims, "I can't think of any  password that isn't rejected by the program!", you might want to show him this  page.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-2.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.2.4 Password Synchronization: Using the Same  Password on Many Machines&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6139"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6140"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6141"&gt;&lt;/a&gt;If you have  several computer accounts, you may wish to have the same password on every  machine, so you have less you need to remember. This is called &lt;i&gt;password  synchronization&lt;/i&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Password synchronization can increase security if the  synchronization allows you to use a good password that is hard to guess. Systems  that provide for automated password synchronization make it easy to change your  password and have that change reflected everywhere.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;On the other hand, password synchronization can decrease  security if the password is compromised—suddenly all of your accounts will be  vulnerable! Even worse, with password synchronization you may not even know that  your password has been compromised!&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Password synchronization is also problematic for usernames and  passwords that are used for web sites. Many people will use the same username  and password at many web sites—even web sites that are potentially being run by  untrustworthy individuals or organizations. A simple way to capture usernames  and passwords is to set up a web site that offers "a chance of winning $10,000"  to anybody who registers with an email address and sets up a password upon  entry.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you are thinking of using the same password on many  machines, here are some points to consider:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;One common approach used by people with accounts on many  machines is to have a base password that can be modified for each different  machine. For example, your base password might be &lt;tt&gt;kxyzzy&lt;/tt&gt; followed by  the first letter of the name of the computer you're using. On a computer named  &lt;span class="docEmphasis"&gt;athena&lt;/span&gt; your password would be &lt;tt&gt;kxyzzya&lt;/tt&gt;,  while on a computer named &lt;span class="docEmphasis"&gt;ems&lt;/span&gt; your password would  be &lt;tt&gt;kxyzzye&lt;/tt&gt;. (Don't, of course, use this exact method of varying your  passwords.)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Another common approach is to create a different, random  password for each machine. Store these passwords in a file that is &lt;a name="puis3-CHP-4-ITERM-6142"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6143"&gt;&lt;/a&gt;encrypted—either manually encrypted with a  program such as PGP, or automatically encrypted using a "password keeper"  program.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;To simplify access to remote systems, configure your remote  accounts for &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt;-based access using your &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6144"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-4-ITERM-6145"&gt;&lt;/a&gt;key. Make sure that this key is kept encrypted  using an &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt; passphrase. For day-to-day use, the  &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt; passphrase is all that needs to be  remembered. However, for special cases or when changing the password, you can  refer to your encrypted file of all the passwords. See the manual page for  &lt;i&gt;ssh-keygen&lt;/i&gt; for specific instructions.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-2.5"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.2.5 Writing Down Passwords&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6146"&gt;&lt;/a&gt;In the movie &lt;span class="docEmphasis"&gt;War Games&lt;/span&gt;, there is the canonical story about a high  school student who breaks into his school's academic computer and changes his  grades; he does this by walking into the school's office, looking at the  academic officer's terminal, and noting that the telephone number, username, and  password are written on a Post-It note.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unfortunately, the fictional story has actually happened—in  fact, it has happened hundreds of times over.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Users are admonished to "never write down your password." The  reason is simple enough: if you write down your password, somebody else can find  it and use it to break into your computer. A password that is memorized is more  secure than the same password written down, simply because there is less  opportunity for other people to learn it. On the other hand, a password that  &lt;span class="docEmphasis"&gt;must&lt;/span&gt; be written down to be remembered is quite  likely a password that is not going to be guessed easily.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt; If  you write your password on something kept in your wallet, the chances of  somebody who steals your wallet using the password to break into your computer  account are remote indeed.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt; We should  note that in the 12 years since we originally wrote this, we have added lots  more accounts and passwords and have more frequent "senior moments." Thus, we  perhaps should be a little less emphatic about this point.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt; Unless, of  course, you happen to be an important person, and your wallet is stolen or  rifled as part of an elaborate plot. In their book &lt;span class="docEmphasis"&gt;Cyberpunks&lt;/span&gt;, authors John Markoff and Katie Hafner  describe a woman named "Susan Thunder" who broke into military computers by  doing just that: she would pick up an officer at a bar and go home with him.  Later that night, while the officer was sleeping, Thunder would get up, go  through the man's wallet, and look for telephone numbers, usernames, and  passwords.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you must write down your password, then at least follow a  few precautions:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;When you write it down, don't identify your password as being a  password.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't include the name of the account, network name, or phone  number of the computer on the same piece of paper as your password.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't attach the password to your terminal, keyboard, or any  part of your computer.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't write your actual password. Instead, disguise it by  mixing in other characters or by scrambling the written version of the password  in a way that you can remember. For example, if your password is  &lt;tt&gt;Iluvfred&lt;/tt&gt;, you might write &lt;tt&gt;fredIluv&lt;/tt&gt; or &lt;tt&gt;vfredxyIu&lt;/tt&gt; or  perhaps &lt;tt&gt;Last&lt;/tt&gt; &lt;tt&gt;week&lt;/tt&gt;, &lt;tt&gt;I&lt;/tt&gt; &lt;tt&gt;lost&lt;/tt&gt; &lt;tt&gt;Uncle&lt;/tt&gt;  &lt;tt&gt;Vernon's&lt;/tt&gt; &lt;tt&gt;`fried&lt;/tt&gt; &lt;tt&gt;rice&lt;/tt&gt; &lt;tt&gt;&amp;amp;&lt;/tt&gt;&lt;tt&gt;eggplant  delight&lt;/tt&gt;' &lt;tt&gt;recipe--remember&lt;/tt&gt; &lt;tt&gt;to&lt;/tt&gt; &lt;tt&gt;call&lt;/tt&gt; &lt;tt&gt;him&lt;/tt&gt;  &lt;tt&gt;after&lt;/tt&gt; &lt;tt&gt;3:00&lt;/tt&gt; &lt;tt&gt;p.m&lt;/tt&gt;.—to throw off a potential  wallet-snatcher.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt; &lt;/p&gt; &lt;blockquote&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt; We hope  that last one required some thought. The 3:00 p.m. means to start with the third  word and take the first letter of every word. With some thought, you can come up  with something equally obscure that you will  remember.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6147"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6148"&gt;&lt;/a&gt;Of course, you can always encrypt your passwords  in a handy file on a machine where you remember the password. Many people store  their passwords in an encrypted form on a PDA (handheld computer). The only  drawback to this approach is when you can't get to your file, or your PDA has  gone missing (or its batteries die)—how do you log on to report the problem?&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here are some other things to avoid:&lt;/span&gt;&lt;/p&gt; &lt;ul&gt;&lt;li style="font-weight: bold;"&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't record a password online (in a file, database, or email  message), unless the password is encrypted.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li style="font-weight: bold;"&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Likewise, &lt;span class="docEmphasis"&gt;never send a password to  another user via electronic mail&lt;/span&gt;. In &lt;span class="docEmphasis"&gt;The Cuckoo's  Egg&lt;/span&gt;, Cliff Stoll tells of how a single intruder broke into system after  system by searching for the word &lt;tt&gt;password&lt;/tt&gt; in text files and electronic  mail messages. With this simple trick, the intruder learned of the passwords of  many accounts on many different computers across the country.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li style="font-weight: bold;"&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't use your login password as the password of application  programs. For instance, don't use your login password as your password to an  online MUD (multiuser dungeon) game or for a web server account. The passwords  in those applications are controlled by others and may be visible to the wrong  people.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p style="font-weight: bold;" class="docList"&gt;&lt;span style="font-size:85%;"&gt;Don't use the same password for different computers managed by  different organizations. If you do, and an attacker learns the password for one  of your accounts, all will be compromised.&lt;/span&gt;&lt;/p&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;This last "don't" is very difficult to follow in practice.&lt;/span&gt;&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6149"&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-2626192879063954237?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/2626192879063954237/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=2626192879063954237' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2626192879063954237'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2626192879063954237'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/care-and-feeding-of-passwords.html' title='The Care and Feeding of Passwords'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-427733562778795114</id><published>2008-06-02T05:18:00.000-07:00</published><updated>2008-06-02T05:20:21.494-07:00</updated><title type='text'>Logging in with Usernames and Passwords</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-4-ITERM-6062"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6063"&gt;&lt;/a&gt;E&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;very person who uses a Unix computer should  have her own &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;account&lt;/i&gt;&lt;span style="font-weight: bold;"&gt;. An account is identified by a &lt;/span&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6064"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;user ID number (UID) that is associated with one  or more &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;usernames &lt;/i&gt;&lt;span style="font-weight: bold;"&gt;(also known as &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;account names&lt;/i&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6065"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;)&lt;/span&gt;&lt;i style="font-weight: bold;"&gt;.&lt;/i&gt;&lt;span style="font-weight: bold;"&gt; Traditionally, each account also has a  secret &lt;/span&gt;&lt;i style="font-weight: bold;"&gt;password &lt;/i&gt;&lt;span style="font-weight: bold;"&gt;associated with it to prevent unauthorized use. You need  to know both your username and your password to log into a Unix system.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.1 Unix Usernames&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The username is an &lt;i&gt;identifier: &lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6066"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6067"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6068"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6069"&gt;&lt;/a&gt;it tells the  computer who you are. In contrast, a password is an &lt;i&gt;authenticator&lt;/i&gt;: you  use it to prove to the operating system that you are who you claim to be. A  single person can have more than one Unix account on the same computer. In this  case, each account would have its own username.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Standard Unix usernames may be between one and eight characters  long, although many Unix systems today allow usernames that are longer. Within a  single Unix computer, usernames must be unique: no two users can have the same  one. (If two people did have the same username on a single system, then they  would really be sharing the same account.) Traditionally, Unix passwords were  also between one and eight characters long, although most Unix systems now allow  longer passwords as well. Longer passwords are generally more secure because  they are harder to guess. More than one user can theoretically have the same  password, although if they do, that usually indicates that &lt;span class="docEmphasis"&gt;both&lt;/span&gt; users have picked a bad password.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;A username can be any sequence of characters you want (with  some exceptions), and does not necessarily correspond to a real person's  name.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some versions of Unix have problems with usernames that do not  start with a lowercase letter or that contain special characters such as  punctuation or &lt;a name="puis3-CHP-4-ITERM-6070"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6071"&gt;&lt;/a&gt;control characters. Usernames containing certain  unusual characters will also cause problems for various application programs,  including some network mail programs. For this reason, many sites allow only  usernames that contain lowercase letters and numbers and further require that  all usernames start with a  letter.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Your username identifies you to Unix in the same way that your  first name identifies you to your friends. When you log into the Unix system,  you tell it your username in the same way that you might say, "Hello, this is  Sabrina," when you pick up the telephone.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-2"&gt;[2]&lt;/a&gt;&lt;/sup&gt; Most systems use the same identifier  for both usernames and email addresses. For this reason, organizations that have  more than one computer often require people to use the same username on every  machine to minimize confusion.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-2"&gt;[2]&lt;/a&gt;&lt;/sup&gt; Even if you  aren't Sabrina, saying that you are Sabrina identifies you as Sabrina. Of  course, if you are not Sabrina, your voice will probably not &lt;i&gt;authenticate&lt;/i&gt;  you as Sabrina, provided that the person you are speaking with knows what  Sabrina actually sounds like.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;There is considerable flexibility in choosing a username. For  example, John Q. Random might have any of the following usernames; they are all  potentially valid:&lt;/span&gt;&lt;/p&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;john&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;johnqr&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;johnr&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;jqr&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;jqrandom&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;jrandom&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;random&lt;/span&gt;&lt;/span&gt;  &lt;/dd&gt;&lt;dd&gt;&lt;span style="font-size:85%;"&gt;&lt;span class="docEmphasis"&gt;randomjq&lt;/span&gt;&lt;/span&gt; &lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Alternatively, John might have a username that appears totally  unrelated to his real name, like &lt;span class="docEmphasis"&gt;avocado&lt;/span&gt; or &lt;span class="docEmphasis"&gt;t42&lt;/span&gt;. Having a username similar to your own name is  merely a matter of convenience.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;In some cases, having an unrelated name may be a desired  feature because it either masks your identity in email and online chat rooms, or  projects an image different from your usual one: &lt;span class="docEmphasis"&gt;tall62&lt;/span&gt;, &lt;span class="docEmphasis"&gt;fungirl&lt;/span&gt;, &lt;span class="docEmphasis"&gt;anonymus&lt;/span&gt;, &lt;span class="docEmphasis"&gt;svelte19&lt;/span&gt;, and  &lt;span class="docEmphasis"&gt;richguy&lt;/span&gt;. Of course, as we noted in the last  chapter, "handles" that don't match one's real name can also be used to hide the  true identity of someone doing something unethical or illegal. Be cautious about  drawing conclusions about someone based on the email name or account name that  they present.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Most organizations require that usernames be at least three  characters long. Single-character usernames are simply too confusing for most  people to deal with, no matter how easy you might think it would be to be user  &lt;span class="docEmphasis"&gt;i&lt;/span&gt; or &lt;span class="docEmphasis"&gt;x&lt;/span&gt;. Usernames  that are two characters long are also confusing for some people, because they  usually don't provide enough information to match a name in memory: who was  &lt;span class="docEmphasis"&gt;zt@ex.com&lt;/span&gt;, anyway? In general, names with little  intrinsic meaning, such as &lt;span class="docEmphasis"&gt;t42xp96wl&lt;/span&gt;, can also  cause confusion because they are more difficult for correspondents to  remember.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some organizations assign usernames using standardized rules,  such as the first initial of a person's first name and then the first six  letters of their last name, optionally followed by a number. Other organizations  let users pick their own names. Some organizations and online services assign an  apparently random string of characters as the usernames; although this is  generally not popular, it can improve security—especially if these usernames are  not used for electronic mail. Although some randomly generated strings can be  hard to remember, there are several algorithms that generate easy-to-remember  random strings by using a small number of mnemonic rules; typical usernames  generated by these systems are &lt;span class="docEmphasis"&gt;xxp44&lt;/span&gt; and &lt;span class="docEmphasis"&gt;acactt&lt;/span&gt;. If you design a system that gives users  randomly generated usernames, it is a good idea to let people reject a username  and ask for another, lest somebody gets stuck with a hard-to-remember username  like &lt;span class="docEmphasis"&gt;xp9uu6wi&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix also has special accounts that are used for administrative  purposes and special system functions. These accounts are not normally used by  individual users. &lt;a name="puis3-CHP-4-ITERM-6072"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.2 Authenticating Users&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6073"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6074"&gt;&lt;/a&gt;After you tell Unix who you are, you must prove  your identity to a certain degree of confidence (trust). This process is called  &lt;i&gt;authentication&lt;/i&gt;. Classically, there are three different ways that you can  authenticate yourself to a computer system, and you use one or more of them each  time:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;You can tell the computer something that you know (for example,  a password).&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;You can present the computer with something you have (for  example, a card key).&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;You can let the computer measure something about you (for  example, your fingerprint).&lt;/p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;/span&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;None of these systems is foolproof. For example, by  eavesdropping on your terminal line, somebody can learn your password. By  attacking you at gunpoint, somebody can steal your card key. And if your  attacker has a knife, you might even lose your finger! In general, the more  trustworthy the form of authentication, the more aggressive an attacker must be  to compromise it. In the past, the most trustworthy authentication techniques  have also been the most difficult to use, although this is slowly  changing.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.3 Authenticating with Passwords&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6075"&gt;&lt;/a&gt;Passwords are the simplest  form of authentication: they are a secret that you share with the computer. When  you log in, you type your password to prove to the computer that you are who you  claim to be. The computer ensures that the password you type matches the account  that you have specified. If it matches, you are allowed to proceed.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix does not display your password as you type it. This gives  you extra protection if the transcript of your session is being logged or if  somebody is watching over your shoulder as you type—a technique that is  sometimes referred to as &lt;i&gt;shoulder surfing&lt;/i&gt;&lt;a name="puis3-CHP-4-ITERM-6076"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6077"&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-SIDEBAR-1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;Why Authenticate?&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Traditionally desktop personal computers running the Windows or  Macintosh operating systems, handheld computers, and personal organizers did not  require that users authenticate themselves before the computer provided the  requested information. The fact that these computers employed no passwords or  other authentication techniques made them easier to use.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Likewise, many of the research groups that originally developed  the Unix operating system did not have passwords for individual users—often for  the same reason that they shied away from locks on desks and office doors. In  these environments, trust, respect, and social convention were very powerful  deterrents to information theft and destruction. When computer systems required  passwords, often times many people shared the same password—&lt;tt&gt;password&lt;/tt&gt;,  for example.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unfortunately, the lack of authentication made these computers  easier for many people to use—this included both the machine's primary user and  anybody else who happened to be in the area. As these systems were connected to  modems or external networks, the poor authentication practices that had grown up  in the closed environment became a point of vulnerability, especially when other  systems based their trust on the authenticity of the identity determined  locally. Vulnerabilities frequently led to successful attacks. There have been  many cases in which a single easily compromised account has endangered the  security of an entire installation or network.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;In today's highly networked world, proper authentication of  authorized users is a core requirement of any computer that is trusted with  confidential information. The challenge that computer developers now face is to  produce systems that provide strong authentication while simultaneously  providing ease of use.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Conventional passwords have been part of Unix since its early  years. The advantage of this system is that it runs without any special  equipment, such as smartcard readers or fingerprint scanners.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The disadvantage of conventional passwords is that they are  easily captured and reused—especially in a network-based environment. Although  passwords &lt;span class="docEmphasis"&gt;can&lt;/span&gt; be used securely and effectively,  doing so requires constant vigilance to make sure that an unencrypted password  is not inadvertently sent over the network, allowing it to be captured with a &lt;a name="puis3-CHP-4-ITERM-6078"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6079"&gt;&lt;/a&gt;password  sniffer. Passwords can also be stolen if they are typed on a computer that has  been compromised with a &lt;a name="puis3-CHP-4-ITERM-6080"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6081"&gt;&lt;/a&gt;keystroke recorder. Today, even unsophisticated  attackers can use such tools to capture passwords. Indeed, the only way to  safely use a Unix computer remotely over a network such as the Internet is to  use one-time passwords, encryption, or both (see &lt;a class="docLink" href="0596003234_puis3-chp-4-sect-3.html#puis3-CHP-4-SECT-3.3"&gt;Section 4.3.3&lt;/a&gt;  later in this chapter and also see &lt;a class="docLink" href="0596003234_puis3-chp-7.html#puis3-CHP-7"&gt;Chapter 7&lt;/a&gt;).&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-3"&gt;[3]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-3"&gt;[3]&lt;/a&gt;&lt;/sup&gt; Well-chosen  passwords are still quite effective for most standalone systems with hardwired  terminals, and when used in cryptographic protocols with mechanisms to prevent  replay attacks.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unfortunately, we live in an imperfect world, and most Unix  systems continue to depend upon reusable passwords for user authentication. Be  careful!&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.3.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.3.1 Entering your password&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6082"&gt;&lt;/a&gt;When you log in, you tell  the computer who you are by typing your username at the login prompt (the &lt;span class="docEmphasis"&gt;identification&lt;/span&gt; step). You then type your password (in  response to the password prompt) to &lt;span class="docEmphasis"&gt;authenticate&lt;/span&gt;  that you are who you claim to be. For example:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;login: &lt;span class="docEmphBold"&gt;rachel&lt;/span&gt;&lt;br /&gt;password: &lt;span class="docEmphStrike"&gt;luV2-fred&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix does not display your password when you type it.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If the password that you supply with your username corresponds  to the password that is on file for the provided username, Unix logs you in and  gives you full access to the user's files, commands, and devices. If the  username and the password do not match, Unix does not log you in.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6083"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6084"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6085"&gt;&lt;/a&gt;On some  versions of Unix, if somebody tries to log into an account and supplies an  invalid password several times in succession, that account will become locked. A  locked account can be unlocked only by the system administrator. Locking has  three functions:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;It protects the system from attackers who persist in trying to  guess a password; before they can guess the correct password, the account is  shut down.&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;It lets you know that someone has been trying to break into  your account.&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;It lets your system administrator know that someone has been  trying to break into the computer.&lt;/p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;/span&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you find yourself locked out of your account, you should  contact your system administrator and get your password changed to something  new. Don't change your password back to what it was before you were locked  out.&lt;a name="puis3-CHP-4-ITERM-6086"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-4-ITERM-6087"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The automatic lockout feature can prevent unauthorized use, but  it can also be used to conduct &lt;a name="puis3-CHP-4-ITERM-6088"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6089"&gt;&lt;/a&gt;denial of service attacks, or by an attacker to  lock selected users out of the system so as to prevent discovery of his actions.  A practical joker can use it to annoy fellow employees or students. And you can  accidentally lock yourself out if you try to log in too many times before you've  had your morning coffee.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In our experience, the disadvantages of indefinite automatic  lockouts outweigh the benefits. A much better method is to employ an increasing  delay mechanism in the login. After a fixed number of unsuccessful logins, an  increasing delay can be inserted between each successive prompt. Implementing  such delays in a network environment requires maintaining a record of failed  login attempts, so that the delay cannot be circumvented by an attacker who  merely disconnects from the target machine and reconnects.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.3.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.3.2 Changing your password&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6090"&gt;&lt;/a&gt;You can change your password  with the Unix &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6091"&gt;&lt;/a&gt; command. You will first be asked to type your  old password, then a new one. By asking you to type your old password first,  &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; prevents somebody from walking up to a  terminal that you left yourself logged into and then changing your password  without your knowledge.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix makes you type the new password twice:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% passwd&lt;br /&gt;Changing password for sarah.&lt;br /&gt;Old password:&lt;span class="docEmphStrike"&gt;tuna4fis&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;New password: &lt;span class="docEmphStrike"&gt;nosSMi32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Retype new password: &lt;span class="docEmphStrike"&gt;nosSMi32&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If the two passwords you type don't match, your password  remains unchanged. This is a safety precaution: if you made a mistake typing the  new password and Unix only asked you once, then your password could be changed  to some new value and you would have no way of knowing that value.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-NOTE-258"&gt;&lt;/a&gt;&lt;/span&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/tip_yellow.gif" height="54" width="50" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;On systems that use Sun Microsystems &lt;a name="puis3-CHP-4-ITERM-6092"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6093"&gt;&lt;/a&gt;NIS or NIS+,  you may need to use the command &lt;span class="docEmphasis"&gt;yppasswd&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6094"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-4-ITERM-6095"&gt;&lt;/a&gt;or &lt;span class="docEmphasis"&gt;nispasswd&lt;/span&gt; to change your password. Except for having  different names, these programs work in the same way as &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;. However, when they run, they update your  password in the network database with NIS or NIS+. When this happens, your  password will be immediately available on other clients on the network. With  NIS, your password will be distributed during the next regular update.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;span class="docEmphasis"&gt;-r&lt;/span&gt; option to the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt; command can also be used under &lt;a name="puis3-CHP-4-ITERM-6096"&gt;&lt;/a&gt;Solaris. To change NIS or NIS+ passwords, the  format would be &lt;span class="docEmphasis"&gt;passwd -r nis&lt;/span&gt; or &lt;span class="docEmphasis"&gt;passwd -r nisplus&lt;/span&gt;, respectively. It is possible to have  a local machine password that is different from the one in the network database,  and that would be changed with &lt;span class="docEmphasis"&gt;passwd -r  files&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Even though passwords are not echoed when they are printed, the  Backspace or Delete key (or whatever key you have bound to the "erase" function)  will still delete the last character typed, so if you make a mistake, you can  correct it.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Once you have changed your password, your old password will no  longer work. &lt;span class="docEmphasis"&gt;Do not forget your new password!&lt;/span&gt; If  you forget your new password, you will need to have the system administrator set  it to something you can use to log in and try again.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-4"&gt;[4]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-4"&gt;[4]&lt;/a&gt;&lt;/sup&gt; And if you  are the &lt;a name="puis3-CHP-4-ITERM-6097"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6098"&gt;&lt;/a&gt;system administrator, you'll have to log in as  the superuser to change your password. If you've forgotten the superuser  password, you may need to take drastic measures to recover.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If your system administrator gives you a new password,  immediately change it to something else that only you know! Otherwise, if your  system administrator is in the habit of setting the same password for forgetful  users, your account may be compromised by someone else who has had a temporary  lapse of memory; see &lt;a class="docLink" href="#puis3-CHP-4-SIDEBAR-2"&gt;Password:  ChangeMe&lt;/a&gt; for an example.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/warning_yellow.gif" height="36" width="51" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you are a system manager and you need to change a user's  password, do not change the user's password to something like &lt;tt&gt;changeme&lt;/tt&gt;  or &lt;tt&gt;password&lt;/tt&gt;, and then rely on the user to change their password to  something else. Many users will not take the time to change their passwords but  will, instead, continue to use the password that you have inadvertently  "assigned" to them. Give the user a good password, and give that user a  different password from every other user whose password you have  reset.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.3.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.3.3 Verifying your new password&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6099"&gt;&lt;/a&gt;After you have changed your  password, try logging into your account with the new password to make sure that  you've entered the new password properly. Ideally, you should do this without  logging out, so you will have some recourse if you did not change your password  properly. This is especially crucial if you are logged in as &lt;span class="docEmphasis"&gt;root&lt;/span&gt; and you have just changed the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password!&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-SIDEBAR-2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;table border="1" cellspacing="0" width="90%"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;h2 class="docSidebarTitle"&gt;&lt;span style="font-size:85%;"&gt;Password: ChangeMe&lt;/span&gt;&lt;/h2&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;At one major university we know about, it was commonplace for  students to change their passwords and then be unable to log into their  accounts. Most often this happened when students tried to put control characters  into their passwords.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-4-FNOTE-5"&gt;[5]&lt;/a&gt;&lt;/sup&gt; Other times, students mistyped the  password and were unable to retype it again later. More than a few got so  carried away making up a fancy password that they couldn't remember their  passwords later.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Well, once a Unix password is entered, there is no way to  decrypt it and recover it. The only recourse is to have someone change the  password to another known value. Thus, the students would bring a picture ID to  the computing center office, where a staff member would change the password to  &lt;tt&gt;ChangeMe&lt;/tt&gt; and instruct them to immediately go down the hall to a  terminal room to do exactly that.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Late one semester shortly after the Internet worm incident  (which occurred in November of 1988), one of the staff decided to try running a  password cracker (see &lt;a class="docLink" href="0596003234_puis3-chp-19.html#puis3-CHP-19"&gt;Chapter 19&lt;/a&gt;) to see how many  student account passwords were weak. Much to the surprise of the staff member,  dozens of the student accounts had a password of &lt;tt&gt;ChangeMe&lt;/tt&gt;. Furthermore,  at least one of the other staff members also had that as a password! The policy  soon changed to one in which forgetful students were forced to enter a new  password on the spot.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some versions of the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6102"&gt;&lt;/a&gt; command support a special &lt;span class="docEmphasis"&gt;-f&lt;/span&gt; flag. If this flag is provided when the superuser  changes a person's password, that user is forced to change his or her password  the very next time he logs into the system. It's a good option for system  administrators to remember.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-4-FNOTE-5"&gt;[5]&lt;/a&gt;&lt;/sup&gt; The &lt;a name="puis3-CHP-4-ITERM-6100"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6101"&gt;&lt;/a&gt;control  characters ^@, ^C, ^G, ^H, ^J, ^M, ^Q, ^S, and ^[ should not be put in  passwords, because they can be interpreted by the system. If your users will log  in using &lt;span class="docEmphasis"&gt;xdm&lt;/span&gt;, users should avoid all control  characters, as &lt;span class="docEmphasis"&gt;xdm&lt;/span&gt; often filters them out. You  should also beware of control characters that may interact with your terminal  programs, terminal concentrator monitors, and other intermediate systems you may  use; for instance, the ~ character is often used as an escape character in &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt; and &lt;span class="docEmphasis"&gt;rsh&lt;/span&gt; sessions.  Finally, you may wish to avoid the # and @ characters, as some Unix systems  still interpret these characters with their ancient use as erase and kill  characters.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;One way to try out your new password is to use the &lt;a name="puis3-CHP-4-ITERM-6103"&gt;&lt;/a&gt;&lt;span class="docEmphasis"&gt;su&lt;/span&gt; command.  Normally, the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command is used to switch to  another account. But as the command requires that you type the password of the  account to which you are switching, you can effectively use the &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command to test the password of your own  account.&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% /bin/su nosmis&lt;br /&gt;password: &lt;span class="docEmphStrike"&gt;mypassword&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;(Of course, instead of typing &lt;tt&gt;nosmis&lt;/tt&gt; and &lt;span class="docEmphStrike"&gt;mypassword&lt;/span&gt; , use your own account name and  password.)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6104"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6105"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6106"&gt;&lt;/a&gt;If you're  using a machine that is on a network, you can use the &lt;span class="docEmphasis"&gt;telnet&lt;/span&gt;, &lt;span class="docEmphasis"&gt;rlogin&lt;/span&gt;, or &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt; programs to loop back through the network to log in  a second time by typing:&lt;/span&gt;&lt;/p&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;% ssh -l dawn &lt;span class="docEmphasis"&gt;localhost&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;dawn@loaclhost's password: &lt;span class="docEmphStrike"&gt;w3kfsc!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Last login: Sun Feb 3 11:48:45 on ttyb&lt;br /&gt;%&lt;/span&gt;&lt;/pre&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;You can replace &lt;span class="docEmphasis"&gt;localhost&lt;/span&gt; in the  above example with the name of your computer. This method is also useful when  testing a change in the &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password, as the  &lt;span class="docEmphasis"&gt;su&lt;/span&gt; command does not prompt for a password when  run by &lt;span class="docEmphasis"&gt;root&lt;/span&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you try one of the earlier methods and discover that your  password is not what you thought it was, you have a definite problem. To change  the password to something you do know, you will need the current password.  However, you don't know that password! You will need the help of the system  administrator to fix the situation. (That's why you shouldn't log out—if the  time is 2:00 a.m. on Saturday, you might not be able to reach the administrator  until Monday morning, and you might want to get some work done before then.)&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The &lt;a name="puis3-CHP-4-ITERM-6107"&gt;&lt;/a&gt;superuser (user &lt;span class="docEmphasis"&gt;root&lt;/span&gt;) can't decode the password of any user. However,  the system administrator can help you when you don't know what you've set your  password to by using the superuser account to set your password to something  known.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;"&gt; &lt;table align="center" bg border="0" cellpadding="1" cellspacing="0" width="90%" style="color:black;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td&gt; &lt;table bg border="0" cellpadding="6" cellspacing="0" width="100%" style="color:white;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" width="60"&gt;&lt;span style="font-size:85%;"&gt;&lt;img src="FILES/warning_yellow.gif" height="36" width="51" /&gt;&lt;/span&gt;&lt;/td&gt; &lt;td valign="top"&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6108"&gt;&lt;/a&gt;If you get email from your  system manager advising you that there are system problems and that you should  immediately change your password to &lt;tt&gt;tunafish&lt;/tt&gt; (or some other value),  &lt;span class="docEmphasis"&gt;disregard the message and report it to your system  management&lt;/span&gt;. These kinds of email messages are frequently sent by computer  criminals to novice users. The hope is that the novice user will comply with the  request and change his password to the one that is suggested—often with  devastating  results.&lt;/span&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-SECT-1.3.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;4.1.3.4 Changing another user's password&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-4-ITERM-6109"&gt;&lt;/a&gt;If you are running as the &lt;a name="puis3-CHP-4-ITERM-6110"&gt;&lt;/a&gt;superuser (or the network administrator, in the  case of NIS+), you can set the password of any user, including yourself, without  supplying the old password. You do this by supplying the username to the &lt;span class="docEmphasis"&gt;passwd&lt;/span&gt;&lt;a name="puis3-CHP-4-ITERM-6111"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-4-ITERM-6112"&gt;&lt;/a&gt; command when you invoke it: &lt;a name="puis3-CHP-4-ITERM-6113"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-4-ITERM-6114"&gt;&lt;/a&gt;&lt;/span&gt;&lt;pre style="font-weight: bold;"&gt;&lt;span style="font-size:85%;"&gt;# passwd cindy&lt;br /&gt;New password: &lt;span class="docEmphStrike"&gt;NewR-pas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Retype new password: &lt;span class="docEmphStrike"&gt;NewR-pas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;#&lt;/span&gt;&lt;/pre&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-427733562778795114?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/427733562778795114/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=427733562778795114' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/427733562778795114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/427733562778795114'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/logging-in-with-usernames-and-passwords.html' title='Logging in with Usernames and Passwords'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-1463679424442247042</id><published>2008-06-02T05:17:00.000-07:00</published><updated>2008-06-02T05:18:21.669-07:00</updated><title type='text'>Risk Assessment</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-3-ITERM-5923"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5924"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5925"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;The first  step in improving the security of your system is to answer these basic  questions:&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;What am I trying to protect and how much is it worth to me?&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;What do I need to protect against?&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;How much time, effort, and money am I willing to expend to  obtain adequate protection?&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;These questions form the basis of the process known as &lt;i&gt;risk  assessment&lt;/i&gt;. Risk assessment is a very important part of the computer  security process. You cannot formulate protections if you do not know what you  are protecting and what you are protecting those things against! After you know  your risks, you can then plan the policies and techniques that you need to  implement to reduce those risks.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;For example, if there is a risk of a power failure and if  availability of your equipment is important to you, you can reduce this risk by  installing an &lt;a name="puis3-CHP-3-ITERM-5926"&gt;&lt;/a&gt;uninterruptable power supply  (UPS).&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;3.2.1 Steps in Risk Assessment&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Risk assessment involves three key steps:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;ol class="docList" type="1"&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Identifying assets and their value&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Identifying threats&lt;/p&gt;&lt;/span&gt; &lt;/li&gt;&lt;li&gt;&lt;span style="font-weight: normal;"&gt; &lt;p class="docList"&gt;Calculating risks&lt;/p&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;/span&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;There are many ways to go about this process. One method with  which we have had great success is a series of in-house workshops. Invite a  broad cross-section of knowledgeable &lt;a name="puis3-CHP-3-ITERM-5927"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5928"&gt;&lt;/a&gt;users, managers, and executives from throughout  your organization. Over the course of a series of meetings, compose your lists  of assets and threats. Not only does this process help to build a more complete  set of lists, it also helps to increase awareness of security in everyone who  attends.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;An actuarial approach is more complex than necessary for  protecting a home computer system or very small company. Likewise, the  procedures that we present here are insufficient for a large company, a  government agency, or a major university. In cases such as these, many companies  turn to outside consulting firms with expertise in risk assessment, some of  which use specialized software to do assessments.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-2.1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;3.2.1.1 Identifying assets&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5929"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5930"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5931"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5932"&gt;&lt;/a&gt;Draw up a list of items you need to protect.  This list should be based on your business plan and common sense. The process  may require knowledge of applicable law, a complete understanding of your  facilities, and knowledge of your &lt;a name="puis3-CHP-3-ITERM-5933"&gt;&lt;/a&gt;insurance  coverage.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Items to protect include tangibles (disk drives, monitors,  network cables, backup media, manuals, etc.) and intangibles (ability to  continue processing, your customer list, public image, reputation in your  industry, access to your computer, your system's &lt;span class="docEmphasis"&gt;root&lt;/span&gt; password, etc.). The list should include  everything that you consider to be of value. To determine if something is  valuable, consider what the loss or damage of the item might cost in terms of  lost revenue, lost time, or the cost of repair or replacement.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Some of the items that should probably be in your asset list  include:&lt;/span&gt;&lt;/p&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Tangibles&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Computers&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Proprietary data&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Backups and archives&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Manuals, guides, books&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Printouts&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Commercial software distribution media&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Communications equipment and wiring&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Personnel records&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Audit records&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Intangibles&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;ul&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Safety and health of personnel&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Privacy of users&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Personnel passwords&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Public image and reputation&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Customer/client goodwill&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Processing availability&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Configuration information&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;You should take a larger view of these and related items rather  than simply considering the computer aspects. If you are concerned about someone  reading your internal financial reports, you should be concerned regardless of  whether they read them from a discarded printout or snoop on your email.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-2.1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h5 style="font-weight: bold;" class="docSection3Title"&gt;&lt;span style="font-size:85%;"&gt;3.2.1.2 Identifying threats&lt;/span&gt;&lt;/h5&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5934"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5935"&gt;&lt;/a&gt;The next step is to determine a list of threats  to your assets. Some of these threats will be environmental, and include fire,  earthquake, explosion, and flood. They should also include very rare but  possible events such as structural failure in your building, or the discovery of  asbestos in your computer room that requires you to vacate the building for a  prolonged time. Other threats come from &lt;a name="puis3-CHP-3-ITERM-5936"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5937"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5938"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5939"&gt;&lt;/a&gt;personnel and from outsiders. We list some  examples here:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Illness of key people&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Simultaneous illness of many personnel (e.g., flu epidemic)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Loss (resignation/termination/death) of key personnel&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Loss of phone/network services&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Loss of utilities (phone, water, electricity) for a short  time&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Loss of utilities (phone, water, electricity) for a prolonged  time&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Lightning strike&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Flood&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Theft of disks or tapes&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Theft of key person's laptop computer&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Theft of key person's home computer&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Introduction of a virus&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Bankruptcy of a key vendor or service provider&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Hardware failure&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Bugs in software&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Subverted employees&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Subverted third-party personnel (e.g., vendor maintenance)&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Labor unrest&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Political terrorism&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Random "hackers" getting into your machines&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Users posting inflammatory or proprietary information on the  Web&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;3.2.2 Review Your Risks&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Risk assessment should not be done only once and then  forgotten. Instead, you should update your assessment periodically. In addition,  the threat assessment portion should be redone whenever you have a significant  change in operation or structure. Thus, if you reorganize, move to a new  building, switch vendors, or undergo other major changes, you should reassess  the threats and potential losses.&lt;a name="puis3-CHP-3-ITERM-5940"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-3-ITERM-5941"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5942"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5943"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5944"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" href="0596003234_"&gt;&lt;img src="FILES/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-1463679424442247042?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/1463679424442247042/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=1463679424442247042' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1463679424442247042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/1463679424442247042'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/risk-assessment.html' title='Risk Assessment'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-5464261179042286805</id><published>2008-06-02T05:16:00.000-07:00</published><updated>2008-06-02T05:17:29.403-07:00</updated><title type='text'>Planning Your Security Needs</title><content type='html'>&lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;There are many different kinds of computer security, and many  different definitions. Rather than present a formal definition, this book takes  a practical approach and discusses the categories of protection you should  consider. Basically, we a computer is secure if it behaves the way you expect it  to. We believe that secure computers are usable computers and, likewise, that  computers that cannot be used, for whatever the reason, are not very  secure.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;3.1.1 Types of Security&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5900"&gt;&lt;/a&gt;Within our broad definition  of computer security, there are many different types of security that both users  and administrators of computer systems need to be concerned about:&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5901"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5902"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5903"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5904"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5905"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5906"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5907"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5908"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5909"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5910"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5911"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5912"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5913"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5914"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5915"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5916"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5917"&gt;&lt;/a&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-ITERM-5918"&gt;&lt;/a&gt;&lt;/span&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Confidentiality &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5901"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5902"&gt;&lt;/a&gt;Protecting information from being read or copied  by anyone who has not been explicitly authorized by the owner of that  information. This type of security includes not only protecting the information  &lt;span class="docEmphasis"&gt;in toto&lt;/span&gt;, but also protecting individual pieces of  information that may seem harmless by themselves but can be used to infer other  confidential information.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Data integrity &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5903"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5904"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5905"&gt;&lt;/a&gt;Protecting  information (including programs) from being deleted or altered in any way  without the permission of the owner of that information. Information to be  protected also includes items such as accounting records, backup tapes, file  creation times, and documentation.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Availability &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5906"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5907"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5908"&gt;&lt;/a&gt;Protecting  your services so they're not degraded or made unavailable (crashed) without  authorization. If the systems or data are unavailable when an authorized user  needs them, the result can be as bad as having the information that resides on  the system deleted.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Consistency &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5909"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5910"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5911"&gt;&lt;/a&gt;Making sure  that the system behaves as expected by the authorized users. If software or  hardware suddenly starts behaving radically different from the way it used to  behave, especially after an upgrade or a bug fix, a disaster could occur.  Imagine if your &lt;span class="docEmphasis"&gt;ls&lt;/span&gt; command occasionally deleted  files instead of listing them! This type of security can also be considered as  ensuring the &lt;span class="docEmphasis"&gt;correctness&lt;/span&gt; of the data and software  you use.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Control &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5912"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5913"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5914"&gt;&lt;/a&gt;Regulating  access to your system. If unknown and unauthorized individuals (or software) are  found on your system, they can create a big problem. You must worry about how  they got in, what they might have done, and who or what else has also accessed  your system. Recovering from such episodes can require considerable time and  expense in rebuilding and reinstalling your system, and verifying that nothing  important has been changed or disclosed—even if nothing actually happened.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;Audit &lt;/span&gt;&lt;/i&gt;&lt;/span&gt; &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5915"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5916"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5917"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5918"&gt;&lt;/a&gt;As well as worrying about unauthorized users,  you need to realize that authorized users sometimes make mistakes, or even  commit malicious acts. In such cases, you need to determine what was done, by  whom, and what was affected. The only sure way to achieve these results is by  having some incorruptible record of activity on your system that positively  identifies the actors and actions involved. In some critical applications, the  audit trail may be extensive enough to allow "undo" operations to help restore  the system to a correct state.&lt;/span&gt;&lt;/p&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Although all of these aspects of security are important,  different organizations will view each with a different amount of importance.  This variance is because different organizations have different security  concerns, and must set their priorities and policies accordingly. For  example:&lt;/span&gt;&lt;/p&gt; &lt;dl style="font-weight: bold;" class="docList"&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;A banking environment&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;In such an environment, integrity, control, and auditability  are usually the most critical concerns, while confidentiality and availability  are less important.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;A national defense-related system that processes  classified information&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;In such an environment, confidentiality may come first, and  availability last. In some highly classified environments, officials may prefer  to blow up a building rather than allow an attacker to access the information  contained within that building's walls.&lt;/span&gt;&lt;/p&gt; &lt;/dd&gt;&lt;dt&gt;&lt;span style="font-size:85%;"&gt;&lt;i&gt;&lt;span class="docPubcolor"&gt;A university&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;  &lt;/dt&gt;&lt;dd&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;In such an environment, integrity and availability may be the  most important requirements. It is more important to ensure that students can  work on their papers, than that administrators can track the precise times their  students accessed their accounts.&lt;/span&gt;&lt;/p&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;If you are a security administrator, you need to thoroughly  understand the needs of your operational environment and users. You then need to  define your procedures accordingly. Not everything we describe in this book will  be appropriate in every environment.&lt;a name="puis3-CHP-3-ITERM-5919"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-3-SECT-1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;3.1.2 Trust&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-3-ITERM-5920"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-3-ITERM-5921"&gt;&lt;/a&gt;Security professionals generally don't refer to  a computer system as being "secure" or "unsecure."&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-3-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt; Instead, we use the word  &lt;i&gt;trust&lt;/i&gt; to describe our level of confidence that a computer system will  behave as expected. This acknowledges that absolute security can never be  present. We can only try to approach it by developing enough trust in the  overall configuration to warrant using it for the applications we have in  mind.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-3-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt; We use the  term &lt;a name="puis3-CHP-3-ITERM-5922"&gt;&lt;/a&gt;&lt;i&gt;unsecure&lt;/i&gt; to mean having weak  security, and &lt;i&gt;insecure&lt;/i&gt;&lt;/span&gt; to describe the state of mind of people running  unsecure systems.&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Developing adequate trust in your computer systems requires  careful thought and planning. Operational decisions should be based on sound  policy and risk analysis. In the remainder of this chapter, we'll discuss the  general procedures for creating workable security plans and policies. The topic  is too big, however, for us to provide an in-depth treatment:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;If you are at a company, university, or government agency, we  suggest that you contact your internal audit and/or risk management department  for additional help (they may already have some plans and policies in place that  you should know about). You can also learn more about this topic by consulting  some of the works referenced in &lt;a class="docLink" href="0596003234_puis3-app-c.html#puis3-APP-C"&gt;Appendix C&lt;/a&gt;. You may also wish  to enlist a consulting firm. For example, many large accounting and audit firms  now have teams of professionals that can evaluate the security of computer  installations.&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;If you are with a smaller institution or are dealing with a  personal machine, you may decide that we cover these issues in greater detail  than you actually need. Nevertheless, the information contained in this chapter  should help guide you in setting your priorities.&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" href="0596003234_"&gt;&lt;img src="FILES/pixel.gif" border="0" height="1" width="1" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-5464261179042286805?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/5464261179042286805/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=5464261179042286805' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5464261179042286805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/5464261179042286805'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/planning-your-security-needs.html' title='Planning Your Security Needs'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-2290174170482179513</id><published>2008-06-02T05:13:00.000-07:00</published><updated>2008-06-02T05:14:31.958-07:00</updated><title type='text'>Security and Unix</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-2-ITERM-5849"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5850"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Many years ago, &lt;/span&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-ITERM-5851"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Dennis Ritchie said this about the security of  Unix: "It was not designed from the start to be secure. It was designed with the  necessary characteristics to make security serviceable." In other words, Unix  can be &lt;/span&gt;&lt;span style="font-weight: bold;" class="docEmphasis"&gt;secured&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;, but any particular Unix system  may not be secure when it is distributed.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unix is a multiuser, &lt;a name="puis3-CHP-2-ITERM-5852"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5853"&gt;&lt;/a&gt;multitasking operating system. &lt;i&gt;Multiuser&lt;/i&gt;  means that the operating system allows many different people to use the same  computer at the same time. &lt;i&gt;Multitasking&lt;/i&gt; means that each user can run many  different programs simultaneously.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;One of the natural functions of such operating systems is to  prevent different people (or programs) using the same computer from interfering  with each other. Without such protection, a wayward program (perhaps written by  a student in an introductory computer science course) could affect other  programs or other users, could accidentally delete files, or could even crash  (halt) the entire computer system. To keep such disasters from happening, some  form of computer security has always had a place in the Unix design  philosophy.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;But Unix security provides more than mere memory protection.  Unix has a sophisticated security system that controls the ways users access  files, modify system databases, and use system resources. Unfortunately, those  mechanisms don't help much when the systems are misconfigured, are used  carelessly, or contain buggy software. Nearly all of the security holes that  have been found in Unix over the years have resulted from these kinds of  problems rather than from shortcomings in the intrinsic design of the system.  Thus, nearly all Unix vendors believe that they can (and perhaps do) provide a  reasonably secure Unix operating system. We believe that Unix systems can be  fundamentally more secure than other common operating systems. However, there  are influences that work against better security in the Unix environment.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-2.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.2.1 Expectations&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The biggest problem with improving Unix security is arguably  one of expectations. Many users have grown to expect Unix to be configured in a  particular way. Their experience with Unix in academic, hobbyist, and research  settings has always been that they have access to most of the directories on the  system and that they have access to most commands. Users are accustomed to  making their files world-readable by default. Users are also often accustomed to  being able to build and install their own software, frequently requiring system  privileges to do so. The trend in "free" versions of Unix for personal computer  systems has amplified these expectations.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unfortunately, all of these expectations are contrary to good  security practice in the business world. To have stronger security, system  administrators must often curtail access to files and commands that are not  required for users to do their jobs. Thus, someone who needs email and a text  processor for his work should not also expect to be able to run the network  diagnostic programs and the C compiler. Likewise, to heighten security, users  should not be able to install software that has not been examined and approved  by a trained and authorized individual.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The tradition of &lt;a name="puis3-CHP-2-ITERM-5854"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5855"&gt;&lt;/a&gt;open access is strong, and is one of the reasons  that Unix has been attractive to so many people. Some users argue that to  restrict these kinds of access would make the systems something other than Unix.  Although these arguments may be valid, restrictive measures are needed in  instances where strong security is required.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5856"&gt;&lt;/a&gt;At the same time,  administrators can strengthen security by applying some general security  principles, in moderation. For instance, rather than removing all compilers and  libraries from each machine, these tools can be protected so that only users in  a certain user group can access them. Users with a need for such access, and who  can be trusted to take due care, can be added to this group. Similar methods can  be used with other classes of tools, too, such as network monitoring  software.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The most critical aspect of enhancing Unix security is to get  users themselves to participate in the alteration of their expectations. The  best way to meet this goal is not by decree, but through education and  motivation. Technical security measures are crucial, but experience has proven  repeatedly that people problems are not amenable to technological solutions.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Many users started using Unix in an environment that was less  threatening than the one they face today. By educating users about the dangers  of lax security, and how their cooperation can help to thwart those dangers, the  security of the system is increased. By properly motivating users to participate  in good security practice, you make them part of the security mechanism. Better  education and motivation work well only when applied together, however;  education without motivation may mean that security measures are not actually  applied, and motivation without education leaves gaping holes in what is  done.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-2.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.2.2 Software Quality&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5857"&gt;&lt;/a&gt;Large portions of the Unix  operating system and utilities that people take for granted were written as  student projects, or as quick "hacks" by software developers inside research  labs or by home hobbyists experimenting with Linux. These programs were not  formally designed and tested: they were put together and &lt;a name="puis3-CHP-2-ITERM-5858"&gt;&lt;/a&gt;debugged on the fly.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt; The result is a large  collection of tools and OS code that usually works, but sometimes fails in  unexpected and spectacular ways. Utilities were not the only things written by  non-experts. Much of BSD Unix, including the networking code, was written by  students as research projects of one sort or another—and these efforts sometimes  ignored existing standards and conventions. Many of the drivers and extensions  to &lt;a name="puis3-CHP-2-ITERM-5859"&gt;&lt;/a&gt;Linux have also been written and tested  under varying levels of rigor, and often by programmers with less training and  experience than Berkeley graduate students.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-7"&gt;[7]&lt;/a&gt;&lt;/sup&gt; As one of  this book's technical reviewers suggests, developers today may be even less  likely to spend time in the careful design of code than in the past. In the days  when computers ran slowly and compile time was a scarce and valuable resource,  time spent ensuring that the program would behave properly when compiled was a  good investment. Today, software compilation is so fast that the temptation to  repeatedly compile, test, debug, and recompile may lead to a greater reliance on  discovering bugs in testing, rather than preventing them in  design.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5860"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5861"&gt;&lt;/a&gt;This analysis is not intended to cast aspersions  on the abilities of those who wrote all this code; we wish only to point out  that most of today's versions of Unix were not created as carefully designed and  tested systems. Indeed, a considerable amount of the development of Unix and its  utilities occurred at a time when good software engineering tools and techniques  were not yet developed or readily available.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt; The fact that occasional  bugs are discovered that result in compromises of the security of some systems  should be no surprise! (However, we do note that there is a very large range  between, for example, the frequency of security flaws announced for OpenBSD and  Red Hat Linux.)&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-8"&gt;[8]&lt;/a&gt;&lt;/sup&gt; Some would  argue that they are still not available. Few academic environments currently  have access to modern software engineering tools because of their cost, and few  vendors are willing to provide copies at prices that academic institutions can  afford. It is certainly the case that typical home contributors to a *BSD or  Linux system code base do not have access to advanced software engineering tools  (even if they know how to use them).&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Unfortunately, two things are not occurring as a result of the  discovery of faults in the existing code. The first is that software designers  do not seem to be learning from past mistakes. Consider that &lt;a name="puis3-CHP-2-ITERM-5862"&gt;&lt;/a&gt;buffer overruns (mostly resulting from  fixed-length buffers and functions that do not check their arguments) have been  recognized as a major problem area for over four decades, yet critical software  containing such bugs continues to be written—and exposed. For instance, a  fixed-length buffer overrun in the &lt;span class="docEmphasis"&gt;gets( )&lt;/span&gt;  library call was one of the major propagation modes of the Internet worm of  1988, yet, as we were working on the second edition of this book in late 1995,  news of yet another buffer overrun security flaw surfaced—this time in the  BSD-derived &lt;span class="docEmphasis"&gt;syslog( )&lt;/span&gt; library call. During  preparation of the third edition in 2002, a series of security advisories were  being issued for the &lt;a name="puis3-CHP-2-ITERM-5863"&gt;&lt;/a&gt;Apache web server, the  &lt;span class="docEmphasis"&gt;ssh&lt;/span&gt; secure login server, and various Microsoft  programs, all because of buffer overflows. It is inexcusable that software  continues to be formally released with these kinds of problems in place.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;A more serious problem than any particular flaw is the fact  that few, if any, vendors are performing an organized, well-designed program of  design and testing on the software they provide. Although many vendors test  their software for compliance with industry "standards," few apparently test  their software to see what it does when presented with unexpected data or  conditions. According to one study, as much as 40% of the utilities on some  machines may have significant problems.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt; One might think that vendors would be  eager to test their new versions of the software to correct lurking bugs.  However, as more than one vendor's software engineer has told us, "The customers  want their Unix—including the flaws—exactly like every other implementation.  Furthermore, it's not good business: customers will pay extra for performance,  but not for better testing."&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-9"&gt;[9]&lt;/a&gt;&lt;/sup&gt; See the  reference to the papers by Barton Miller, et al., given in &lt;a class="docLink" href="0596003234_puis3-app-c.html#puis3-APP-C"&gt;Appendix C&lt;/a&gt;. Note that they  found similar problems in Windows, so the problems are clearly not limited to  Unix-like systems.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;As long as users demand strict conformance of behavior to  existing versions of the programs, and as long as software quality is not made a  fundamental acquisition criterion by those same users, vendors and producers  will most likely do very little to systematically test and fix their software.  Formal standards, such as the &lt;a name="puis3-CHP-2-ITERM-5864"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5865"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5866"&gt;&lt;/a&gt;ANSI C  standard and POSIX standard help perpetuate and formalize these weaknesses, too.  For instance, the ANSI C standard&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt; perpetuates the &lt;span class="docEmphasis"&gt;gets( )&lt;/span&gt; library call, forcing Unix vendors to support  the call, or to issue systems at a competitive disadvantage because they are not  in compliance with the standard.&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-10"&gt;[10]&lt;/a&gt;&lt;/sup&gt; ANSI  X3J11.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;We should note that these problems are not confined to the  commercial versions of Unix. Many of the open software versions of Unix also  incorporate shoddy software. In part, this is because contributors have variable  levels of skill and training. Furthermore, these contributors are generally more  interested in providing new functionality than they are in testing and fixing  flaws in existing code. There are some exceptions, such as the careful code  review conducted on &lt;a name="puis3-CHP-2-ITERM-5867"&gt;&lt;/a&gt;OpenBSD, but,  paradoxically, the code that is more carefully tested and developed in the open  software community also seems to be the code that is least used.&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-2.3"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.2.3 Add-on Functionality Breeds Problems&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5868"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5869"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5870"&gt;&lt;/a&gt;One final  influence on Unix security involves the way that new functionality has been  added over the years. Unix is often cited for its flexibility and reuse  characteristics; therefore, new functions are constantly built on top of Unix  platforms and are eventually integrated into released versions. Unfortunately,  the addition of new features is often done without understanding the assumptions  that were made with the underlying mechanisms and without concern for the added  complexity presented to the system operators and maintainers. Applying the same  features and code in a heterogeneous computing environment can also lead to  problems.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5871"&gt;&lt;/a&gt;As a special case, consider  how large-scale computer networks such as the Internet have dramatically changed  the security ground rules from those under which Unix was developed. Unix was  originally developed in an environment where computers did not connect to each  other outside of the confines of a small room or research lab. Networks today  interconnect hundreds of thousands of machines, and millions of users, on every  continent in the world. For this reason, each of us confronts issues of computer  security directly: a doctor in a major hospital might never imagine that a  postal clerk on the other side of the world could pick the lock on her desk  drawer to rummage around her files, yet this sort of thing happens on a regular  basis to "virtual desk drawers" on the Internet.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Most colleges and many high schools now grant network access to  all of their students as a matter of course. The number of primary schools with  network access is also increasing, with initiatives in many U.S. states to put a  networked computer in every classroom. Granting telephone network access to a  larger number of people increases the chances of telephone abuse and fraud, just  as granting widespread computer network access increases the chances that the  access will be used for illegitimate purposes. Unfortunately, the alternative of  withholding access is equally unappealing. Imagine operating without a telephone  because of the risk of receiving prank calls!&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The foundations and traditions of Unix network security were  profoundly shaped by the earlier, more restricted view of networks, and not by  our more recent experiences. For instance, the concept of user IDs and group IDs  controlling access to files was developed at a time when the typical Unix  machine was in a physically secure environment. On top of this was added remote  manipulation commands such as &lt;span class="docEmphasis"&gt;rlogin&lt;/span&gt; and &lt;span class="docEmphasis"&gt;rcp&lt;/span&gt; that were designed to reuse the &lt;a name="puis3-CHP-2-ITERM-5872"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5873"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5874"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5875"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5876"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5877"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5878"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5879"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5880"&gt;&lt;/a&gt;user-ID/group-ID paradigm with the concept of  "trusted ports" for network connections. Within a local network in a closed lab,  using only relatively slow computers, this design (usually) worked well. But  now, with the proliferation of workstations and non-Unix machines on  international networks, this design, with its implicit assumptions about  restricted access to the network, leads to major weaknesses in security.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-11"&gt;[11]&lt;/a&gt;&lt;/sup&gt; Internet  pioneer &lt;a name="puis3-CHP-2-ITERM-5881"&gt;&lt;/a&gt;Bob Metcalf warned of these dangers  in 1973, in RFC 602. That warning, and others like it, went largely  unheeded.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Not all of these unsecure foundations were laid by Unix  developers. The IP protocol suite on which the Internet is based was developed  outside of Unix initially, and it was developed without a sufficient concern for  authentication and confidentiality. This lack of concern has enabled cases of &lt;a name="puis3-CHP-2-ITERM-5882"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5883"&gt;&lt;/a&gt;password  sniffing and&lt;a name="puis3-CHP-2-ITERM-5884"&gt;&lt;/a&gt; IP sequence spoofing to occur,  and these make news as "sophisticated" attacks.&lt;sup class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt;&lt;a class="docLink" href="0596003234_puis3-chp-11.html#puis3-CHP-11"&gt;Chapter 11&lt;/a&gt;.)&lt;/span&gt; (These attacks are  discussed in &lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-12"&gt;[12]&lt;/a&gt;&lt;/sup&gt; To be  fair, the designers of TCP/IP were aware of many of the problems. However, they  were more concerned about making everything work so they did not address many of  the problems in their design. The problems are really more the fault of people  trying to build critical applications on an experimental set of protocols before  the protocols were properly refined—a familiar problem.&lt;/span&gt;&lt;/p&gt;&lt;/blockquote&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Another facet of the problem has to do with the "improvements"  made by each vendor. Rather than attempting to provide a unified, simple  interface to system administration across platforms, each vendor has created a  new set of commands and functions. In many cases, improvements to the command  set have been available to the administrator. However, there are also now  hundreds (perhaps thousands) of new commands, options, shells, permissions, and  settings that the administrator of a heterogeneous computing environment must  understand and remember. Additionally, many of the commands and options are  similar to each other, but have different meanings depending on the environment  in which they are used. The result can often be disaster when the poor  administrator suffers momentary confusion about the system or has a small lapse  in memory. This complexity further complicates the development of tools that are  intended to provide cross-platform support and control. For a "standard"  operating system, Unix is one of the most nonstandard systems to administer.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;That such difficulties arise is both a tribute to Unix and a  condemnation. The robust nature of Unix enables it to accept and support new  applications by building on the old. However, existing mechanisms are sometimes  completely inappropriate for the tasks assigned to them. Rather than being a  condemnation of Unix itself, such shortcomings are actually an indictment of the  developers for failing to give more consideration to the human and functional  ramifications of building on the existing foundation.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Here, then, is a conundrum: to rewrite large portions of Unix  and the protocols underlying its environment, or to fundamentally change its  structure, would be to attack the very reasons that Unix has become so widely  used. Furthermore, such restructuring would be contrary to the spirit of  standardization that has been a major factor in the wide acceptance of Unix. At  the same time, without re-evaluation and some restructuring, there is serious  doubt about the level of trust that can be placed in the system. Ironically, the  same spirit of development and change is what has led Unix to its current &lt;a name="puis3-CHP-2-ITERM-5885"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5886"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5887"&gt;&lt;/a&gt;niche.&lt;a name="puis3-CHP-2-ITERM-5888"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-2.4"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.2.4 The Failed P1003.1e/2c Unix Security  Standard&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5889"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5890"&gt;&lt;/a&gt;In 1994, work was started within the Unix  community on develoing a set of security extensions to the Unix POSIX standard.  This standardization effort was known as POSIX P1003.1e/2c.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The ambitious project hoped to create a single Unix security  standard comprised of the key security building blocks missing from the  underlying Unix design. These included:&lt;/span&gt;&lt;/p&gt; &lt;ul style="font-weight: bold;"&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5891"&gt;&lt;/a&gt;Access control lists (ACLs),  so that specific individuals or groups of individuals could be given (or denied)  access to specific files&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Data labeling, allowing classified and confidential data to be  labeled as such&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Mandatory access control, so that individuals would be unable  to override certain security decisions made by the system management&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Capabilities that could be used to place restrictions on  processes running as the &lt;a name="puis3-CHP-2-ITERM-5892"&gt;&lt;/a&gt;superuser&lt;/span&gt;&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p class="docList"&gt;&lt;span style="font-size:85%;"&gt;Standardized auditing and logging&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Work on this project continued until October 1997 when, despite  good intentions on the part of the participants and the sponsoring vendors, the  draft standard was officially withdrawn and the P1003.1e and P1003.2c committees  were disbanded. The final drafts of the documents can be downloaded from &lt;a class="docLink" href="http://wt.xpilot.org/publications/posix.1e/default.htm" target="_blank"&gt;http://wt.xpilot.org/publications/posix.1e/&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Many factors were responsible for the failure of the  P1003.1e/2c standards efforts. Because the standards group sought to create a  single standard, areas of disagreement prevented the committee from publishing  and adopting smaller standards that represented the areas of consensus. Then a  year's worth of work was lost when the "source document" for the standard was  lost.&lt;/span&gt;&lt;/p&gt; &lt;p class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Today, most vendors that sell trusted versions of Unix  implement some aspects of the P1003.1e/2c draft standard. Furthermore, the draft  has been used as the basis of the Linux capabilities system and the BSD  filesystem ACLs. So even though the standards effort was not adopted, it has had  a lasting impact.&lt;/span&gt;&lt;/span&gt;&lt;a name="puis3-CHP-2-ITERM-5893"&gt;&lt;/a&gt; &lt;a name="puis3-CHP-2-ITERM-5894"&gt;&lt;/a&gt;&lt;/p&gt;&lt;script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1097974524828964182-2290174170482179513?l=it-solutions-ro.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://it-solutions-ro.blogspot.com/feeds/2290174170482179513/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1097974524828964182&amp;postID=2290174170482179513' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2290174170482179513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1097974524828964182/posts/default/2290174170482179513'/><link rel='alternate' type='text/html' href='http://it-solutions-ro.blogspot.com/2008/06/security-and-unix.html' title='Security and Unix'/><author><name>valyg1985</name><uri>http://www.blogger.com/profile/17470135600051268046</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1097974524828964182.post-3774283075107491115</id><published>2008-06-02T05:11:00.000-07:00</published><updated>2008-06-02T05:12:57.106-07:00</updated><title type='text'>History of Unix</title><content type='html'>&lt;script type="text/javascript"&gt;&lt;!-- google_ad_client = "pub-3809329970700690"; /* 250x250, created 5/20/08 */ google_ad_slot = "0122834328"; google_ad_width = 250; google_ad_height = 250; //--&gt;&lt;br /&gt;&lt;/script&gt;&lt;br /&gt;&lt;p class="docText"&gt;&lt;a name="puis3-CHP-2-ITERM-5766"&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;The roots of Unix&lt;/span&gt;&lt;sup style="font-weight: bold;" class="docFootnote"&gt;&lt;a class="docLink" href="#puis3-CHP-2-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt;&lt;span style="font-weight: bold;"&gt; go  back to the mid-1960s, when American Telephone and Telegraph, Honeywell, General  Electric, and the Massachusetts Institute of Technology embarked on a massive  project to develop an information utility. The goal was to provide computer  service 24 hours a day, 365 days a year—a computer that could be made faster by  adding more parts, much in the same way that a power plant can be made bigger by  adding more furnaces, boilers, and turbines. The project, heavily funded by the  Department of Defense Advanced Research Projects Agency (&lt;/span&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-ITERM-5767"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-ITERM-5768"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;ARPA, also  known as &lt;/span&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-ITERM-5769"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;DARPA), was called Multics.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;blockquote style="font-weight: bold;"&gt; &lt;p class="docFootnote"&gt;&lt;span style="font-size:85%;"&gt;&lt;sup&gt;&lt;a name="puis3-CHP-2-FNOTE-1"&gt;[1]&lt;/a&gt;&lt;/sup&gt; A more  comprehensive history of Unix, from which some of this chapter is derived, is  Peter Salus's book, &lt;span class="docEmphasis"&gt;A Quarter Century of UNIX&lt;/span&gt;&lt;/span&gt;  (Addison-Wesley).&lt;/p&gt;&lt;/blockquote&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-1.1"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.1.1 Multics: The Unix Prototype&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;&lt;a name="puis3-CHP-2-ITERM-5770"&gt;&lt;/a&gt;Multics (which stands for  &lt;span class="docEmphBold"&gt;Mult&lt;/span&gt;iplexed &lt;span class="docEmphBold"&gt;I&lt;/span&gt;nformation and &lt;span class="docEmphBold"&gt;C&lt;/span&gt;omputing &lt;span class="docEmphBold"&gt;S&lt;/span&gt;ervice) was  designed to be a modular system built from banks of high-speed processors,  memory, and communications equipment. By design, parts of the computer could be  shut down for service without affecting other parts or the users. Although this  level of processing is assumed for many systems today, such a capability was not  available when Multics was begun.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Multics was also designed with military security in mind, both  to be resistant to external attacks and to protect the users on the system from  each other&lt;i&gt;. &lt;/i&gt;By design, Top Secret, Secret, Confidential, and Unclassified  information could all coexist on the same computer: the Multics system was  designed to prevent information that had been classified at one level from  finding its way into the hands of someone who had not been cleared to see that  information. Multics eventually provided a level of security and service that is  still unequaled by many of today's computer systems—including, perhaps,  Unix.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;Great plans, but in 1969 the Multics project was far behind  schedule. Its creators had promised far more than they could deliver within  their projected time frame. Already at a disadvantage because of the distance  between its New Jersey laboratories and MIT, AT&amp;amp;T decided to pull out of the  Multics Project.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;That year, Ken &lt;a name="puis3-CHP-2-ITERM-5771"&gt;&lt;/a&gt;Thompson, an  AT&amp;amp;T researcher who had worked on Multics, took over an unused PDP-7  computer to pursue some of the ideas on his own. Thompson was soon joined by &lt;a name="puis3-CHP-2-ITERM-5772"&gt;&lt;/a&gt;Dennis Ritchie, who had also worked on Multics.  &lt;a name="puis3-CHP-2-ITERM-5773"&gt;&lt;/a&gt;Peter Neumann suggested the name &lt;i&gt;Unix&lt;/i&gt;  for the new system. The name was a pun on the name Multics and a backhanded slap  at the project that was continuing in Cambridge (which was indeed continued for  another decade and a half). Whereas Multics tried to do many things, Unix tried  to do one thing well: run programs. Strong security was not part of this goal.&lt;a name="puis3-CHP-2-ITERM-5774"&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:85%;"&gt;&lt;a style="font-weight: bold;" name="puis3-CHP-2-SECT-1.2"&gt;&lt;/a&gt;&lt;/span&gt; &lt;h4 style="font-weight: bold;" class="docSection2Title"&gt;&lt;span style="font-size:85%;"&gt;2.1.2 The Birth of Unix&lt;/span&gt;&lt;/h4&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;The smaller scope was all the impetus that the researchers  needed; an early version of Unix was operational several months before Multics.  Within a year, Thompson, Ritchie, and others rewrote Unix for Digital's new  PDP-11 computer.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;As AT&amp;amp;T's scientists added features to their system  throughout the 1970s, Unix evolved into a programmer's dream. The system was  based on compact programs, called &lt;a name="puis3-CHP-2-ITERM-5775"&gt;&lt;/a&gt;&lt;a name="puis3-CHP-2-ITERM-5776"&gt;&lt;/a&gt;&lt;i&gt;tools&lt;/i&gt;, each of which performed a single  function. By putting tools together, programmers could do complicated things.  Unix mimicked the way programmers thought. To get the full functionality of the  system, users needed access to all of these tools—and in many cases, to the  source code for the tools as well. Thus, as the system evolved, nearly everyone  with access to the machines aided in the creation of new tools and in the  debugging of existing ones.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;In 1973, Thompson rewrote most of Unix in Ritchie's newly  invented C programming language. &lt;a name="puis3-CHP-2-ITERM-5777"&gt;&lt;/a&gt;C was  designed to be a simple, portable language. Programs written in C could be moved  easily from one kind of computer to another—as was the case with programs  written in other high-level languages like FORTRAN—yet they ran nearly as fast  as programs coded directly in a computer's native machine language.&lt;/span&gt;&lt;/p&gt; &lt;p style="font-weight: bold;" class="docText"&gt;&lt;span style="font-size:85%;"&gt;At least, that was the theory. In practice, every different  kind of com
