Saturday 9 November 2013

Types of Secondary Storage Media

There are several types of secondary storage media used today in the world, each of these can be compared to each other in terms of portability, speed and capacity. Here are discussions on some Secondary Storage Devices:

Magnetic Tape

Magnetic Tape is a recording medium consisting of a thin tape with a coating of a fine magnetic material, used for recording analogue or digital data. A device that stores computer data on magnetic tape is a tape drive. The capacity of tape media are generally on the same order as hard disk drives (The largest being about 5 Terabytes in 2011). Magnetic Tapes Generally transfer data a bit slower than hard drives, however magnetic tapes are cheaper and are more durable
               

Floppy Disk

Floppy Disks were an were a ubiquitous form of data storage between 1980's and early 2000's, However they have now been superseded by data storage methods with much greater capacity, such as USB flash drives. Floppy disks comes in 3 sizes: 8-inches, 5.5-inches and 3.5-inches. The capacities of Floppy disks vary between 1-250 Megabytes and these devices were very slow, reading data at rates of bytes and kbytes/second. However, most are very small and portable.

Hard Disk

The hard disk drive is the main, and usually largest data storage device in a computer. It is a non-volatile, random access digital magnetic data storage device. A hard drive is made up of platters which stored the data, and read/write heads to transfer data. A Hard Drive is generally the fastest of the secondary storage devices, and has the largest data storage capacicity, approximately the same as Magnetic Tapes. Hard drives however, are not very portable and are primarily used internally in a computer system. Some persons use hard drives externally as a form of storage and as a substitute for portable storage, hard drives used for these purposes are called external hard drives.
   
A Hard Disk is divided into tracks and sectors, Data on this hard disk is positioned into these tracks and sectors so they can be easily read by the heads and also to help reduce fragmentation on the hard disk. Below are 2 diagrams depicting how a hard disk is divided into tracks and sectors:
  
Data on a hard drive are accessed by two methods:
1. Fixed Head: Hard Disks with fixed heads have a read/write head for each track on the hard disk, since there is no moving of heads to access data, the data access time is generally faster for Fixed head Hard Drives.
2. Moving Head: A moving head hard disk is one in which one or more read-write heads are attached to a movable arm which allows each head to cover many tracks of information

Optical Disks

Optical disk is an electronic data storage medium from which data is read and written to by using a low-powered laser beam. It is flat, circular, plastic or glass disk on which data is stored in the form of light and dark pits. There are three basic types of optical disks: Read-only optical disks, Write once read many Optical disks and Rewritable Optical disks. Two main types of optical disks are:
CD - is an abbreviation of compact disk, and is a form of data storage that can transfer data up to the speed of 7800 KB/s. A standard 120 mm CD holds up to 700 MB of data, or about 70 minutes of audio. There are two types of CD: CD-ROM and CD-RW, CD-ROM are stands for CD-Read Only Memory and they function the same way Read Only Memory Does. CD-RW Stards for CD-Rewritable, these disks can be erased and rewritten at any time.

DVD: is an abbreviation of Digital Versatile Disc, and is an optical disc storage media format that can be used for data storage. The DVD supports disks with capacities of 4.7 GB to 17 GB and access rates of 600 KBps to 1.3 MBps. A standard DVD disc store up to 4.7 GB of data. There are two types of DVD's: DVD-ROM and DVD-RW. DVD-ROM are stands for DVD-Read Only Memory and they function the same way Read Only Memory Does. DVD-RW Stards for DVD-Rewritable, these disks can be erased and rewritten at any time.

Flash Drive

A flash drive is a small external storage device, typically the size of a human thumb that consists of flash memory. USB flash drives are removable and rewritable reads and writes to flash memory. They are a solid-state storage medium that's both inexpensive and durable. Currently, USB 2.0 flash drives on the market are able to reach a data transfer speed of 480 Mbit/s and USB 3.0 has transmission speeds of up to 5 Gbit/s. USB Flash drives vary in sizes from 8 Megabytes to 512 Gigabytes. More commonly used sizes vary from 2 Gigabytes -16 Gigabytes.

Flash Memory cards

Flash memory is a EEPROM non-volatile computer storage chip. These Memory cards currently vary in sizes between 1 Gigabytes -16 Gigabytes and they transfer data at a rate of approximately 14.65 MB/s. Flash memory cards have most of the same characteristics of a flash drive in that they are inexpensive and durable, and are very small. However Flash memory cards are Flat and have a size of about 1 inch * 0.75 inch with a thickness of about 2mm. Flash memory cards also have a smaller version which is used within cell phones; These smaller cards are about 6mmX3mm in size and are less than 1mm thick.
       


IP (Internet Protocol) Address - A Basic Overview

An IP address is an address (a binary number) assigned to devices on a computer network. This allows one device to communicate with another via the Internet. IP addresses allow all that are connected to the Internet to be differentiated from other devices. The two main functions of an IP address are (1) host and interface identification and (2) location addressing. IP stands for Internet Protocol. Protocols are a set of rules that allows communication and data passing between devices. The Internet Protocol governs internet activities that take place over the World Wide Web. Currently, there are two versions of IP addresses in use today, Internet Protocol version 4 (IPv4) and Internet Protocol version 6 (IPv6).

IPv4

The original version of IP Addressing used is IPv4. IPv4 addresses are 32 bits in size, therefore there can be 4,294,967,296 (232) unique IPv4 addresses. IPv4 addresses are represented by four decimal numbers, each ranging from 0-255 separated by dots (example – 192.168.123.233).

 

IPv6

Due to the enormous growth of the internet, IPv4 address space was exhausted, this resulted in the next generation of Internet Protocol, IPv6. The size of an IPv6 address is 128 bits, meaning this new address space provides 2^128 unique (approximately 340 trillion trillion trillion) IP addresses. An IPv6 address is represented by four hexadecimal numbers, each ranging from 0000-FFFF separated by colons (example – 03EF:BBBB:EF49:00F1).

Devices on a computer network can have either a Dynamic IP Address or a Static IP Address:
"Dynamic IP Addresses: are temporary and are assigned each time a computer accesses the Internet. They are, in effect, borrowed from a pool of IP addresses that are shared among various computers. Since a limited number of static IP addresses are available, many ISPs reserve a portion of their assigned addresses for sharing among their subscribers in this way. This lowers costs and allows them to service far more subscribers than they otherwise could.
Static IP Addresses are generally preferable for such uses as VOIP (Voice over Internet Protocol), online gaming, or any other purpose where users need to make it easy for other computers to locate and connect to them. Easy access can also be facilitated when using a dynamic IP address through the use of a dynamic DNS service, which enables other computers to find you even though you may be using a temporary, one-time IP address. This often entails an extra charge, however, so check with your ISP." - Referenced from http://whatismyipaddress.com/ip-address

Protect your FB Account from Hackers

A friend of mine logged into her account yesterday after 2 weeks of being off facebook, and was devastated to see that she had shared pornographic images with friends and family; I had a good laugh about it, but she was madd... After seeing an outburst of facebook accounts being hacked, including lots of my friends accounts, and reading a 2011 survey which showed that 30% of teen’s accounts had been hacked – by a friend!; i have decided to share some knowledge on things you can do to reduce the risk of your facebook account being hacked. So there are several things you can do to protect your account from being hacked, we will go through each one of them in detail here, and how to implement each one.

Ways to Protect your Account


Strong Password

