Tuesday, June 11, 2013

How to Prevent RDP Brute Force Attacks

Tech forums and publications are buzzing with news of a tool that enables hackers to attack servers via the Remote Desktop protocol (RDP), a commonly used protocol on remote servers that relies on enabling common ports to access them. These brute force attacks are nothing new, but the frequency of these attacks has sharply increased in recent months and are predicted to continue growing this year.

Understanding the Attacks

A brute force attack on the RDP server allows the attacker to connect. The attacks seem to follow a simple methodology:

  • Scan a range of IP addresses.
  • Scanner looks for open ports usually used by RDP (e.g. 3389).
  • A RDP brute force attack is launched using dictionary terms.

Successful logins by the attacker will give them access to the drives of that server (via the shares \\tsclient\c and \\tsclient\d). This may give the attacker access to the server, potentially including areas usually hidden from the external connection, such as local backups and development areas.

There are no reports of successful breaches yet, so it's unknown what motives are behind the attacks. Similar attacks in the past suggest that infected servers could be used to launch stronger attacks and thus scatter and strengthen itself. However, it could also be used to install other malware or ransomware.

With this type of attack, Windows 2003 servers could also be affected by memory exhaustion which would cause them to reboot. It could also cause Window 2008+ servers to fill their log files. However, this type of attack is not only aimed at Windows servers — it is an IP based attack.

Preventing the Attacks

As with any emerging threat, there are precautions that those running RDP on their servers can take.

  • Use strong passwords for your RDP sessions including:
    • One or more special characters such as !@#$%^&*()
    • At least one number, preferably two or more
    • A mix of upper and lower case
    • At least 7 characters in length
    • A non-dictionary word
  • Do not use standard usernames (root, admin, owner, test).
  • Implement account lockout policy for a set number of failed logins before locking out the account.
  • Use an alternative port instead of leaving RDP port 3389 open for anyone to abuse. To change this automatically, use Microsoft Fix It.
  • Consider locking the RDP port to a specific IP address.
  • On Windows 2008 (and server 2012), enable Network Level Authentication which means the session can not established until the credentials are authorized.
  • Ensure you have all the latest patches installed.
  • Have a plan to be proactive and scan for potential attacks.
  • Limit RDP access to only the accounts that require it.
  • If external access is needed, configure a VPN tunnel.

RDP is a great tool used by administrators and users alike to establish multiple connections to a system, but there's a risk if the connections and software aren't secure. Knowing how RDP works, why it’s being used, and what can be done to secure it will help administrators to get a better grasp on server security.

Monday, May 13, 2013

Using the X-Forwarded-For HTTP Module For IIS7

Are you having problems with logging client IP addresses in server logs because your web servers are using proxies or load balancing? This is a common issue with proxies and fortunately there is a solution. The standard for forwarding client information is the HTTP X-Forwarded-For header, which is handled by most proxies.

What is X-Forwarded-For?

The "X-Forwarded-For" HTTP request header is used to allow a proxy server or load balancer to inject the true originating IP address of a client connection into the HTTP request allowing the application server to know the caller's true identity.

The Solution

The version 7.0 release of IIS (Windows Server 2008) introduced the ability to integrate HTTP modules. In comparison to classic ISAPI filters http modules are much more flexible and much easier to integrate with IIS. Joe Pruitt at F5 DevCentral developed a module for IIS7 that extracts the X-Forwarded-For header value and replaces the CIP value (client IP address) that is stored in the server logs.

How to Setup the Module

  1. Download the X-Forwarded-For HTTP Module binaries at F5 DevCentral and unpack the archive into the local file system of the web server.
  2. Create a new sub folder in the file system root (e.g. HttpModules) and add two additional sub folders for x86 and x64. Now copy the .DLL library and the ini.bak file from the unpacked folders into the appropriate folders. Remove the .bak file ending.
    *Implement both the x64 version and x86 version of the module. Otherwise, 32-bit applications may crash.

  3. Edit the .ini file to configure the individual http header variable which will contain then IP address of the client and therefore serve as the source for the c-ip value in the IIS log file. In this example X-Cluster-Client-Ip.
  4. Open the IIS MMC and select the web server node from the configuration tree. Open the Modules settings page.
  5. Select Configure Native Modules in the Action Pane.
  6. Click Register and select the file path to the x86 DLL and name the module configuration accordingly. Repeat this step for the x64 version of the DLL.
  7. Click OK to apply the new module configuration. Sometimes a restart of W3SVC service is required.
  8. After successful installation the IP address will be stored in the CIP column of the IIS log file.

