North52

Simplifying, CRM & xRM

MS CRM 2011 – Implications for Microsoft Security Patch KB2840628

On Tuesday July 09, 2013 Microsoft made available via Windows Update the following security patch,

MS13-052: Description of the security update for the .NET Framework 4 on Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7, and Windows Server 2008 R2

http://support.microsoft.com/kb/2840628

This has had a knock-on affect to applications that run in a sand-boxed environment such as plug-ins running in Microsoft CRM 2011. What we have observed & tested is that if there is a method call on certain classes to the System.Diagnostics namespace an Exception will now be thrown. So your application could be running fine right now but as soon as KB2840628 gets installed via Windows Update or manually by a user the code will now fail & throw an exception. A simple test we ran was to use the standard code from the CRM SDK & add 1 additional line of code to make a tracing call as show below which caused the plugin to throw an exception (listed at bottom of this post).

code_kb2840628

The following are 2 quick & temporary ways  to resolve the issue immediately,

  • Remove KB2840628 from server
  • Using the Plugin Registration tool change the Plugin not to run in the Sandbox

The 2 options above will not be available to you if you are running CRM Online & you won’t know when Microsoft will push the security update to the CRM Online Servers either. The following are the two sets of steps we took to resolve the issue,

Specific to System.Diagnostics

  • Review all your own code for references to the System.Diagnostics namespace
  • Review all third party code libraries for references to the System.Diagnostics namespace
  • If found look to remove code
  • Perform full before & after tests on a server with KB2840628 installed

Note: Method calls to System.Diagnostics such as Trace.TraceInformation() are the only ones we have found & there may be more code that gets affected by this security patch. So we also performed the following,

General Testing

  • Install KB2840628 on a test server
  • Exercise all of your integration & manual tests
  • Perform necessary fixes
  • Please blog or leave a comment on this blog post with any new findings

In the last few days this issue has started to turn up in several other Microsoft & non-Microsoft products,

http://nachtlog.de/sql-server-2012-securityexception-nach-windows-update

http://blogs.msdn.com/b/scstr/archive/2013/07/12/drs-sorunu-yama-ms13-052-gt-net-4-with-sql-2012-y-252-kledikten-sonra.aspx

http://myitforum.com/myitforumwp/2013/07/13/cm-issues-with-ms13-052-kb2840628/

http://social.technet.microsoft.com/Forums/en-US/67677199-1a30-4df9-a8e7-9ab6944e3f84/systemtypeinitializationexception-in-ctor-of-systemdatasqlclientsqlconnection-in

http://social.msdn.microsoft.com/Forums/en-US/30f3d4bb-37e7-46c1-b94b-e79de9a4b740/permission-problem

http://advancedhmi.com/forum/index.php?action=recent

http://microsofttouch.fr/default/b/js/archive/2013/07/14/sccm-2007-2012-effets-de-bord-de-la-kb2840628-du-bulletin-ms13-051.aspx