The first and most important thing you can do to protect your account is to use a VERY STRONG password. Facebook allows and advises passwords to be a combination Upper and Lower case letters, numbers and other characters. People use common words, etc because they are easy to remember, so i'm not telling you not to use common words and forget your password after 1 day. However, if we use a combination of common words and dates and maybe patterns, we can thereby create a strong password. Take an example: Say I like cricket and use cricket India in my password, and my date of birth is 2011-10-15th. A strong password would be a combination of these, and maybe putting in uppercase somewhere there, so we can have a password like "Cricket_2011-10-15_India". That there is a very strong password, yet very easy to remember. Note: This is not my password, so don't go trying it.

Enable Facebook Security

Facebook has already implemented some mechanisms to provide security features for your account. So, lets get to securing your account; on the facebook menu bar at the top to the far right there is a little arrow, when you click on it, there is a nice dropdown there. From that dropdown, select "Account settings" and this will take you to a page with your account settings.

When on the Account Settings page, there is a menu on the left of your screen, Click on the Security tab from that menu, and you will be taken to a page looking like this:

On this page you would want to:
  • Security Question: Set a security Question.
  • Enable Secure browsing: enabling Secure browsing means that from now on you will be browsing facebook over a Secure Internet Connection. Secure Connections can reduce the risk of successful hacking attacks by over 90% (More on secure connections at: http://cleverlogic.net/articles/secure-socket-layer-overview).
  • Login Notifications: Enable Login notifications.
  • Setup Recognized Devices: This is a process of telling Facebook about devices you own and use to access Facebook. Doing this would tell facebook to only allow your computer and mobile phone to use your account, any other device connecting to your account would need to enter a Security code that you will setup in this process. Remove all devices from this list that don't look familiar to you.
  • Enable Login Approvals:  This feature requires that you have a cell phone capable of receiving text messages.  When enabled, you will receive a code via text message if your account is accessed from an unrecognized location.
  • App Passwords – If you don’t have many apps associated with your Facebook account, you can probably leave this off.  If you do enable login approvals as described above, and you do use apps such as Skype through Facebook, then you may want to set app passwords.  You can read about this feature on Facebook Help and Inside Facebook.
  • Active Sessions – remove all except Current session.

Avoid Open Wi-Fi

STOP Using open Wi-Fi networks, open Wi-Fi networks are those that are not password protected. When Wi-Fi networks are open like this, anyone on the network can view all data that is being transferred over this network. They can use simple methods and steal your password or session information, and use this to gain access to your account. A tutorial demonstrating the simplicity of this attack can be found here: http://cleverlogic.net/tutorials/session-hijacking-facebook-accounts

Review Permissions Granted to Third Party Apps

When you grant access to Facebook apps, those permissions endure long after you stop using them.  Go to this link to review your Facebook app permissions – and disable any you are no longer using. You will probably be surprised at the long list permissions your have previously granted!

Log Out

Another way you can protect yourself from hackers is by logging out of your account when you are finished using facebook. Doing this will help block hackers, though it will be a bit complex for me to explain why here. However, just to share: hackers widely use an attack called Session Hijacking, and doing this can help prevent this attack. More on session hijacking can be found here: http://cleverlogic.net/tutorials/session-hijacking-0


Maintain Public and Private Email Addresses

The email address you use for Facebook should be distinct from the one you use where security is more critical – such as your online banking or Paypal account. If your Facebook account gets hacked its embarrassing. If that is the same email used on your more secure accounts, now that vulnerability could be costly. Obviously, if you are selective with your email addresses and periodically change your passwords, you minimize your chances of being hacked. Did you know that anyone can search Facebook for an email address?  For example, if you are looking a common name such as John Smith, you only need to search with their email to find the right one. This is handy for finding your friends on Facebook, but also useful for hackers. The safe bet is to use distinct passwords for your public and private email addresses. There are even more ways to protect your Facebook and other online accounts, but these 5 are the most essential, and they are specific to Facebook, which seems to be the site that is the most vulnerable.

What to do if your Facebook Account has been hacked

If your account have already been hacked, facebook have provided some mechanisms to help you recover your account.
  1. Go to https://www.facebook.com/hacked and follow the instructions on-screen. You’ll go through three steps:
  2. Verify your account and change password.  You’ll be asked to identify your account, change your password, and change the password associated with the e-mail account that you use for Facebook.
  3. Review and fix anything the cybercriminal changed.
  4. Unlock account.

So these are basically some of the ways we can help to protect our facebook accounts from hackers, some of these methods can also be used to prevent other accounts. I Hope this article has been helpful to you guys, If you have any comments, suggestions or anything to add to the article, please post it in the comments section below.

SQL Injection In-Depth: Attacks and Prevention Methods

SQL injection attacks are a type of injection attack, in which SQL commands are injected into data-plane input in order to effect the execution of predefined SQL commands (OWASP, 2012). SQL injection attacks pose a serious security threat to Web applications: they allow attackers to obtain unrestricted access to the databases underlying the applications and to the potentially sensitive information these databases contain (Halfond, Viegas, & Alessandro , 2006).
An SQL injection attack consists of inserting or "injecting" some data into an SQL query via the input data from the client to the application. A successful SQL injection exploit can:
  • Read sensitive data from the database
  • Modify database data (Insert/Update/Delete)
  • Execute administration operations on the database (such as shutdown the DBMS)
  • Recover the content of a given file present on the DBMS file system
  • In some cases issue commands to the operating system.
SQL injection errors occur when:
  1. Data enters a program from an untrusted source.
  2. Queries are dynamically constructed
The main consequences are:
  • Confidentiality: Since SQL databases generally hold sensitive data, loss of confidentiality is a frequent problem with SQL Injection vulnerabilities.
  • Authentication: If poor SQL commands are used to check user names and passwords, it may be possible to connect to a system as another user with no previous knowledge of the password.
  • Authorization: If authorization information is held in a SQL database, it may be possible to change this information through the successful exploitation of SQL Injection vulnerabilities.
  • Integrity: Just as it may be possible to read sensitive information, it is also possible to make changes or even delete this information with a SQL Injection attack.

Types of SQL Injection Attacks
In this section, we present and discuss the different kinds of SQL Injection Attacks. The different types of attacks are generally not performed in isolation; many of them are used together or sequentially, depending on the specific goals of the attacker. Note also that there are countless variations of each attack type.
Tautologies
Attack Intent: Bypassing authentication; identifying injectable parameters; extracting data.
Description: The general goal of a tautology-based attack is to inject code in one or more conditional statements so that they always evaluate to true. The most common usages are to bypass authentication pages and extract data. In this type of injection, an attacker exploits an injectable field that is used in a query’s WHERE conditional.
Transforming the conditional into a tautology causes all of the rows in the database table targeted by the query to be returned. In general, for a tautology-based attack to work, an attacker must consider not only the injectable/vulnerable parameters, but also the coding constructs that evaluate the query results. (Halfond, Viegas, & Alessandro , 2006)
Example 1: Bypassing login script.
Query: SELECT name from authors where username = '$_POST[username]’ AND password=’$_POST[password]’;
This query take input from the system user; suppose the user enters:
Username: a’ OR ‘1=1’
Password: a’ OR ‘1=1’
Constructed query: SELECT name from authors where username = ‘a’ OR ‘1=1’ AND password=’a’ OR ‘1=1’
The code injected in the conditional (OR 1=1) transforms the entire WHERE clause into a tautology. The database uses the conditional as the basis for evaluating each row and deciding which to return. Because the condition, the query evaluates to true for each row and returns all of them. This would cause this user to be authenticated as the user whose data is in the first row in the returned result set.
Solution:
    $username = $_POST[username];
    $username = mysqli_real_escape_string ($username);
    mysql_query (SELECT first_name, last_name from authors where username = '$username’);
Illegal/Logically Incorrect Queries
Attack Intent: Identifying injectable parameters; Performing database finger printing; Extracting data.
Description: This attack lets the attacker gather important information about the type and structure of the back-end database of an application. The attack is considered a preliminary, information gathering step for other attacks. The vulnerability leveraged by this attack is that the default error page returned by application servers is often overly descriptive; originally intended to help programmers debug their applications, further helps attackers gain information about the schema of the back-end database. When performing this attack, an attacker tries to inject statements that cause a syntax, type conversion, or logical error into the database. Syntax errors can be used to identify injectable parameters. Type errors can be used to deduce the data types of certain columns or to extract data. Logical errors often reveal the names of the tables and columns that caused the error.
Example 2: Cause a type conversion error that can reveal relevant data.
Password: AND ‘pin: “convert (int, (select top 1 name from sysobjects where xtype=’u’))
Query: SELECT name from authors where username = ‘’ AND password=’’ AND ‘pin = convert (int,(select top 1 name from sysobjects where xtype=’u’))
The query attempts to extract the first user table (xtype=’u’) from the database’s metadata table (assume the application is using Microsoft SQL Server, for which the metadata table is called sysobjects). The query then tries to convert this table name into an integer. Because this is not a legal type conversion, the database throws an error. For Microsoft SQL Server, the default error would be ”Microsoft OLE DB Provider for SQL Server (0x80040E07) Error converting nvarchar value ’CreditCards’ to a column of data type int.”
Two useful pieces of information in this message aids an attacker. First, the attacker can see that the database is an SQL Server database. Second, the error message reveals the value of the string that caused the type conversion to occur. In this case, this value is also the name of the first user-defined table in the database: “CreditCards.” A similar strategy can be used to systematically extract the name and type of each column in the database. Using this information about the schema of the database, an attacker can then create further attacks that target specific pieces of information.
Union Query
Attack Intent: Bypassing Authentication; extracting data.
Description: In union-query attacks, an attacker exploits a vulnerable parameter to change the data set returned for a given query. With this technique, an attacker can trick the application into returning data from a table different than the one that was intended by the developer. Attackers do this by injecting a statement of the form: UNION SELECT <rest of injected query>. Because the attackers completely control the second/injected query, they can use that query to retrieve information from a specified table. The database returns a dataset that is the union of the results of the original first query and the results of the injected second query. One example usage of this multiple attacks is where the attacker uses the logically incorrect query attack to data about a table’s structure then use the union query to get data from this table.
Example 3: Referring to example 2, an attacker could inject the text
Username: ’ UNION SELECT cardNo from CreditCards where acctNo=10032 - -”
Query: SELECT name from authors where username = ‘’ UNION SELECT cardNo from CreditCards where acctNo=10032 -- AND password=’’
Note: It is common technique to force the SQL parser to ignore the rest of the query written by the developer with -- which is the comment sign in SQL.
Assuming that there is no login equal to “”, the original first query returns the null set, whereas the second query returns data from the “CreditCards” table. The database takes the results of these two queries, unions them, and returns them to the application.
Piggy Backed Queries
Attack Intent: Extracting data; Adding or modifying data; Performing DOS; executing remote commands.
Description: In this attack, an attacker tries to inject additional queries into the original query. We distinguish this type from others because, in this case, attackers are not trying to modify the original intended query; instead, they are trying to include new and distinct queries that “piggy-back” on the original query. As a result, the database receives multiple SQL queries which are all executed. This type of attack can be extremely harmful. If successful, attackers can insert virtually any type of SQL command, including stored procedures into the additional queries and have them executed along with the original query. Vulnerability to this type of attack is often dependent on having a database configuration that allows multiple statements to be contained in a single string.
Example 4: The attacker inputs:
Password: “’; drop table users - -”
Query: SELECT name from authors where username = ‘’ AND password=’’ drop table users -- AND pin=123
After completing the first query, the database would recognize the query delimiter (“;”) and execute the injected second query. Dropping the users table would likely destroy valuable information. Other types of queries could insert new users into the database or execute stored procedures. Note that many databases do not require a special character to separate distinct queries, so simply scanning for a query separator is not an effective way to prevent this type of attack.
Solution: Configure the database to block executing multiple statements within a single string.
Stored Procedures
Attack Intent: Performing privilege escalation; performing DOS; Executing remote commands.
Description: SQL Injection Attacks of this type try to execute stored procedures present in the database. Most vendors ship databases with a standard set of stored procedures that extend the functionality of the database and allow for interaction with the operating system. Therefore, once an attacker determines which backend database is in use, SQL Injection Attacks can be crafted to execute stored procedures provided by that specific database. Additionally, because stored procedures are often written in special scripting languages, they can contain other types of vulnerabilities, such as buffer overflows; these vulnerabilities allow attackers to run arbitrary code on the server or escalate their privileges. Here is a stored procedure that checks credentials:
CREATE PROCEDURE DBO.isAuthenticated
@userName varchar2, @pass varchar2, @pin int
AS EXEC ("SELECT accounts FROM users
WHERE login=’" +@userName+ "’ and pass=’" +@password+ "’ and pin=" +@pin);
GO
Example 5: Demonstrates how a parameterized stored procedure can be exploited via an SQL Injection Attack. In the example, we assume that the query string constructed at lines 5, 6 and 7 of our example has been replaced by a call to the stored procedure defined in Figure 2. The stored procedure returns a true/false value to indicate whether the user’s credentials authenticated correctly. To launch an SQL Injection Attack, the attacker simply enters:
Password: ’ ; SHUTDOWN; --
Query: SELECT name from authors where username = ‘Jay’ AND password=’ ’; SHUTDOWN; --
At this point, this attack works like a piggy-back attack. The first query is executed normally, and then the second, malicious query is executed, which results in a database shut down. This example shows that stored procedures can be vulnerable to the same range of attacks as traditional application code.
Inference
Attack Intent: Identifying injectable parameters; Extracting data; Determining database schema.
Description: In this attack, the query is modified to recast it in the form of an action that is executed based on the answer to a true/-false question about data values in the database. In this type of injection, attackers are generally trying to attack a site that has been secured enough so that when an injection has succeeded, there is no usable feedback via database error messages. In this situation, the attacker injects commands into the application and then observes how the application responds. From careful observation, the attacker can deduce not only whether certain parameters are vulnerable, but also additional information about the values in the database. There are two well-known attack techniques that are based on inference:
Blind Injection: Information is inferred from the behavior of the page by asking the server true/-false questions. If the injected statement evaluates to true, the site continues to function normally. If the statement evaluates to false, although there is no descriptive error message, the page differs significantly from the normally-functioning page.
Timing Attacks: A timing attack allows an attacker to gain information from a database by observing timing delays in the response of the database. Attackers structure their injected query in the form of an if/then statement, whose branch predicate corresponds to an unknown about the contents of the database. Along one of the branches, the attacker uses a SQL construct that pause the execution for a known amount of time (e.g. the WAITFOR keyword). By measuring the response time of the database, the attacker can infer which branch was taken in his injection and therefore the answer to the injected question.
Example 6: Identifying injectable parameters using blind injection. Consider two possible injections into the login field.
  • “legalUser’ and 1=0 - -”
  • “legalUser’ and 1=1 - -”
Query 1: SELECT name from authors where username = ’legalUser’ and 1=0 -- ’ AND password=’ ’ AND pin=0;
Query 2: SELECT name from authors where username = ’legalUser’ and 1=1 -- ’ AND password=’ ’ AND pin=0;
Scenario 1: We have a secure application, and the input for login is validated correctly. In this case, both injections would return login error messages, and the attacker would know that the login parameter is not vulnerable.
Scenario 2: We have an insecure application and the login parameter is vulnerable to injection. The attacker submits the first injection and, because it always evaluates to false, the application returns a login error message. The attacker then submits the second query, which always evaluates to true. If in this case there is no login error message, then the attacker knows that the attack went through and that the login parameter is vulnerable to injection.
Example 7:  Using Timing based inference attack to extract a table name from the database.
Username: ‘‘legalusr’ and ASCII(SUBSTRING((select top 1 name from sysobjects),1,1)) > X WAITFOR 5 --’’.
Query:
SELECT name from authors where username = ’legalUser’ ASCII(SUBSTRING((select top 1 name from sysobjects),1,1)) > X WAITFOR 5 -- ’AND password=’ ’ AND pin=0;
Here, the SUBSTRING function extracts the first character of the first table’s name. Using a binary search strategy, the attacker can ask a series of questions about this character. In this case, the attacker is asking if the ASCII value of the character is greater-than or less-than-or-equal-to the value of X. If the value is greater, the attacker knows this by observing an additional 5 second delay in the response of the database. The attacker can then use a binary search by varying the value of X to identify the value of the first character.
Alternate Encodings
Attack Intent: Evading detection.
Description: In this attack, the injected text is modified so as to avoid detection by defensive coding practices and also many automated prevention techniques. This attack type is used in conjunction with other attacks. In other words, alternate encodings do not provide any unique way to attack an application; they are simply an enabling technique that allows attackers to evade detection and prevention techniques and exploit vulnerabilities that might not otherwise be exploitable. These evasion techniques are often necessary because a common defensive coding practice is to scan for certain known “bad characters,” such as single quotes and comment operators.
To evade this defense, attackers have employed alternate methods of encoding their attack strings (e.g., using hexadecimal, ASCII, and Unicode character encoding). Common scanning and detection techniques do not try to evaluate all specially encoded strings, thus allowing these attacks to go undetected. An effective code-based defense against alternate encodings is difficult to implement in practice because it requires developers to consider of all of the possible encodings that could affect a given query string as it passes through the different application layers. Therefore, attackers have been very successful in using alternate encodings to conceal their attack strings.
Example 8: Every type of attack could be represented using an alternate encoding; here we simply provide an example of how mystic an alternatively-encoded attack could appear.
Username: “legalUser’; exec(0x73687574646f776e) - - ”
Query:
SELECT name from authors where username = ’legalUser’; exec(0x73687574646f776e) - - AND password=’ ’;
The stream of numbers in the second part of the injection is the ASCII hexadecimal encoding of the string “SHUTDOWN.” Therefore, when the query is interpreted by the database, it would result in the execution, by the database, of the SHUTDOWN command.
Query: SELECT name from authors where username = ’legalUser’; exec(SHUTDOWN) - - AND password=’ ’;

Preventing SQL Injection Attacks
Techniques to prevent SQL Injection range from development best practices to fully automated frameworks for detecting and preventing SQL Injection Attacks.
Database Design Practices

Limiting Permissions: Limiting Permissions naturally leads to a very effective method of preventing attacks and limiting the damages from possible SQL injection attacks. Some methods to be employed are:

  1. Use database accounts with limited permissions: only give the necessary permissions to each account. Normally an application uses an account to access the database and restrict user operations at the application level. However, if a user uses SQL injection, all of the application level security will be bypassed and the user will gain access to the database with the full privileges of the account the application uses to connect to the database.
  2. Use several database accounts: This would serve to compliment the first precaution taken above. Since many users with different privileges normally uses an application, the account we use to connect to the database would need the necessary access rights for the most privileged user; and if an unprivileged user commits an SQL Injection attack, this user will get full access to the database as the most privileged user. To solve this issue, it is best to have several database accounts with which an application can connect to the database, using different accounts based on the role of the logged in user.
Defensive Coding Practices
The root cause of SQL injection vulnerabilities is insufficient input validation. Therefore, the straightforward solution for eliminating these vulnerabilities is to apply suitable defensive coding practices.
Input type checking: SQL Injection Attacks can be performed by injecting commands into either a string or numeric parameter; a simple check of such inputs can prevent many attacks. For example, in the case of numeric inputs, developers can simply reject any input that contains characters other than numerical digits.
Concealing Error Messages: Injection attacks often depend on the attacker having at least some information about the database schema. As discussed in some of the attacks mentioned previously, an attacker can gain much information through error messages which may tell the attacker quite a lot about the schema. DBMS and Programming Language Database Connectors generally provide clear, informative error messages that are incredibly helpful to programmers, but can also provide information to a malicious user.
After the launch of an application (the application is available to end users), It is best to log errors directly to a table in the database rather than outputting them to end user.
Encoding of inputs: Injection values into a parameter is often accomplished through the use of meta-characters that trick the SQL parser into interpreting user input as SQL tokens. Prohibiting any usage of meta-characters would restrict a non-malicious user’s ability to specify legal inputs that contain such characters. A better solution is to use functions that encode a string in such a way that all meta-characters are specially encoded and interpreted by the database as normal characters. Here is an example in PHP:
$username = $_POST[username];
$username = mysqli_real_escape_string ($username);
mysql_query (SELECT first_name, last_name from authors where username = '$username’);
Positive pattern matching: Developers should establish input validation routines that identify good input as opposed to bad input. This approach is generally called positive validation, as opposed to negative validation, which searches input for forbidden patterns or SQL tokens. Because developers might not be able to envision every type of attack that could be launched against their application, but should be able to specify all the forms of legal input, positive validation is a safer way to check inputs.
Identification of all input sources: Developers must check all inputs to their application; there are many possible sources of input to an application. If used to construct a query, these input sources can be a way for an attacker to introduce an SQL Injection Attack. Simply put, all input sources must be checked.
Although defensive coding practices remain the best way to prevent SQL injection vulnerabilities, their application is problematic in practice. Defensive coding is prone to human error and is not as rigorously and completely applied as automated techniques Moreover, approaches based on defensive coding are weakened by the widespread promotion and acceptance of so-called “pseudoremedies”. We discuss two of the most commonly-proposed pseudo-remedies:
  • The first of such remedies consists of checking user input for SQL keywords, such as “FROM,” “WHERE,” and “SELECT,” and SQL operators, such as the single quote or comment operator. The rationale behind this suggestion is that the presence of such keywords and operators may indicate an attempted SQL Injection Attack. This approach clearly results in a high rate of false positives because in many applications, SQL keywords can be part of a normal text entry, and SQL operators can be used to express formulas or even names (e.g., O’Brian).
  • The second commonly suggested pseudo-remedy is to use stored procedures or prepared statements to prevent SQL Injection Attacks. Unfortunately, stored procedures and prepared statements can also be vulnerable to SQL Injection Attacks unless developers rigorously apply defensive coding guidelines.
Detection and Prevention Techniques
Researchers have proposed a range of techniques to assist developers and compensate for the shortcomings in the application of defensive coding.
Black Box Testing: Huang and colleagues proposed WAVES, a black-box technique for testing Web applications for SQL injection vulnerabilities. The technique uses a Web crawler to identify all points in a Web application that may be vulnerable to SQL Injection Attacks. It then builds attacks that target such points based on a specified list of patterns and attack techniques. WAVES then monitors the application’s response to the attacks and uses machine learning techniques to improve its attack methodology. However, like all black-box and penetration testing techniques, it cannot provide guarantees of completeness.
Static Code Checkers: JDBC-Checker is a technique for statically checking the type correctness of dynamically-generated SQL queries. JDBC-Checker is able to detect one of the root causes of SQLIA vulnerabilities in code - improper type checking of input.
Combined Static and Dynamic Analysis: AMNESIA is a model-based technique that combines static analysis and runtime monitoring. In its static phase, AMNESIA uses static analysis to build models of the different types of queries an application can legally generate at each point of access to the database. In its dynamic phase, AMNESIA intercepts all queries before they are sent to the database and checks each query against the statically built models. Queries that violate the model are identified as SQL Injection Attacks and are prevented from executing on the database. The primary limitation of this technique is that its success is dependent on the accuracy of its static analysis for building query models.
Taint Based Approaches: WebSSARI detects input-validation related errors using information flow analysis. In this approach, static analysis is used to check contaminated flows against preconditions for sensitive functions. The analysis detects the points in which preconditions have not been met and can suggest filters and sanitization functions that can be automatically added to the application to satisfy these preconditions. The WebSSARI system works by considering as sanitized input that has passed through a predefined set of filters. The primary drawbacks of this technique are that it assumes that adequate preconditions for sensitive functions can be accurately expressed using their typing system and that having input passing through certain types of filters is sufficient to consider it not tainted.
New Query Development Paradigms: Two recent approaches, SQL DOM and Safe Query Objects, use encapsulation of database queries to provide a safe and reliable way to access databases. These techniques offer an effective way to avoid the SQL Injection Attack problem by changing the query-building process from an unregulated one that uses string concatenation to a systematic one that uses a type-checked API. Within their API, they are able to systematically apply coding best practices such as input filtering and rigorous type checking of user input. By changing the development paradigm in which SQL queries are created, these techniques eliminate the coding practices that make most SQL Injection Attacks possible. Although effective, these techniques have the drawback that they require developers to learn and use a new programming paradigm or query-development process. Furthermore, because they focus on using a new development process, they do not provide any type of protection or improved security for existing legacy systems.
Intrusion Detection Systems (IDS): A proposed IDS system to prevent SQL Injection is based on a machine learning technique that is trained using a set of typical application queries. The technique builds models of the typical queries and then monitors the application at runtime to identify queries that do not match the model. In the evaluation, it was shown that the system is able to detect attacks with a high rate of success. However, the fundamental limitation of learning based techniques is that they can provide no guarantees about their detection abilities because their success is dependent on the quality of the training set used.
Proxy Filters: Security Gateway is a proxy filtering system that enforces input validation rules on the data flowing to a Web application. Using their Security Policy Descriptor Language (SPDL), developers provide constraints and specify transformations to be applied to application parameters as they flow from the Web page to the application server. Because SPDL is highly expressive, it allows developers considerable freedom in expressing their policies. This approach is human-based and, like defensive programming, requires developers to know not only which data needs to be filtered, but also what patterns and filters to apply to the data.
Instruction Set Randomization: SQLrand is an approach based on instruction-set randomization. SQLrand provides a framework that allows developers to create queries using randomized instructions instead of normal SQL keywords. A proxy filter intercepts queries to the database and de-randomizes the keywords. SQL code injected by an attacker would not have been constructed using the randomized instruction set. Therefore, injected commands would result in a syntactically incorrect query. While this technique can be very effective, it has several practical drawbacks: Firstly, since it uses a secret key to modify instructions, security of the approach is dependent on attackers not being able to discover the key; Secondly, the approach imposes a significant infrastructure overhead because it require the integration of a proxy for the database in the system

How to Configure A Wireless Router

D-Link Router
Hello everyone,
Wireless networking means freedom from cables and wires!! A wireless router is a network device that performs the function of directing and forwarding information and it does this using radio waves without the need for a cabled connection. How cool is that?
Thats not all. A wireless router also (and more importantly in my opinion) performs the security function of a hardware firewall which blocks unauthorized access to your computer or network (while allowing of course authorized access). How cool is that?
Today I want to tell you how to set up and optimize your router so that you can wirelessly enjoy the internet and be protected at the same time. If you don’t secure your system, someone with the right tools will be able to break into (“hack into”) your computer.
A) Buy a router that supports the 802.11n standard (the latest and greatest Wi-Fi certified version). 802.11n will give you faster data speed and a wider range. The brand doesn’t matter much: D-Link, Belkin, Linksys are all about the same.
B) Hook up the router and go into the routers configuration page (enter your routers default IP address (such as 192.168.1.1) into your web browser .
C) Now that you are in the routers configuration page do the following five things:
1) Re-name the router (don’t name it Belkin or Linksys or D-Link). Give it a personal name that means something to you and that you will remember.
2) Change the default password (usually the default password is “admin”). Many people know this and can break into your router using the default password.
3) Turn off  WAN (Wide Area Network) administration. On some routers WAN administration is called Internet Administration. You don’t want to cover a broad area just your personal area (room, office or building).
4) Turn on encryption (use only WPA2 encryption – it is much harder to crack – use a strong password for the WPA2 encryption (like a sentence that you will remember with numbers, capital and small letters).
5) Turn off Universal Plug and Play (UPnP). UPnP opens you up to being attacked and possibly controlled by a malicious website.
Intanet Help says: Enjoy the freedom of going wireless – but be safe! Buy a wireless router and configure it properly as mentioned above.

