quarta-feira, 2 de novembro de 2016

Criação de certificados auto assinados facilitado

Certificado auto assinado para o domínio www.contoso.com
A partir da versao 4.0 do Powershell temos um novo cmdlet que facilita bastante a criacao dos certificados auto assinados. O cmdlet New-SelfSignedCertificate oferece a possibilidade de configurar todos as propriedades do certificado, como por exemplo nome DNS e a validade.
   
A execução do seguinte comando gera um certificado para o dominio www.contoso.com no repositório de certificados \LocalMachine\My:

New-SelfSignedCertificate -DnsName www.contoso.com -CertStoreLocation cert:\LocalMachine\My

O certificado gerado aparace sem configuracoes adicionais no IIS:


sexta-feira, 30 de setembro de 2016

SHODAN - Mais um (bom) motivo para manter SharePoint atualizado




O SHODAN é um serviço de pesquisa com a finalidade de expor dispositivos online e foi nomeado como SHODAN (Sentient Hyper-Optimized Data Access Network) em homenagem a uma inteligência artificial ficcional de um RPG de ação chamado "System Shock".

Ela foi hackeada pelo protagonista do jogo e para acessar as informações vitais sobre uma corporação as suas restrições éticas foram removidas.



O serviço rastreia a internet e indexa dispositivos e sistemas informáticos como, por exemplo, os sites do produto SharePoint publicados na internet. Para identificar as páginas do SharePoint no Shodan precisamos conhecer os campos de reposta do cabeçalho HTTP.

Os campos de reposta do cabeçalho HTTP padrão do SharePoint contem as seguintes informações:


Content-Length: 236673
Content-Type: text/html; charset=utf-8
MicrosoftSharePointTeamServices: versão do servidor SharePoint.
request-id: Correlação
SPIisLatency: 0
SPRequestDuration: 933
SPRequestGuid: Correlação
X-AspNet-Version: Versão do ASP.NET
X-Content-Type-Options: nosniff
X-FRAME-OPTIONS: SAMEORIGIN
X-MS-InvokeApp: 1; RequireReadOnly
X-Powered-By: ASP.NET
X-SharePointHealthScore: 0

A partir dessas informações podemos localizar com uma consulta simples como, por exemplo: MicrosoftSharePointTeamServices Country=BR os servidores SharePoint em um determinado país.

Na imagem abaixo, foi identificado um servidor na versão 6.0.2.6568 (WSS 2.0) que está sem atualizações de segurança desde a data 14.01.2014 (Microsoft Support Lifecycle).


Qualquer pessoa com o conhecimento necessário, consegue identificar vulnerabilidades conhecidas a partir dessas informações e comprometer o funcionamento dessas sistemas. Por isso, entre outros motivos, devemos manter os ambiente sempre atualizados.

Observação:

Uma possibilidade para melhorar a segurança desses ambientes é customizar o cabeçalho, removendo as informações comprometedoras. Stefan Goßner, engenheiro de escalação do SharePoint na Microsoft explica nesse artigo como criar um módulo .NET para substituir o cabeçalho padrão: IIS 7 - How to send a custom "Server" http header.

Fontes:
IIS 7 - How to send a custom "Server" http header
Security Bulletins
Microsoft Support Lifecycle
SharePoint Mythbusting: The response header contains the current SharePoint version
Shodan (website)
Lista de campos de cabeçalho HTTP

quarta-feira, 16 de março de 2016

Lançamento do SharePoint 2016 (RTM)

A Microsoft lançou a versão RTM (número da versão 16.0.4351.1000) do SharePoint 2016, alguns destaques da nova versão são links persistentes, atualizar o produto sem gerar indisponibilidade, e a auditória hibrida para arquivos on-premise e na nuvem (Office 365).

O vídeo curto abaixo mostra algumas dessas novas funcionalidades.

What’s new for admins in SharePoint Server 2016

Temos também um evento online (inglês) no dia 4. de maio "The future of SharePoint" com maiores detalhes, também recomendo muito a leitura dessa visão geral do SharePoint 2016 - SharePoint Server 2016 Overview Guide.

Bons testes ;)

Fontes:

New and improved features in SharePoint Server 2016
What's deprecated or removed from SharePoint Server 2016

segunda-feira, 25 de janeiro de 2016

Ferramentas úteis: ROISCAN - Validar instalações do Office E SharePoint.


Robust Office Inventory Scan (ROISCAN.vbs) é um script do Microsoft Visual Basic com a finalidade de coletar dados da instalação dos produtos Office e oferece opções de detecção e análise de erros. 
O script gera um arquivo de log. É possível usar o arquivo de log para:


  • Avaliar a configuração do Office instalado nos computadores dos usuários.
  • Obter dados detalhados sobre a instalação do Office para reproduzir o ambiente do usuário.
  • Pesquisar por versões ou configurações do Office incompatíveis.
  • Ajudar na solução de problemas de atualizações de software e instalação do Office.


O nome de arquivo padrão é <nome_do_computador>_ROIScan.log e o local padrão é a pasta TEMP. 

Fontes:


quarta-feira, 30 de dezembro de 2015

SharePoint 2013: ScopeNotFoundException: Workflow publicado não é exibido


O evento abaixo ocorre, se o (sub)escopo do subsite no Workflow Manager não foi criado. Isso pode ocorrer após a importação de um subsite.