Monday, April 8, 2013

Free Training for SmarterMail and SmarterTrack

SmarterTools offers FREE weekly training for new and existing customers that covers tasks such as installing products, first-time set up of products, complete walkthroughs of the concepts and ideas behind how a product works and more. SmarterTools offers separate training for both SmarterMail and SmarterTrack that benefit customers who install their own versions of these products or who use the hosted version of SmarterTrack.com.

SmarterMail Training

This training will cover the basic installation and configuration of your new mail server. Items covered include:

  • General system requirements and installation
  • Initial set-up and configuration
  • Adding a domain, then users to that domain
  • Sending and receiving an email
  • Anti-spam and anti-virus options
  • General feature discussion
  • Overview of licensed add-ons

SmarterTrack Training

This training will help with how SmarterTrack can be installed, configured and how communication flows through it. Items covered include:

  • General system requirements and installation
  • Initial set-up and configuration
  • General helpdesk concepts
  • Setting up a Department, Group and Employee
  • Adding Employees to Groups
  • Following a Ticket through SmarterTrack
  • General feature discussion
For training schedules and more information, visit the SmarterTraining web page (http://www.smartertools.com/support/smartertools-training.aspx).

Wednesday, January 9, 2013

SQL Server 2012 : Edition and Licensing Information

Microsoft’s new SQL Server 2012 release, code-named Denali, marks some significant changes in the SQL Server product lineup. Taking steps to simplify the platform's licensing options, Microsoft has retired the Datacenter Edition, Workgroup Edition and Small Business Edition previously available for SQL Server 2008 and 2008 R2.

SQL Server 2012 Express Edition
replaces the Microsoft Data Engine (MSDE) as the free version of SQL Server for application development and lightweight use. It’s a great tool for developing and testing applications and extremely small implementations, but that’s about as far as you can run with it.

SQL Server 2012 Web Edition
is a specialized version for use in web hosting environments that is nearly identical to Standard Edition. This edition is available only to Services Provider License Agreement customers, which means your hosting provider.

• 
SQL Server 2012 Standard Edition
remains the workhorse of the product line for serious database applications. It can handle up to 16 cores with an unlimited amount of RAM.

• 
SQL Server 2012 Business Intelligence Edition
is designed specifically to support business intelligence applications.

• 
SQL Server 2012 Enterprise Edition
is designed for mission critical data center operations and large data warehouses.

• 
SQL Server 2012 Developer Edition
is a great tool for developers needing the full features of SQL Server 2012 Enterprise Edition for use in a non-production environment. This product has the same functionality as Enterprise Edition and offers a direct upgrade path to convert Developer servers to production licensing.

Having trouble choosing an edition? The Microsoft article "Features Supported by the Editions of SQL Server 2012" offers a detailed look at each edition.

SQL Server 2012 Licensing


Now that you have a SQL version in mind, it’s time to talk pricing. There's no question that licensing is one of the trickiest aspects of any Microsoft product to figure out — it's often harder to understand the licensing than it is to figure out how to use the product and its features. Changes in editions, the new core-based licensing, and the different availability options that are brought about by new features have made SQL Server 2012 licensing more confusing than ever. Let's take a closer look:
  • SQL Server 2012 Standard
    can be licensed either per core or per server and Client Access License (CAL).
  • SQL Server 2012 Business
    is licensed only per server and CAL.
  • SQL Server 2012 Enterprise
    is licensed only per core.

In a virtual environment, each "virtual processor" or "logical processor" counts as one (1) core. For example, if you have a virtual server with four (4) processors, you will need a four (4) core license for your SQL version. SQL Server 2012's licensing requires that you purchase a minimum of four (4) core licenses with additional core licenses available in packs of two (2). This means you will pay for a four (4) core license even if you have a single, dual or tri-core virtual processor VM.


In a fully dedicated environment the structure is much the same. For example, if you have a single quad (4) core processor, you will need a four (4) core license or one (1) server + CALs license. With today’s 12- core+ processors, Microsoft knew you were getting a good deal with socket-based licensing on late SQL versions.

If you’re planning to use the standard edition of Microsoft SQL Server 2012 in your environment, you have a major choice to make: should you opt for the per server licensing or the per core licensing? Be sure to count your cores. Depending on the environment (dedicated or virtual) it may make sense to license by server and CALs rather than core-based licensing.

Microsoft SQL Server 2012 Core Factor Table*
Processor TypeCore Factor
All processors not mentioned below1
AMD Processors
(31XX, 32XX, 41XX, 42XX, 61XX, 62XX Series Processors with 6 or more cores)
0.75
Single-Core Processors4
Dual-Core Processors2

* This is an example of how to calculate core license requirements and the core factor table. The core factor table is subject to change. You can find the core factor table at any time, updated at the link below.

For more information on the SQL Server 2012 Core Factor Table, including how to determine and use the appropriate core factor when licensing SQL Server 2012 under the Per Core model, visit: http://go.microsoft.com/fwlink/?LinkID=229882

Licensing SQL Server for High Availability


One of the most compelling features in the upcoming SQL Server 2012 release is the new AlwaysOn Availability Groups, but Microsoft's use of the term AlwaysOn is a bit confusing. AlwaysOn actually refers to two separate but related technologies: AlwaysOn Failover Clustering and AlwaysOn Availability Groups. AlwaysOn Failover Clustering is essentially the same thing as SQL Server failover clustering in earlier releases. It entails running a SQL Server instance on a Windows failover cluster. However, the AlwaysOn Availability Groups feature is completely new to SQL Server 2012, and it brings several new availability enhancements to SQL Server. If you're using database mirroring, AlwaysOn Availability Groups could be a good reason to upgrade to SQL Server 2012.

What if I have a failover cluster that includes a dedicated backup server? Do I need to license this server as well? No, both Failover Clustering and AlwaysOn Availability Groups allow you to skip licensing the backup server if it is truly passive (i.e., only used when the primary system isn't active).

What about Enterprise solutions where SQL needs high-availability in a fault-tolerant dual hardware solution? Using redundant hardware, will you be required to double the licensing costs? No, fortunately not. This is where Microsoft observes some sympathy and considers these multi-hardware solutions as a single system, thus no additional SQL license costs. The catch is, Microsoft only requires you to license the "active" system. In the event of a failover, switching the licensing to "active" on the receiving server will suffice.

For more information about licensing SQL Server 2012, including what is new with this version, please visit Microsoft's SQL Server website.

Monday, July 30, 2012

Need for Speed: Why Page Load Times Are Important

We all know how frustrating it is when we have to wait even a second for a page to load. Consider your own surfing behavior: if a site is too slow, it's not long before you are back on the search results page choosing another link.

We don’t have much patience, if any at all, when it comes to waiting for a page to load. In fact, users want a site to load in a matter of milliseconds. According to Harry Shum, a Microsoft computer scientist, users will visit a website less if its loading time is slower than its competitors by 250 milliseconds, or one-quarter of a second.[1] That is less time than the blink of an eye.

Boost Search Engine Rankings


Fast and optimized websites lead to higher visitor engagement, retention and conversions, but page load times have become significantly more important now that they help to determine your website’s search engine ranking.

Until recently, Google determined page rank using two primary factors: relevance (how pertinent a page is to the actual search) and authority (the number and quality of inbound links to a website). In their continued quest to improve user experience on the web and deliver useful search results, Google decided to modify their search ranking algorithms to include site speed as a determining signal.

Why has Google become obsessed with speed? The following excerpt from Google's blog emphasizes how important page load times are on the Internet:
"At Google, we focus constantly on speed; we believe that making our websites load and display faster improves the user’s experience and helps them become more productive."
In other words, an optimized website is fast and makes users happy. If your site’s not fast, it can affect its overall ability to rank well on search engines. Obviously, Google has tons of ranking factors and site speed is merely one, but every little bit helps right?

Lower Operating Costs While Increasing Revenue


Still not convinced? If SEO isn't your goal, think of conversion rates.

When a site responds slowly, visitors spend less time there. If a user gets frustrated and leaves your site, your conversion rate drops. The slower your site is, the more potential customers you’re likely to lose.

Users aren’t used to waiting and expect they won’t have to. They have the luxury and ease of finding comparable products and services on another site, namely, your competition.

The bottom line is, faster sites create happy users and happy users become happy customers. Give the users what they want... it’s a mutually beneficial relationship.


[1] Lohr, S. For Impatient Web Users, an Eye Blink Is Just Too Long to Wait. New York Times. 26 February 2012.