Windows cannot find rundll32.exe: Fixed


Hello everyone,
I got a computer from a client yesterday and when I started to repair it, I couldn’t access hardly any of the tools in Control Panel (Windows XP). I kept getting the error message:
“Windows cannot find C:\Windows\system32\rundll32.exe”
Obviously I was missing the rundll.exe process. Rundll32.exe is a process that allows dynamic link libraries (DLLs) to be executed. Many system DLLs contain entry points for external use. These include the control panel, as well as Shell32.dll, which allows you to bring up windows such as the “Open with…” dialog. This process is a system process that is essential to the system’s proper operation.
I don’t really know how this file was lost (often malware can “knock it out”), but I knew that I had to get it back onto the computer if I wanted to proceed with the “fix”. Here is what I did:
1) I went into the c:\windows\system32\dllcache folder and found the rundll.exe file.
2) I copied the rundll.exe file and pasted it into the c:\windows\system32 folder (this is where it should be by default, this is where you want it to be).
3) I rebooted the machine.
4) I was no longer in “.dll hell”, everything worked great and I was able to access Control Panel and Intranet Help Says: Don’t go to .dll hell! Replace any missing .dll files and you’ll be in heaven!

Hard Drive Failure: Five Great Tools


Hello everyone,
Many of my computer repair jobs involve the hard drive in one way or another. Lately I’ve been seeing about three hard drive failures per week. In this post I would like to tell you about five great hard drive tools that will both predict and prevent hard drive failure. Great stuff!
1) CrystalDiskInfo: CrystalDiskInfo is a HDD health monitoring utility. It displays basic HDD information, monitors S.M.A.R.T. values and disk temperature. I use this tool on every computer that I repair!
2) HD Tune: HD Tune is a hard disk utility with many functions. It can be used to measure the drive’s performance, scan for errors, check the health status (S.M.A.R.T.), securely erase all data and much more. A very valuable tool to have in your tool kit!

