In July, a British man was cleared of charges that he had downloaded child pornography. How? He claimed that a trojan-horse program had been the culprit; the program had downloaded the porn without his knowledge or consent. Now, a teenager in the U.K. has successfully used this defense for a hacking crime -- he claimed a trojan horse had infected his computer and used it to break into a remote corporate server. As CNN.com reports:
It's a fascinating defense -- because while it might at first blush seem scoffworthy, the fact is that computers these days are crammed full of more spyware than ever before. There are probably a half-dozen bots on your computer as we speak. They're communicating with the outside world, sending out requests, transmitting data, doing stuff of which you have no clue.
This is yet another aspect today's Turing world. We spend our days trying to screen out spam, or to pass spambot-screens so that we can use services like Yahoo mail or Ebay. In effect, we're constantly attempting to verify who's actually human, while also trying to prove our own humanness. The flip-side is also true: In a trojan-horse defense, you have to prove that the bot did it -- that when your computer sent out that HTTP request to load a page from a sketchy child-porn site, that it wasn't really you. There were no human hands on the keyboard.
I predict this area is going to become indescribably weirder in the years to come.
Posted by Clive Thompson at October 28, 2003 05:57 PM
Trackback Pings
TrackBack URL for this entry: http://www.collisiondetection.net/mt3/mt-tb.cgi/550
The Trojan defence is remarkable, with many companies joining the internet rat race ,there is always the problem of advertising for those companies. How can they bring their page to the knowladge of an innocent browser in view of the millions of web sites out there. If you have been browsing on the internet and suddenly you find yourself battling to close many web sites which have just poped up without your touching the key board you will have an idea of wut I mean. You close one and three of such sites opens up on it own.Accordingly, there are many things to be done with the computer.
The fact that a hacker or craker can use another person's computer as base for lauching attacks have been shown to be scientifically true. Maybe now I am writing this somebody remotely is using my IP address for something else.
God save us .
Posted by: Victor at November 28, 2003 3:03 PM
I know, it's pretty paranoia-inducing, eh?
Posted by: Clive at November 28, 2003 3:13 PM
Posted by: Online Casino at January 16, 2004 4:23 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Enoch at January 19, 2004 7:56 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Newton at January 19, 2004 7:57 PM
When Batman went home at the end of a night spent fighting crime, he put on a suit and tie and became Bruce Wayne. When Clark Kent saw a news story getting too hot, a phone booth hid his change into Superman. When you're programming, all the variables you juggle around are doing similar tricks as they present one face to you and a totally different one to the machine.
Posted by: Enoch at January 19, 2004 7:57 PM
Let's see an example by converting our favoriteNumber variable from a stack variable to a heap variable. The first thing we'll do is find the project we've been working on and open it up in Project Builder. In the file, we'll start right at the top and work our way down. Under the line:
Posted by: Bridget at January 19, 2004 7:58 PM
Note the new asterisks whenever we reference favoriteNumber, except for that new line right before the return.
Posted by: Emmett at January 19, 2004 7:58 PM
Our next line looks familiar, except it starts with an asterisk. Again, we're using the star operator, and noting that this variable we're working with is a pointer. If we didn't, the computer would try to put the results of the right hand side of this statement (which evaluates to 6) into the pointer, overriding the value we need in the pointer, which is an address. This way, the computer knows to put the data not in the pointer, but into the place the pointer points to, which is in the Heap. So after this line, our int is living happily in the Heap, storing a value of 6, and our pointer tells us where that data is living.
Posted by: Mary at January 19, 2004 7:59 PM
This back and forth is an important concept to understand in C programming, especially on the Mac's RISC architecture. Almost every variable you work with can be represented in 32 bits of memory: thirty-two 1s and 0s define the data that a simple variable can hold. There are exceptions, like on the new 64-bit G5s and in the 128-bit world of AltiVec
Posted by: Grace at January 19, 2004 7:59 PM
Being able to understand that basic idea opens up a vast amount of power that can be used and abused, and we're going to look at a few of the better ways to deal with it in this article.
Posted by: Wombell at January 19, 2004 8:00 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Leonard at January 19, 2004 8:00 PM
When Batman went home at the end of a night spent fighting crime, he put on a suit and tie and became Bruce Wayne. When Clark Kent saw a news story getting too hot, a phone booth hid his change into Superman. When you're programming, all the variables you juggle around are doing similar tricks as they present one face to you and a totally different one to the machine.
Posted by: Andrew at January 19, 2004 8:01 PM
Posted by: julia at January 24, 2004 8:14 PM
The Trojan defence is remarkable, with many companies joining the internet rat race ,there is always the problem of advertising for those companies. How can they bring their page to the knowladge of an innocent browser in view of the millions of web sites out there. If you have been browsing on the internet and suddenly you find yourself battling to close many web sites which have just poped up without your touching the key board you will have an idea of wut I mean. You close one and three of such sites opens up on it own.Accordingly, there are many things to be done with the computer.
The fact that a hacker or craker can use another person's computer as base for lauching attacks have been shown to be scientifically true. Maybe now I am writing this somebody remotely is using my IP address for something else.
God save us .
Posted by: Victor at November 28, 2003 3:03 PM
I know, it's pretty paranoia-inducing, eh?
Posted by: Clive at November 28, 2003 3:13 PM
Nice site. thx.
Posted by: Online Casino at January 16, 2004 4:23 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Enoch at January 19, 2004 7:56 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Newton at January 19, 2004 7:57 PM
When Batman went home at the end of a night spent fighting crime, he put on a suit and tie and became Bruce Wayne. When Clark Kent saw a news story getting too hot, a phone booth hid his change into Superman. When you're programming, all the variables you juggle around are doing similar tricks as they present one face to you and a totally different one to the machine.
Posted by: Enoch at January 19, 2004 7:57 PM
Let's see an example by converting our favoriteNumber variable from a stack variable to a heap variable. The first thing we'll do is find the project we've been working on and open it up in Project Builder. In the file, we'll start right at the top and work our way down. Under the line:
Posted by: Bridget at January 19, 2004 7:58 PM
Note the new asterisks whenever we reference favoriteNumber, except for that new line right before the return.
Posted by: Emmett at January 19, 2004 7:58 PM
Our next line looks familiar, except it starts with an asterisk. Again, we're using the star operator, and noting that this variable we're working with is a pointer. If we didn't, the computer would try to put the results of the right hand side of this statement (which evaluates to 6) into the pointer, overriding the value we need in the pointer, which is an address. This way, the computer knows to put the data not in the pointer, but into the place the pointer points to, which is in the Heap. So after this line, our int is living happily in the Heap, storing a value of 6, and our pointer tells us where that data is living.
Posted by: Mary at January 19, 2004 7:59 PM
This back and forth is an important concept to understand in C programming, especially on the Mac's RISC architecture. Almost every variable you work with can be represented in 32 bits of memory: thirty-two 1s and 0s define the data that a simple variable can hold. There are exceptions, like on the new 64-bit G5s and in the 128-bit world of AltiVec
Posted by: Grace at January 19, 2004 7:59 PM
Being able to understand that basic idea opens up a vast amount of power that can be used and abused, and we're going to look at a few of the better ways to deal with it in this article.
Posted by: Wombell at January 19, 2004 8:00 PM
This variable is then used in various lines of code, holding values given it by variable assignments along the way. In the course of its life, a variable can hold any number of variables and be used in any number of different ways. This flexibility is built on the precept we just learned: a variable is really just a block of bits, and those bits can hold whatever data the program needs to remember. They can hold enough data to remember an integer from as low as -2,147,483,647 up to 2,147,483,647 (one less than plus or minus 2^31). They can remember one character of writing. They can keep a decimal number with a huge amount of precision and a giant range. They can hold a time accurate to the second in a range of centuries. A few bits is not to be scoffed at.
Posted by: Leonard at January 19, 2004 8:00 PM
When Batman went home at the end of a night spent fighting crime, he put on a suit and tie and became Bruce Wayne. When Clark Kent saw a news story getting too hot, a phone booth hid his change into Superman. When you're programming, all the variables you juggle around are doing similar tricks as they present one face to you and a totally different one to the machine.
Posted by: Andrew at January 19, 2004 8:01 PM
Posted by: julia at January 24, 2004 8:14 PM