Plugin Exception from our Sample Test Code Above:

Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35]]: Unexpected exception from plug-in (Execute): Microsoft.Crm.Sdk.Samples.AccountNumberPlugin: System.MethodAccessException: Attempt by method ‘System.Configuration.TypeUtil.CreateInstanceRestricted(System.Type, System.Type)’ to access method ‘System.Diagnostics.AssertSection..ctor()’ failed.Detail:
<OrganizationServiceFault xmlns:i=”http://www.w3.org/2001/XMLSchema-instance&#8221; xmlns=”http://schemas.microsoft.com/xrm/2011/Contracts”&gt;
<ErrorCode>-2147220956</ErrorCode>
<ErrorDetails xmlns:d2p1=”http://schemas.datacontract.org/2004/07/System.Collections.Generic”&gt;
<KeyValuePairOfstringanyType>
<d2p1:key>CallStack</d2p1:key>
<d2p1:value xmlns:d4p1=”http://www.w3.org/2001/XMLSchema&#8221; i:type=”d4p1:string”> at System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean&amp; canBeCached, RuntimeMethodHandleInternal&amp; ctor, Boolean&amp; bNeedSecurityCheck)
at System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache)
at System.RuntimeType.CreateInstanceDefaultCtor(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean skipCheckThis, Boolean fillCache)
at System.Activator.CreateInstance(Type type, Boolean nonPublic)
at System.Configuration.TypeUtil.CreateInstanceRestricted(Type callingType, Type targetType)
at System.Configuration.ConfigurationElement.CreateElement(Type type)
at System.Configuration.ConfigurationElement.get_Item(ConfigurationProperty prop)
at System.Diagnostics.DefaultTraceListener.InitializeSettings()
at System.Diagnostics.DefaultTraceListener.get_LogFileName()
at System.Diagnostics.DefaultTraceListener.Write(String message, Boolean useLogFile)
at System.Diagnostics.TraceListener.WriteHeader(String source, TraceEventType eventType, Int32 id)
at System.Diagnostics.TraceListener.TraceEvent(TraceEventCache eventCache, String source, TraceEventType eventType, Int32 id, String message)
at System.Diagnostics.TraceInternal.TraceEvent(TraceEventType eventType, Int32 id, String format, Object[] args)
at Microsoft.Crm.Sdk.Samples.AccountNumberPlugin.Execute(IServiceProvider serviceProvider)
at Microsoft.Crm.Sandbox.SandboxAppDomainHelper.Execute(IServiceEndpointNotificationService serviceBusService, IOrganizationServiceFactory organizationServiceFactory, String pluginTypeName, String pluginConfiguration, String pluginSecureConfig, IPluginExecutionContext requestContext)
at Microsoft.Crm.Sandbox.SandboxAppDomainHelper.Execute(IServiceEndpointNotificationService serviceBusService, IOrganizationServiceFactory organizationServiceFactory, String pluginTypeName, String pluginConfiguration, String pluginSecureConfig, IPluginExecutionContext requestContext)
at Microsoft.Crm.Sandbox.SandboxWorker.Execute(SandboxCallInfo callInfo, SandboxPluginExecutionContext requestContext, Guid pluginAssemblyId, Int32 sourceHash, String assemblyName, Guid pluginTypeId, String pluginTypeName, String pluginConfiguration, String pluginSecureConfig, SandboxRequestCounter&amp; workerCounter)</d2p1:value>
</KeyValuePairOfstringanyType>
</ErrorDetails>
<Message>Unexpected exception from plug-in (Execute): Microsoft.Crm.Sdk.Samples.AccountNumberPlugin: System.MethodAccessException: Attempt by method ‘System.Configuration.TypeUtil.CreateInstanceRestricted(System.Type, System.Type)’ to access method ‘System.Diagnostics.AssertSection..ctor()’ failed.</Message>
<Timestamp>2013-07-14T18:18:08.308017Z</Timestamp>
<InnerFault i:nil=”true” />
<TraceText>

[SamplePlugins: Microsoft.Crm.Sdk.Samples.AccountNumberPlugin]
[a06ca4b8-a7ec-e211-b741-00155d991705: Microsoft.Crm.Sdk.Samples.AccountNumberPlugin: Create of account]
</TraceText>
</OrganizationServiceFault>

 

 

Updated: 15/07/2013 Updated Url to Security Patch

Advertisements

WPC 2013 – Dynamics CRM 2013 – CRM Online Datacenter Screenshots

datacenter1

datacenter2

datacenter3

datacenter4

datacenter5

datacenter6

datacenter7

datacenter8

datacenter9

datacenter10

datacenter11

datacenter12

datacenter13

datacenter9

WPC 2013 – Dynamics CRM 2013 – Marketing Pilot Screenshots

marketingpilot2

marketingpilot3

marketingpilot4

marketingpilot5

marketingpilot6

marketingpilot8

marketingpilot9

marketingpilot10

marketingpilot11

WPC 2013 – Dynamics CRM 2013 – Licensing Screenshots

sc22

sc21

WPC 2013 – Dynamics CRM 2013 – Netbreeze Screenshots

sc13

sc14

sc15

sc16

sc17

sc19

sc20

WPC 2013 – Dynamics CRM 2013 – Mobile Screenshots

Edit: Updated 10-Jul-13 with new Screenshots.

mobile1

 

mobile2

 

mobile4

 

mobile5

 

mobile6

 

mobile7

 

mobile8

 

mobile9

 

mobile10

 

mobile11

 

mobile12

 

mobile13

 

mobile14

 

mobile15

 

mobile16

 

mobile17

 

mobile18

 

mobile19

 

mobile20

sc11_ipad

WPC 2013 – Dynamics CRM 2013 – Application Screenshots

sc1

sc2

sc3

sc4

sc6

sc8

N52 Opportunity Analytics