3) HDD Health: HDD Health is a full-featured failure-prediction agent for machines using Windows 95, 98, NT, Me, 2000, XP, Vista and Windows 7. Sitting in the system tray, it monitors hard disks and alerts you to impending failure. The program uses Self Monitoring and Reporting Technology (S.M.A.R.T.) built into all new hard disks, and can predict failures on your hard drives. A host of alerting features include email, local pop-up messages, net messages, and event logging, while using no system resources.
4) HDDScan: HDDScan is a freeware utility for hard drive diagnostics (RAID arrays, Flash USB and SSD drives are also supported). The program can test storage device for errors (Bad-blocks and bad sectors), show S.M.A.R.T. attributes and change some HDD parameters such as AAM, APM, etc. HDDScan can be useful for performing the regular “health test” for your drive and predicting its degradation, so you will be able to prevent data loss and backup your files before you will have to contact the data recovery service. Additionally, software can be used as the hard disk temperature monitor and reading/writing benchmark – performance graph is displayed for every test.
5) GSmartControl: An awesome hard disk drive health inspection tool! GSmartControl is a graphical user interface smart control tool for querying and controlling SMART (Self-Monitoring, Analysis, and Reporting Technology) data on modern hard disk drives. It allows you to inspect the drive’s SMART data to determine its health, as well as run various tests on it.
Intranet Help Says: Being able to diagnose a failing hard drive is a must as a computer repair tech. Believe me, if you can save your clients hard drive and data you’ll have a customer for life. These five tools will help you do just that!