Maiores detalhes sobre o escopo do fluxo de trabalho:
"A scope is a named and securable container for Activities, Workflows, Instances, configuration and child Scopes.. It also provides a boundary for multi-tenancy and messaging (notifications). Scopes can be created and modified using the Workflow Client API. It is represented in the Client API by the T:Microsoft.Workflow.Client.ScopeInfo class."

Evento no log do SharePoint:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Microsoft.Workflow.Client.ScopeNotFoundException: Scope '/SharePoint/default/<site collection GUID>/<subsite GUID>' was not found. HTTP headers received from the server - ActivityId: <GUID>. NodeId: <Server name>. Scope: /SharePoint/default/<site collection GUID>/<subsite GUID>. Client ActivityId : <GUID>. ---> System.Net.WebException: The remote server returned an error: (404) Not Found.
at Microsoft.Workflow.Common.AsyncResult.End[TAsyncResult](IAsyncResult result)
at Microsoft.Workflow.Client.HttpGetResponseAsyncResult`1.End(IAsyncResult result)
at Microsoft.Workflow.Client.ClientHelpers.SendRequest[T](HttpWebRequest request, T content) -
-- End of inner exception stack trace ---
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Solução:

Execute os dois comandos abaixo para desabilitar e habilitar o feature oculto "WorkflowServiceStore" para forçar a cria do escopo, em seguida publique os fluxos de trabalhos.
1. Disable-SPFeature WorkflowServiceStore -Url <endereço do subsite>
2. Enable-SPFeature WorkflowServiceStore -Url <endereço do subsite>

segunda-feira, 28 de dezembro de 2015

Let's Encrypt - certificados SSL grátis para todos!



"Let's Encrypt" iniciou a fase beta pública no dia 3 de dezembro, e está emitindo certificados SSL gratuitos - classificados pelos navegadores como confiáveis.

Atrás da autoridade de certificação "Let's Encrypt" estão organizações famosas, como Mozilla, Akamai, Cisco e a Electronic Frontier Foundation. Elas fundaram o Grupo Internet Security Research Group (ISRG). O objetivo do projeto é nada menos do que estabelecer conexões criptografadas HTTPS como o padrão da internet e, assim, garantir mais privacidade e segurança. 


Patrocinadores do projeto
O Grupo Internet Security Research Group quer alcançar isso com certificados gratuitos, os quais são classificados pelos principais navegadores como confiáveis. Além disso, o ISRG desenvolveu um novo protocolo chamado ACME, o que torna a emissão de certificados mais fácil e automatizada.


Relacionamento dos certificados do Let's Encrypt

A instalação e configuração é simples (consulte o artigo Instalador letsencrypt-win-simple), os certificados são validos por 90 dias e renovados automaticamente.

Observação: a configuração adicionará arquivos à página no IIS e será necessário validar o funcionamento após a aplicação das atualizações do SharePoint.

Fontes:

Passos para usar Let's Encrypt no IIS
Instalador letsencrypt-win-simple
Arquitetura

quarta-feira, 23 de dezembro de 2015

Office Web Apps 2013: Impossível abrir arquivos com a extensão XLS



Eu trabelhei esses dias na análise de um caso interessante: o OWA (Office Web Apps 2013) não abriu arquivos com a extensão XLS. O problema estava limitada a extensão XLS e não ocorreu com a versão mais recente (XLSX).

A resolução final foi habilitar o serviço do Firewall do Windows (MpsSvc), pois alguns produtos como por exemplo o Excel utilizam o serviço.

“If you tried to install Windows Essentials, but received error code 0x800706d9 or 0x80070643, you may need to turn on Windows Firewall. Windows Firewall is a program included with Windows XP, Windows Vista, and Windows 7 that monitors all of the data coming into and going out of your computer. Some programs included in Windows Essentials can only be installed if Windows Firewall is turned on.” 


Evento na interface:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
“Não sabemos o que aconteceu, mas houve algum erro. Você poderia tentar novamente?”
("We don't know what happened, but something went wrong. Could you please try that again?")
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


Os eventos encontrados no log do OWA:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
1.
Failed to create AppContainer profile: 0x800706d9

2.
ExcelService.PostProcessRequest: Excel Server Exception: System.InvalidOperationException: Failed to create XLS converter process, Hr=-2147467259
at Microsoft.Office.Excel.Server.CalculationServer.BaseWorkbook.<LoadWorkbookJobAsync>d__18.MoveNext()
at Microsoft.Office.Excel.Server.AsyncManager.Continue(Object ar) System.InvalidOperationException: Failed to create XLS converter process, Hr=-2147467259
at Microsoft.Office.Excel.Server.CalculationServer.BaseWorkbook.<LoadWorkbookJobAsync>d__18.MoveNext()
at Microsoft.Office.Excel.Server.AsyncManager.Continue(Object ar) StackTrace:
at uls.native.dll: (sig=53fdbc46-a3b4-42e3-b44b-f74a4e17fa48|2|uls.native.pdb, offset=26EA2)
at uls.native.dll: (offset=1F865)

3.
Watson bucket parameters: Uninitialized ULS, ULSException14, 86423e32 "excel web app", 0f0011a5 "15.0.4517.0", e6cb4d65 "microsoft.office.excel.server.calculationserver", 0f0011a5 "15.0.4517.0", 51a73998 "thu may 30 04:35:52 2013", 0000121a "0000121a", 00000252 "00000252", 54e7243f "invalidoperationexception", 65636931 "eci1"
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+