Today we are announcing our first accelerator called N52 Opportunity Analytics. We have several of these accelerators planned & there aim is to solve real world Dynamics CRM problems. All accelerators will be using N52 Formula Manager and will in effect act as mini showcases of the product. They will be available for free & all will work with the Standard Edition (free) of N52 Formula Manager.

n52opportunityanalytics

This first accelerator  is based around collecting Opportunity Analytic data. We have created an introduction video to the accelerator so people can get an idea of what it does & this can be viewed on our YouTube Training Channel at,

https://www.youtube.com/watch?v=zGN4dWfQQv0

In addition we have made all the components available for download & have created this Online Knowledge base article to provide an easy step by step guide for installation,

http://support.north52.com/knowledgebase/articles/195290-n52-opportunity-analytics-accelerator-install

We hope you enjoy this first accelerator & if you have any questions please just drop us a question at support@north52.com

N52 Formula Manager – Spring Release

Cork, Ireland – April 11th, 2013 – North52,  today announced its spring release of their flagship product N52 Formula Manager for Dynamics CRM.

“Now that we have got this latest release publicly available we look forward to feedback from our users and exciting new developments to come.” said John Grace, Founder & CEO at North52.

All details of the Spring release can be found at the N52 Formula Manager – Release History knowledge base article & training videos of the new functional features can be found on the North52 YouTube Channel.

This release also brings changes to the pricing structure where we have been receiving heaps of feedback in relation to creating a premium offering. The number one piece of feedback was to create an offering that allows unlimited formulas for an unlimited number of CRM organizations at a legal entity. So today we are announcing the following changes,

Today’s Announcement

  • Enterprise Edition now allows for unlimited formulas & an unlimited number of CRM organizations at a single end user legal entity
  • Enterprise Edition includes a 2 day workshop
  • Enterprise Edition includes being assigned a single point of contact for all support
  • Enterprise Edition includes 20 support call tickets
  • Professional Edition changes to purchasing bundles of 50 formulas

Existing Customers Changes

  • Existing Professional Edition customers remain at this level & have in effect 2 bundles of 50 formulas
  • Existing Enterprise Edition customers remain at this level & continue to have unlimited formulas for a single CRM organization
  • Existing Enterprise Edition customers do not qualify for the 2-day workshop
  • Existing Professional & Enterprise Edition customers remain on their old pricing structures

About North52
North52 is a leader in the creation of software products for the Microsoft Dynamics CRM platform. As a Microsoft partner, North52 has an impressive and rapidly growing list of customers benefiting from its products. Headquartered in Cork, Ireland with a further office in London, United Kingdom, North52’s core values of the right Technology, the right People and the right Partnerships ensures delivery of great products for their customers.

For more information, visit www.north52.com or contact info@north52.com

N52 Formula Manager – UR12 & CRM December 2012 Service Update

Cork, Ireland – January 31th, 2013 – North52, a leading provider of software products for the Microsoft Dynamics CRM platform, announced today general availability of their latest release of N52 Formula Manager. This release supports the Microsoft updates for CRM December 2012 Service Update & Update Rollup 12.

“We are very excited to make this release available to support the latest Microsoft updates & particularly to demonstrate that as Microsoft continue to improve Dynamics CRM that North52 will be there every step of the way.” said John Grace, Founder & CEO of North52.

“In addition to supporting the new Microsoft release we also added a key feature to support calling a formula from a CRM form. This was the most requested feature to date & so we are delighted to make this available.”

Full details of the release can be found at the N52 Formula Manager – Release History knowledge base article & training videos of the new functional features can be found on the North52 YouTube Channel.

N52 Formula Manager allows for the creation & execution of Excel like dynamic custom formulae within CRM 2011, enabling:

  • Dynamics CRM consultants to deliver solutions up to 10 times faster
  • Reduced need for in depth coding (C#, Javascript) by simply writing formulae
  • Consultants focus on adding business value instead of troubleshooting bugs
  • Sales & project managers to commit to deadlines with confidence

About North52
North52 is a leader in the creation of software products for the Microsoft Dynamics CRM platform. As a Microsoft partner, North52 has an impressive and rapidly growing list of customers benefiting from its products. Headquartered in Cork, Ireland with a further office in London, United Kingdom, North52’s core values of the right Technology, the right People and the right Partnerships ensures delivery of great products for their customers.

For more information, visit www.north52.com or contact info@north52.com

[Update: Change date from 2012 to 2013]