How I Fixed: USB Ports Don’t Work After New OS Installation

driver installation order
Hello everyone,
Note: In this previous post I wrote about proper driver sequence in a Dell machine.
I got a home made computer from a client and the USB ports were not working. The operating system (Windows XP) had just been freshly installed as well as all Windows updates. Everything was working great except for the USB ports.
The motherboard  manufacturer was BIOSTAR, so I went to the BIOSTAR site and looked up the exact motherboard model (P4M800 Pro-M7). I downloaded the appropriate drivers and installed them.
Still no working USB ports!! What is going on here?
Well, don’t ever underestimate the importance of proper driver installation sequence. This is what I had to do:
1) Reinstall Windows XP
2) Go to the BIOSTAR site and install the drivers in this order:
A) Chipset (crucial that you install this driver first)
B) On-Board VGA
C) On-Board LAN
D) On-Board Audio
E) USB 2.0 Controller (this was the driver that was needed to make the USB ports function)
3) Go to Windows Update and download/install all updates from Microsoft
The result? All USB ports worked as they should and the computer worked flawlessly!
Professor Randy says: Install all motherboard drivers in proper sequence before installing any updates from Microsoft. Your computer will function at an optimum level and you will avoid many future glitches.

Device Drivers And Correct Order Of Installation


Hello everyone,
A driver is a software program that runs (drives) a hardware device. There are many hardware devices both inside and outside of a computer and these devices cannot run unless they are “driven” by a device driver. Here are some examples of  computer hardware devices that will not function without the software that “drives” them.
  • printers
  • video adapters
  • network cards
  • sound cards
  • mice, keyboards, USB drives
  • computer storage devices such as hard disk, CD-ROM
  • image scanners
  • digital cameras
Most people know that when you install/reinstall an Operating System you must also install/reinstall the most recent, updated drivers for all of your hardware. But do you know that you must also install those drivers in the correct order for optimum system performance?
Today I would like to show you the correct order of device driver installation. This driver installation order refers to machines running the Windows Operating System.
Install/Reinstall your device drivers in this order:
1) Desktop System Software (DSS) or Notebook System Software (NSS). The DSS and NSS software is not required for Windows Vista/Windows 7 systems.
2) Chipset
3) Video Adapter
4) Network Interface Card (NIC)
5) Audio Adapter
6) Dialup Modem
7) Wireless Network Card
8) Touchpad, Pointer, Trackstick, Mice, and Keyboards
9) Bluetooth Module, Wireless Mobile Broadband Cards, PCMCIA/Smartcard Controller
Intranet Help Says: The best hardware device in the world will not run without it’s proper device driver. Install the correct drivers and install them in the correct order for optimum system efficiency!

Chronicle Of A Windows XP To Windows 7 Upgrade (Part 2)



Hello everyone,
In my last post (http://spacelogin.blogspot.com/2013/11/chronicle-of-windows-xp-to-windows-7.html) I chronicled my exact steps when upgrading a clients PC from Windows XP to Windows 7.
Once the new OS has been installed successfully you are not through – in fact the most important part is yet to come. You must now reinstall your clients precious data, programs, emails, contacts, drivers and more. What good is a new OS installation if you loose all or some of your clients data in the process? Believe me they will not be happy, word will get around, and your reputation as a computer technician will suffer greatly.
Today in part 2, I would like to take you through my exact steps in the post-installation process.
After Windows 7 Successfully Installed:
8) Installed Windows Live Essentials (you cannot run Outlook Express in Windows 7 so I switched my client to Windows Live Mail. I then went into windows.old folder (Local Settings > Identities, and imported the actual email (originally from Windows XP) into Windows Live Mail.
9) Configured The Incoming And Outgoing Mail Servers (must know Internet Service Provider and then setup the POP3 incoming and SMTP outgoing mail servers. You will need your clients email address and password to do this. Many times the client will say that they don’t have a password but yes they do – if they can’t find it you will have to call the ISP and get it from them.
10) Imported The EMail Address Book (these are the contacts that used to be in Outlook Express. In the windows.old folder, go to Applications > Documents and Settings > Microsoft > Address Book (it’s a Windows Address Book file of type .wab). Import this address book into Windows Live Mail (they will now be called contacts). If your client is using Outlook you should backup the Outlook .pst file which includes messages and contacts (Apps > Microsoft Outlook), before you even begin to install the new OS.
11) Copy & Paste Desktop, Start Menu And My Documents Into Windows 7 (open up these folders from windows.old and copy &  paste the contents of each into the folder by the same name in Windows 7. Your client will now see the same Desktop and Start Menu as before (in XP) and you also will remember how things looked before the new OS install! Windows 7 will neatly place the contents from the XP My Documents folder into six folders ( My Documents, My Pictures, My Video, My Music, Desktop, Local).
12) Installed Antivirus Program (I installed Microsoft Security Essentials).
13) Reinstalled Printer Software And Drivers (my clients printer was the HP Office Jet 6210 – no drivers were needed – Windows 7 already had all of the necessary drivers).
14) Reinstalled Office Software (my client was using Microsoft Office 2003).
15) Downloaded Any Programs That Didn’t Make The New Install (some older programs if they are not registry dependent will make it over to the new OS (for example Hoyle Card Games). I reinstalled the following programs: Picasa, Ashampoo WinOptimizer 6, InterVideo Win DVD, Malwarebytes, Sony Connect (SonicStage) software for MP3 player.
16) Done!! (the entire process [part1 & part 2] – a little over 4 hours!! Man, I’m glad that’s over with!!
Intranet Help Says: There are no shortcuts! You learn your craft well, you will feel good about your work, your clients will spread the word, and there will be no room for regrets!!

Chronicle Of A Windows XP To Windows 7 Upgrade (Part 1)

Hello everyone,
Today I upgraded a clients PC (Toshiba Satellite Laptop: A75-S229) from Windows XP to Windows 7. In this post I would like to tell you my exact steps from beginning to end. It’s my fervent wish that this information will help you when you upgrade to Windows 7.
Before I Ever Inserted The Windows 7 DVD Install Disc:
1) Ran Windows Upgrade Advisor ( checks for any known compatibility issues with your hardware, devices, and installed programs). There were no problems.
2) Copied The Following Files To My Flash Drive (from the current XP installation):
A) Outlook Express Address Book
B) Internet Explorer Favorites
C) Actual Outlook Express Mail (Local Settings\Identities\GUID\Microsoft\Outlook Express)
D) Desktop (so I know what’s on the PC, also some people keep full files on the desktop)
E) Start Menu
F) My Documents Folder
Note: I created a new folder (All Users) on the flash drive and put the Desktop and Start Menu in it. The Desktop, Start Menu and My Documents folders will eventually end up in a Windows.old folder after the Windows 7 installation. I put them on a flash drive just to be safe. After Windows 7 is installed the contents of the XP My Documents folder will be separated neatly into the following Windows 7 folders: My Documents, My Pictures, My Video and My Music, Desktop, Local.
If you have multiple users on the same computer you must follow the same procedure for each user. If a previous backup has been made to an external hard drive, you don’t have to put anything on a flash drive.
Now – Insert Windows 7 DVD Into The Laptop (Desktop) DVD RW Drive (answer questions):
3) Get Installation Updates Online – Yes!
4) What Type Of Installation Do You Want? Custom (can’t select upgrade option with XP).
5) Where Do You Want To Install? C:Drive ( previous C:\ files will be put in windows.old).
6) Begin Install (the install will go through the following five steps):
A) Copying Windows Files
B) Expanding Windows Files
C) Installing Features
D) Installing Updates
E) Completing Installation
Intranet Help Says: So far so good but we’re not done yet! In my next post I’ll chronicle what I did after the Windows 7 install in order to fully complete the upgrade procedure.

How To Convert VHS Tapes To DVD


Hello everyone,
I am living in an area of the country where there are many retirees. Many of these wonderful seniors have much of their most precious life memories (also movies, TV series, etc.) recorded on VHS (Video Home System) tape.
A VHS tape has an approximate shelf life of 15 – 20 years (the range depends on how well it’s taken care of, and how often it’s watched), and many of these highly valued tapes are literally starting to disintegrate. Many people ask me the following question: “So, is there some way to transfer old VHS tapes to DVD?”
Today I want to give you a video which explains how you can convert your old analog video into digital formats including DVD, VCD, SVCD and Blu-ray. There are various “kits” on the market that do this conversion, but I have been recommending the honestech VHS to DVD 4.0 Deluxe. This easy to use video conversion solution will convert VHS to DVD in no time (it also supports HD video and Blu-ray  
Intranet Help Says: Don’t let those precious memories that are still on VHS tape “melt away”! Convert your VHS tapes to DVD and preserve those memories for many years to come!

Seven Steps To Create A Factory Default Recovery Disc


Hello everyone,
It used to be that when you bought a new computer, the computer manufacturer (Dell, Toshiba, Gateway, HP, etc.) would include a couple of discs which contained a backup of the original factory default operating system. These recovery CD’s allowed you to reinstall the OS to exactly as it was when you first bought the computer.
In recent years these recovery CD’s are no longer being included with the new computer (cheaper for the manufacturer – they don’t have to create the discs). The default recovery data is now on the actual hard drive itself, and you the owner must copy (burn) this backup information to two or three DVD’s.
The other day a client had just bought a new Gateway computer and asked me to make a backup of the original factory installation in case he ever needed to reinstall the OS, drivers and application files. Today I would like to show you the exact seven steps that I used for this important one-time process (I did this on a Windows 7 Gateway desktop but most manufacturers provide basically the same setup procedure):
1) From the Windows default Start menu, click All Programs, Gateway and then click Gateway Recovery Management.
2) In the Gateway Recovery Management window, click Create factory default disc.
3) In the Make Backup Image dialog box, insert a blank disc in the optical drive, and then click Next.
4) Disc 1 is burnt and verified.
5) In the Finished dialog box, insert the next blank disc in the optical drive, and then click Next.
6) Disc 2 is burnt and verified.
7) In the Success dialog box, click OK.
Intranet Help Says: Better safe than sorry! Create a recovery disc of your OS as soon as you get your new computer and you will be prepared with an exact backup in case disaster strikes!!

How To Force A Windows Program To Always Open Maximized

Hello everyone,
A question that I often hear from my clients is the following: How do I get my Windows applications to always open “maximized” (full screen)? They complain about always having to employ a second click by hitting the maximize button in the top right hand corner of the screen. I totally understand their complaint because this issue bugs me too!
So today I would like to show you an easy way to do this which will work great with most programs (some programs have a mind of their own and will “disobey” this setting). Please remember that this works only on programs and shortcuts to programs (shortcuts in the start menu also), not on documents or on other files.
1) Right click on the shortcut or menu item that you use to start the program:

2) Now, click on properties:

3) Go down to the label “Run” that is set to “Normal Window”. Change this to “Maximized”.

4) Hit OK and you’re done! Your program will now start up maximized! Cool huh?
Intranet Help Says: When you learn all of the cool tricks and tweaks that you can do with your computer, you’ll enjoy your computing experience much more

Do You Know The Ctrl+Enter Trick?

 

Hello everyone,
Today a great tip comes from guest blogger Jorge R. Hernandez. Jorge is a great computer repair technician who runs 123 Computer Repair Services (http://123ComputerRepair.com) in Florida.
Since learning this cool trick, I’ve been using it every day. Thanks Jorge!

“Save Keystrokes by using Ctrl+Enter to complete URLs”
You want to open http://www.bing.com -  so you start typing http:// or www. and bing and .com
There is a much easier approach for this by using a shortcut.
On modern browsers such as Internet Explorer and Firefox, hitting Ctrl + Enter will automatically fill in the www. and the .com part of the URL.
Here is an example:
1)  Just type in “bing” into the address bar in your browser
2) Press Ctrl + Enter
3)  This is what you get: http://www.bing.com/
4) That’s all you need, enjoy the tip!
Intranet Help Says: Great tip from Jorge! The most simple tips are many times the most useful! Commit yourself to learning more useful tips and you will find yourself enjoying your computer much more!!

How To Make A One Click Shut Down For Windows 8

Windows 8

Hello everyone,

I’ve been working with a lot of Windows 8 machines lately. Not only does Windows 8 not have the typical Windows start button, but shutting Windows 8 down is now a four click process (starting with the Charms Bar).
Here is a way to put a single shut down icon on the desktop. One click and your machine will shut down. Enjoy!
First, get to the main desktop screen.
Next, right click on the desktop and select New –> Shortcut.
When the menu appears, click ‘Create new Shortcut.’
When Windows 8 asks you what item you’d like to create a shortcut for, enter the following command: ‘shutdown /s /t 0′. (By the way, that’s a zero. Also, make sure not to include a period or the quotations.) Then click ‘Next.’
Enter a name for the new shortcut (‘Shutdown’ is a good choice) and click ‘Finish.’
Selecting a Shutdown Icon
Next, right click on your brand new shortcut and then left click on ‘Properties.’ A new dialog box will appear.
Click ‘Change Icon.’ When Windows 8 tells you that ‘The file C:\Windows\System32\shutdown.exe contains no icons, click ‘OK.’
You’ll now be asked to select an icon from a list of images. Pick the one that suits you best.
Once you’ve done that, right click the shortcut again. Select ‘Pin to Start.’ Now your brand new, customized shutdown icon will appear continuously on the operating system’s Start screen.
You can repeat all of these steps to create a new Restart shortcut, as well. The only difference: after selecting ‘Create new Shortcut’ you’ll have to enter the command ‘shutdown /r /t 0′ (zero again). The “r” is for “Restart.”

Intranet Help Says: Windows 8 is visually stunning! Using Windows 8 may require a bit of a learning curve, but don’t let that stop you! You can make things easier by employing some simple tweaks like the one mentioned above.

How I Fixed: Network List Service (Vista) Will Not Start

windows vista network icon
Hello everyone,
The other day I was working on a Windows Vista computer and I noticed that the Network Icon in the Notification Area (two small blue monitors with a blue globe in front) was covered up by a red “X”.
This was an indication that the Network List Service (netprofm) was not working correctly. The Network List Service:
“Identifies the networks to which the computer has connected, collects and stores properties for these networks, and notifies applications when these properties change. This service in conjunction with Network Location Awareness enables status of network connections in the system tray. Since the SL UI Notification Service requires Network List Service to be functional, this service should not be disabled.”
I went into services.msc and I saw that the Network List Service was set to Automatic (as it should be), but was not running. All of the Network List Service dependencies were running fine, but try as I may I couldn’t automatically nor manually start the service. It would start for a moment and then shut down. It wouldn’t start up after a reboot either!
Then I found it! Here is the fix:
Click “Start” -> “Run” -> type “dcomcnfg” and enter -> find: Component Services/Computers/My Computer/DCOM Config/netprofm -> right click “netprofm” -> click “Properties” -> “Security” -> “Launch and Activition Permissions” changed to “Customize” -> click “Edit” button -> click “Add..” -> type “LOCAL SERVICE” as the object names, click “OK” -> in “Permissions for LOCAL SERVICE”, select “Allow” for “Local Launch” and “Local Activition” -> “OK” -> “OK”
Intranet Help Says: Be patient when repairing computers and don’t give up! The “fix” is probably just “around the corner” and eventually you’ll discover it. That’s how you become a better tech!

What You Should Know About The CryptoLocker Virus

cryptolocker

Hello everyone,
CryptoLocker is an awful virus that an alarming amount of people are falling victim to. It presents itself in the form of an email message that will look familiar and authentic (it will apper as from legitimate businesses and as fake FedEx, DHL, and UPS tracking notifications). This could also be something from a bank or paypal, prompting you to click a link. It may look like a .PDF file, but in reality it’s an executable file that launches the virus.
Once it’s opened, it encrypts all of the documents in your personal “Documents” folder, and can even reach out to files on thumb drives and networks. It uses strong encryption that truly no one can decrypt, and the only way you would be able to get the data back is by paying $300 for the key. If you don’t pay within 72 hours, the virus authors delete the key and the data is gone forever. To make matters worse, law enforcement has been shutting down servers that contain keys. So even if you were to pay within 72 hours, there’s still no guarantee you will be able to get to your data.
CryptoLocker has also managed to get past AntiVirus programs, although there is a free tool that will supposedly prevent its infection. The problem is, if it gets traction, the CryptoLocker virus authors can easily circumvent it making that tool ineffective. It’s very important to be careful when clicking links that are sent to you.
This means backup is more important than ever. However, you have to be careful how you’re backing up also. If you’re backing up to shared network attached storage for example, that may not be enough. If CryptoLocker can see the files, it will encrypt those also. Furthermore, if you don’t catch it right away, you may end up backing up the encrypted files over top of the unencrypted files. It’s important to have a backup system that supports versioning, or something that allows you to roll back to a prior version of your files.
Intranet Help Says: The CryptoLocker virus is really nasty! Protect yourself by backing up all data, and by not clicking on e-mail links unless you’re absoleutely sure where they came from!

How I Eradicate The Plague Of Toolbars, Browser Highjackers, Add-Ons, and Extensions

webbrowsersearch-homepage
Hello everyone,
In just the past month I have witnessed a veritable plague in my area of computer repair work. Unwanted items are almost secretly installing themselves to the Google Chrome, Mozilla Firefox, and Microsoft Internet Explorer browsers. Many of my great clients are seniors and they are being “suckered” into installing these unwanted programs.
These malicious items cause annoying pop-ups, pop-unders, banners, and coupons. They change Windows start-up settings and Internet browser settings. They change the homepage, redirect browser searches, and generally make  Internet browsing experience hell! Ultimately they will ruin the computers functionality!
These vicious little programs primarily bundle with third party software, most often freeware and shareware. Once in a while the user may be given the opportunity to decline the offer to install the “piggyback” item, but many times the offer is presented in a manner that attempts to trick the user. Often these malicious programs will install even if declined!
Here is a list of what I’ve eliminated from ten or so machines in the past month (no particular order):
1) Shop At Home Toolbar
2) Inbox Toolbar
3) Ask Toolbar
4) MapsGalaxy Toolbar
5) CouponBar
6) Babylon Toolbar
7) VAFMusic4 Toolbar
8) Snap.do
9) WebCake
10) Blekko Search Bar
11) Yontoo
12) WebSearch Toolbar
13) Default Tab
14) SaltarSmart
15) Win32/AddLyrics
16) Delta-homes.com (redirect)
In my next series of posts I will explain how to rid your computer of these “plagues”.
Intranet Help Says: Certain unfriendly entities want to enter your computer without your knowledge. First, be aware or who/what they are, and second, learn how to protect yourself from them!

The Major Hardware Components

Hello everyone,
I love to repair computers, but what I really love is to teach others how to understand/repair computers. I attempt to simplify any kind of explanation so that even the novice can understand what I’m teaching. Here is how I teach/explain the seven major computer components:
1) Motherboard
The motherboard is the heart of the computer. Every other computer part either sits on, or connects to, the motherboard in some way. The motherboard is the rectangular colored board that sits at the bottom of the case.
2) CPU
The CPU (Central Processing Unit) is the brain of the computer. It runs the software and processes the data that you are working on. The CPU sits on top of the motherboard and is covered up by a heat sink and cooling fan.
3) RAM
RAM (Random Access Memory) holds or remembers the data of the software that you are currently running. The RAM modules (“sticks”) are long and thin and look like a short ruler. Each RAM module snaps into a corresponding slot on the motherboard.
4) Video Card
The video card creates the images that appear on the computer monitor. Almost all modern day video cards attach to either the AGP (Accelerated Graphics Port) slot, or to the PCI Express (Peripheral Component Interconnect Express) slot on the motherboard.
5) Power Supply
The power supply supplies the power that the computer needs. All wires going from the power supply go either directly to the computer components or to the motherboard. The power supply sits at the top of the case.
6) Hard Disk Drive
The Hard Drive holds all of your information (even when the computer power is off). When you turn on the computer, the software and data load from the Hard Drive into the RAM. The Hard Drive slides into the Hard Drive bay in your computer case.
7) Optical Drive
The optical drive uses a laser to read (play) or write (record, burn) CDs and DVDs. The optical drive sits in the front bay of the computer.
Intanet Help Says: Fix a man’s computer and you will satisfy him for today, teach a man how to fix computers and you may satisfy him for a lifetime!