<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress.com" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>activex &amp;laquo; WordPress.com Tag Feed</title>
	<link>http://en.wordpress.com/tag/activex/</link>
	<description>Feed of posts on WordPress.com tagged "activex"</description>
	<pubDate>Sun, 29 Nov 2009 15:46:46 +0000</pubDate>

	<generator>http://en.wordpress.com/tags/</generator>
	<language>en</language>

<item>
<title><![CDATA[Microsoft Office Metadata Made Easy]]></title>
<link>http://softwaredevelopmentforecm.wordpress.com/2009/11/13/microsoft-office-metadata-made-easy/</link>
<pubDate>Fri, 13 Nov 2009 21:35:25 +0000</pubDate>
<dc:creator>Richard Franzen</dc:creator>
<guid>http://softwaredevelopmentforecm.wordpress.com/2009/11/13/microsoft-office-metadata-made-easy/</guid>
<description><![CDATA[Have you ever been writing an application and needed to retrieve or edit the properties of a Microso]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Have you ever been writing an application and needed to retrieve or edit the properties of a Microsoft Office document?  Did the thought of having to write code to perform Word or Excel automation send chills down your spine?  Were you worried that your documents&#8217; precious metadata would forever be trapped behind the taunting shield of the Windows Explorer property window?</p>
<div id="attachment_348" class="wp-caption aligncenter" style="width: 387px"><img class="size-full wp-image-348" title="FileProperties" src="http://softwaredevelopmentforecm.wordpress.com/files/2009/11/fileproperties.jpg" alt="FileProperties" width="377" height="513" /><p class="wp-caption-text">So close yet so far.</p></div>
<p>Fear not, all hope is not lost.  For there is another way to retrieve and edit the details of your Office files without even needing a version of Microsoft Office installed on the PC.  Microsoft has been kind of enough to provide the <a title="dsofile.dll" href="http://support.microsoft.com/kb/224351">dsofile.dll</a>, a handy ActiveX component that allows easy manipulation of the file details.  There is even demo code provided for VB6 and VB.Net.</p>
<p>But you may be asking yourself, &#8220;How can I get such a mysterious and powerful tool to work?&#8221;  Fortunately, dsofile is simple to use, just add it to your project and your ready to go.  Check out the sample code below for an example of how to use dsofile to retrieve information out of our document.</p>
<blockquote>
<pre style="text-align:left;">private void ReadOfficeDocumentMetadata(string fileName)
{
   DSOFile.OleDocumentPropertiesClass document = new DSOFile.OleDocumentPropertiesClass();
   document.Open(fileName, false, DSOFile.dsoFileOpenOptions.dsoOptionOpenReadOnlyIfNoWriteAccess);

   //Display document metadata
   txtTitle.Text = document.Properties.Title;
   txtAuthor.Text = document.SummaryProperties.Author;
   txtSubject.Text = document.SummaryProperties.Subject;
   txtCategories.Text = document.SummaryProperties.Category;
   txtComments.Text = document.SummaryProperties.Comments;

   document.Close(false);
}</pre>
</blockquote>
<p>Wow, it&#8217;s just that easy!  Let&#8217;s see it in action:</p>
<div id="attachment_352" class="wp-caption aligncenter" style="width: 468px"><img class="size-full wp-image-352" title="testapp" src="http://softwaredevelopmentforecm.wordpress.com/files/2009/11/testapp1.jpg" alt="Sample Application" width="458" height="239" /><p class="wp-caption-text">Take a moment and savor the sweet smell of success.</p></div>
<p>But don&#8217;t just take my word for it, try out <a href="http://support.microsoft.com/kb/224351">dsofile.dll</a> yourself.  The download comes with couple of sample applications that are worth checking out and provide a more in depth look at what this tool can do.  ECM Developers at <a title="ImageSource, Inc." href="http://www.imagesourceinc.com/index.htm">ImageSource</a> have already found uses for this wonderful tool, and so can you.</p>
<p><a href="http://www.linkedin.com/shareArticle?mini=true&#38;ro=true&#38;url=http%3A%2F%2Fsoftwaredevelopmentforecm%2Ewordpress%2Ecom%2F2009%2F11%2F13%2Fmicrosoft-office-metadata-made-easy%2F&#38;title=Microsoft+Office+Metadata+Made+Easy&#38;summary=Have+you+ever+been+writing+an+application+and+needed+to+retrieve+or+edit+the+properties+of+a+Microsoft+Office+document%3F++Did+the+thought+of+having+to+write+code+to+perform+Word+or+Excel+automation+send+chills+down+your+spine%3F++Were+you+worried+that+your+documents%E2%80%99+precious+metadata+would+forever+be+trapped+behind+the+taunting+shield+of+the+Windows+Explorer+property+window%3F&#38;source=Software+Development+for+ECM" target="_blank"><img class="alignnone size-full wp-image-367" title="Share on LinkedIn" src="http://softwaredevelopmentforecm.wordpress.com/files/2009/11/linkedin1.png" alt="" width="168" height="64" /></a>   <a href="http://twitter.com/home/?status=Microsoft Office Metadata Made Easy+http://softwaredevelopmentforecm.wordpress.com/2009/11/13/microsoft-office-metadata-made-easy/" target="_blank"><img class="alignnone size-full wp-image-368" title="Share on Twitter" src="http://softwaredevelopmentforecm.wordpress.com/files/2009/11/twitter1.png" alt="" width="168" height="64" /></a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Pic 431]]></title>
<link>http://freebornjohn.wordpress.com/2009/11/08/pic-431/</link>
<pubDate>Sat, 07 Nov 2009 14:02:05 +0000</pubDate>
<dc:creator>freebornjohn</dc:creator>
<guid>http://freebornjohn.wordpress.com/2009/11/08/pic-431/</guid>
<description><![CDATA[431 &#8220;As with a great many things, ActiveX was a good enough idea that had a highly unpleasant ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:left;">
<div id="attachment_3438" class="wp-caption aligncenter" style="width: 460px"><a href="http://freebornjohn.wordpress.com/files/2009/11/431.jpg"><img class="size-medium wp-image-3438 " title="431" src="http://freebornjohn.wordpress.com/files/2009/11/431.jpg?w=300" alt="431" width="450" height="300" /></a><p class="wp-caption-text">431</p></div>
<p>&#8220;As with a great many things, ActiveX was a good enough idea that had a highly unpleasant side effect. The ability to integrate third-party applications with the web browser was a pretty neat idea, unfortunately it also opened a Pandora&#8217;s box of security issues. Sort of like a weight loss pill that causes you to turn orange and grow a third arm out of your chest.&#8221; &#8211; <strong>Shaun Nichols</strong></p>
<p><a title="Top 10 Worst Microsoft products of all time" href="http://www.v3.co.uk/v3/news/2252318/top-worst-microsoft-products?page=1" target="_blank">Top 10 worst Microsoft products of all time</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Manually installing Solarwinds Toolset Integration features on Windows 7 with Internet Explorer 8]]></title>
<link>http://paulelso.wordpress.com/2009/11/07/manually-installing-solarwinds-toolset-integration-features-on-windows-7-with-internet-explorer-8/</link>
<pubDate>Sat, 07 Nov 2009 13:54:06 +0000</pubDate>
<dc:creator>PaulElso</dc:creator>
<guid>http://paulelso.wordpress.com/2009/11/07/manually-installing-solarwinds-toolset-integration-features-on-windows-7-with-internet-explorer-8/</guid>
<description><![CDATA[Scenario… Accessing Orion NMP from your Web browser, causes the “Install SWToolset.exe” message to b]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Scenario…</p>
<p>Accessing Orion NMP from your Web browser, causes the “Install SWToolset.exe” message to be displayed. Even though you install this Add On, it does not show up in the &#8216;Manage Add Ons&#8217; Internet Explorer 8 (IE <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> consequently resulting in the same “Install SWToolset.exe” prompt being displayed every time you click one of your monitored devices.</p>
<p>Fix…</p>
<p> Internet Explorer 8 on a Windows 7 cause the “Install SWToolset.exe” message to be prompted even though this has already been installed. Another common message is “To utilize the Solarwinds Toolset Integration features, be sure to allw ActiveX controls on your browser.” Open up all security settings for ActiveX Controls (like you stated above) </p>
<ul>
<li>Make sure the Orion website is in the Trusted group. This prevents the error message To utilize the Solarwinds Toolset Integration features, be sure to allow ActiveX controls on your browser.” </li>
<li>Open the browser, and manually download the SWToolset.exe
<ul>
<li>http://&#60;orionserver&#62;/Swtoolset.exe </li>
<li>Save this file somewhere (hopefully where all users will have rights) </li>
</ul>
</li>
<li>Open a command prompt with Administrator Rights (accessories -&#62; right mouse click -&#62; Run as administrator </li>
<li>Very important: Close all your browsers to the Orion website! </li>
<li>Navigate to the folder where you saved the SWToolset.exe file </li>
<li>Run &#34;SWToolset.exe /regserver&#34;. </li>
<li>Open the browser, navigate to Orion, and see if it asks you again about installing the ActiveX (it shouldn&#8217;t, you just did it manually). </li>
<li>If you do not get the message, give something a right click and see if you get the menu. </li>
</ul>
<p>This will manually install the ActiveX Control. It seems I was not able to get the control install via auto download from the browser.</p>
<p><a href="http://thwack.com/forums/p/17273/76582.aspx#76582">Source…</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How a country's IT infrastructure is held hostage]]></title>
<link>http://digitalsarkaar.wordpress.com/2009/10/27/how-a-countrys-it-infrastructure-is-held-hostage/</link>
<pubDate>Tue, 27 Oct 2009 10:30:15 +0000</pubDate>
<dc:creator>sandeep</dc:creator>
<guid>http://digitalsarkaar.wordpress.com/2009/10/27/how-a-countrys-it-infrastructure-is-held-hostage/</guid>
<description><![CDATA[&nbsp; There is a very interesting article about South Korea&#8217;s internet problem &#8211; it is ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>&#160;</p>
<p>There is a very interesting <a href="http://english.chosun.com/site/data/html_dir/2009/10/27/2009102700899.html" target="_blank">article</a> about South Korea&#8217;s internet problem &#8211; it is stuck to using Internet Explorer and ActiveX technology. Which means that the people of South Korea do not have choice in using the safer browsers (Firefox, Chrome) or other operating systems (Linux, Apple Mac).</p>
<p>Every citizen, no matter how poor, needs to pay for a license of Windows &#8211; unless he/she wants to stay away from using the govt&#8217;s websites, bank websites, etc.</p>
<p>It all happened because of a <a href="http://www.kanai.net/weblog/archive/2007/01/26/00h53m55s#003095" target="_blank">choice</a> the govt made &#8211; to develop a non-standard encryption standard called <a href="http://en.wikipedia.org/wiki/SEED" target="_blank">SEED</a>. Adhering to the technology choices of that time, the govt. developed a ActiveX <a href="http://webstandard.or.kr/en/?p=10">plugin</a> that was made <a href="http://opendotdotdot.blogspot.com/2008/07/activex-law-in-korea.html" target="_blank">mandatory</a> for any kind of secure access (for example to bank websites, etc.).</p>
<p>The world moved forward &#8211; ActiveX as a technology was found to be a significant security risk. However, South Korea remained to be stuck to its old technology. The situation became so bad that the govt. <a href="http://english.chosun.com/w21data/html/news/200701/200701240013.html" target="_blank">advised</a> its citizens against using Microsoft Vista, because the ActiveX plugin would not work on it.</p>
<p>In the first week of October this year, a <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=478839" target="_blank">patch</a> was added to Mozilla Firefox (by volunteers of Mozilla along with employees of Korea&#8217;s govt. agency) that <strong>may or may not </strong>work in actual practice.</p>
<p>What has this got to do with India ?</p>
<p>We do the exact same thing.</p>
<p>As I have written before, we have a few similar issues:</p>
<ul>
<li> the digital certificate registration site is <a href="http://digitalsarkaar.wordpress.com/2009/05/09/digital-certificates-and-identity-management-in-the-indian-govt/" target="_blank">only usable</a> using Internet Explorer (rather than a standardized system accessible to all browsers)</li>
<li>Income Tax deptt&#8217;s site <a href="http://digitalsarkaar.wordpress.com/2009/07/23/cryptographic-usage-on-indian-govt-websites-why-the-java-fetish/" target="_blank">uses a proprietary</a> Java plugin for certificate upload (rather than use free plugins for browsers like Firefox)</li>
<li>Income Tax deptt&#8217;s <a href="http://digitalsarkaar.wordpress.com/2009/07/22/not-free-after-all-indian-govts-free-income-tax-software/" target="_blank">tax calculation tools</a> are all in Microsoft Excel (which costs Rs 20000), rather than the free OpenOffice format.</li>
</ul>
<p>We need to get rid of such lock-in immediately &#8211; or the <em>aam aadmi </em>will need to shell out a month&#8217;s salary to calculate his income tax.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Microsoft, patch da record]]></title>
<link>http://paoblog.wordpress.com/2009/10/16/microsoft-patch-da-record/</link>
<pubDate>Fri, 16 Oct 2009 14:46:57 +0000</pubDate>
<dc:creator>paoblog</dc:creator>
<guid>http://paoblog.wordpress.com/2009/10/16/microsoft-patch-da-record/</guid>
<description><![CDATA[Il 13 ottobre Microsoft ha pubblicato un aggiornamento da record che risolve ben 34 vulnerabilità ch]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://3.bp.blogspot.com/_ebKDfm0h1oI/Stg1qRwjvfI/AAAAAAAAIt0/-Ka6Pqj4iwc/s1600-h/20091016+ms_exploitability_oct_09.png"><img style="float:left;cursor:pointer;width:320px;height:180px;margin:0 10px 10px 0;" src="http://3.bp.blogspot.com/_ebKDfm0h1oI/Stg1qRwjvfI/AAAAAAAAIt0/-Ka6Pqj4iwc/s320/20091016+ms_exploitability_oct_09.png" border="0" alt="" /></a>Il 13 ottobre Microsoft ha pubblicato un aggiornamento da record che risolve ben 34 vulnerabilità che riguardano Windows, Internet Explorer, Windows Media Player, Office, Silverlight, Forefront, Developer Tools, Internet Information Services, ActiveX e SQL Server. Otto di queste vulnerabilità sono classificate come critiche: una è una falla in Internet Explorer 8 sotto Windows 7.</p>
<p>L&#8217;aggiornamento verrà ricevuto automaticamente dalla maggior parte degli utenti, ed è importante installarlo appena possibile perché alcune delle vulnerabilità turate, per esempio quella del protocollo FTP in Internet Information Services e le quattro di Internet Explorer che richiedono solo di attirare la vittima su una pagina preconfezionata, vengono già sfruttate da alcuni criminali informatici.</p>
<p>Il record precedente per un singolo aggiornamento era di giugno 2009, con 31 vulnerabilità turate nell&#8217;ambito degli aggiornamenti che Microsoft da fine 2003 pubblica il secondo martedì di ogni mese.</p>
<p>Fonte: <a href="http://attivissimo.blogspot.com/">http://attivissimo.blogspot.com</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[ADO: ActiveX Data Objects]]></title>
<link>http://esal.wordpress.com/2009/10/15/ado-activex-data-objects/</link>
<pubDate>Thu, 15 Oct 2009 08:08:56 +0000</pubDate>
<dc:creator>esal</dc:creator>
<guid>http://esal.wordpress.com/2009/10/15/ado-activex-data-objects/</guid>
<description><![CDATA[ADO: ActiveX Data Objects by Jason T. Roff]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p style="text-align:center;"><strong>ADO: ActiveX Data Objects</strong></p>
<p style="text-align:center;">by Jason T. Roff</p>
<p><img class="aligncenter size-full wp-image-1084" title="ADO  ActiveX Data Objects - Jason T. Roff" src="http://esal.wordpress.com/files/2009/10/ado-activex-data-objects-jason-t-roff.jpg" alt="ADO  ActiveX Data Objects - Jason T. Roff" width="252" height="331" /></p>
<p style="text-align:center;"><span style="color:#0000ff;"><a href="http://www.ziddu.com/download/6776460/ADOActiveXDataObjects-JasonT.Roff.pdf.html"><img src="http://bse.depdiknas.go.id/images_gif/download.gif" border="0" alt="" width="91" height="31" /></a></span></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Computernaam schrikt malware af]]></title>
<link>http://ovis1964.wordpress.com/2009/10/12/computernaam-schrikt-malware-af/</link>
<pubDate>Mon, 12 Oct 2009 13:59:27 +0000</pubDate>
<dc:creator>ovis</dc:creator>
<guid>http://ovis1964.wordpress.com/2009/10/12/computernaam-schrikt-malware-af/</guid>
<description><![CDATA[Een berucht Trojaans paard dat FTP wachtwoorden steelt en besmette machines onderdeel van een botnet]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Een berucht Trojaans paard dat FTP wachtwoorden steelt en besmette machines onderdeel van een botnet maakt, schakelt zichzelf uit als het een bepaalde computernaam of gebruikersnaam ziet. Ook gebruikers van de Comodo Firewall hoeven zich over de Bredolabs Trojan geen zorgen te maken.</p>
<p><a href="http://www.security.nl/artikel/31154/1/Computernaam_schrikt_malware_af.html">   Lees meer</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Hello world]]></title>
<link>http://dotnettrails.wordpress.com/2009/10/10/hello-world/</link>
<pubDate>Sat, 10 Oct 2009 11:44:34 +0000</pubDate>
<dc:creator>dotnettrails</dc:creator>
<guid>http://dotnettrails.wordpress.com/2009/10/10/hello-world/</guid>
<description><![CDATA[This might be another site where I will post my trails with various .Net applications. Mainly I will]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>This might be another site where I will post my trails with various .Net applications. Mainly I will concentrate on WPF, Silverlight 3, Bridges between WPF, ASP.Net, Silverlight, ActiveX etc. More when time comes.</p>
<p>Lets connect those dots in .Net <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Verdien een gratis giftcard van € 500,=]]></title>
<link>http://ovis1964.wordpress.com/2009/10/09/verdien-een-gratis-giftcard-van-e-500/</link>
<pubDate>Fri, 09 Oct 2009 09:10:17 +0000</pubDate>
<dc:creator>ovis</dc:creator>
<guid>http://ovis1964.wordpress.com/2009/10/09/verdien-een-gratis-giftcard-van-e-500/</guid>
<description><![CDATA[Verdien een gratis giftcard van € 500,&#8211;, beantwoord een paar vragen en u krijgt de kaart thuis]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Verdien een gratis giftcard van € 500,&#8211;, beantwoord een paar vragen en u krijgt de kaart thuisgestuurd. !!</p>
<p>Een schitterende banner op een website in aantrekkelijke kleuren&#8230;maar wist u dat met een klein beetje kennis er al kwaadaardige code achter deze banner te plaatsen is? En dat deze malware weer andere malware kan binnenhalen die uw gebruikersnaam en wachtwoord van b.v. uw on-line bankrekening het internet kan opsturen? of al uw toetsaanslagen kan vastleggen?</p>
<p>Gelukkig kunt u zich beschermen tegen dit soort gevaren&#8230;..hoe?</p>
<p>1) Denk na voordat u een link of plaatje aanklikt&#8230;is het wel veilig.<br />
2) Gebruik een goede browser met de laatste versie van de software.<br />
3) Block het automatisch uitvoeren van scripts in uw browser.<br />
4) Laat u door iemand met kennis voorlichten.<br />
5) En last but not least&#8230;vertrouw je het niet &#8230;klik dan ook niet !!</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Digitally Sign your code]]></title>
<link>http://sandrobatista.wordpress.com/2009/10/06/digitally-sign-your-code/</link>
<pubDate>Tue, 06 Oct 2009 15:06:44 +0000</pubDate>
<dc:creator>Sérgio Charrua</dc:creator>
<guid>http://sandrobatista.wordpress.com/2009/10/06/digitally-sign-your-code/</guid>
<description><![CDATA[In one of our R&amp;D Department’s project (IDI), one feature needed was to let people select an ext]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>In one of our R&#38;D Department’s project (IDI), one feature needed was to let people select an extent and send the output data by mail, including an embedded picture of the map extent, its coordinates and other related info. All this has to be sent using the Outlook 2003/2007 mail client, installed on each of the client’s machines. This was a “must be/must have” requisits! Of course, installing the Outlook client on the server and make use of some webservices to call the Outlook stuffs was not a reliable solution, for several reasons, including server security. </p>
<p>The solution i found to let a webapplication, based on FLEX, to open on the client’s computer the Outlook mail editor was to deploy an ActiveX, preferably coded using the .NET Framework.</p>
<p>After some googling and coaching, one of my fellow colleagues made up his code and released a fully funcitional version of the ActiveX. One problem, though, was to let every client’s browsers to install and run the ActiveX control without the need to change the Security Features of each client’s browser.</p>
<p>The only way is to digitally sign the code! This is done by aquiring a certificate, sign your code with that certificate and deploy it on your webserver!</p>
<p>I found very little and confusing information about this subject on the web, and to help anyone with the same problems, i decided to publish this small how-to (also, this might help me too in the future… ).</p>
<p>After receiving your certificates from a certified CA (Certifacte Authority), install by clicking on each one.    </p>
<p>Normally you should have received 3 certificates:     <br />&#160;&#160;&#160; &#8211; a root certificate     <br />&#160;&#160;&#160; &#8211; a private certificate     <br />&#160;&#160;&#160; &#8211; a public certificate     </p>
<p>Open your VS2008 IDE, open your solution, and build *EACH PROJECT SEPARATELY*.     <br />&#160;&#160;&#160; &#8211; build your ActiveX Control first     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; go to the Bin folder of your project (might be bin/Debug or bin/Release, depending of your compiling setup)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; check if the DLL or EXE (or other) exists     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; go to Start Button -&#62; Microsoft Visual Studio 2008 (or any other version) -&#62; Visual Studio Tools     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; open the Visual Sudio Command Prompt (note: NOT the Windows Command Prompt &#8211; aka cmd.exe)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; enter: signtool signwizard     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; when asking for a file to sign, click on Browse, and go to your ActiveX Control Bin directory (might be bin/Debug or bin/Release, depending of your compiling setup)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select the DLL or EXE (or other)     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select Typical     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; click on Select From Store     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select the public certificate you wish to use to sign your code and then click Ok     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; optionally, enter Description and Web Locator     <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; Next and Finish     <br />All these steps are not obligatory, as they only sign your DLL or EXE file. Personally, i like to make sure that all my builds are signed, so that there won&#8217;t be any browser security issues upon installing or running. </p>
<p>Create a Setup project (if not existing yet&#8230;), set it to View-&#62; File System, and Add a File. Browse to your newly signed DLL or EXE and select it as your primary output.    <br />Also, on your Setup project properties (right-click on the project and select properties), go to Pre-Requisits and select according to your needs.     <br />Close the Properties window. Left click (once only) on the Setup project once again, and on the properties tab, change the ESRI Outlook ActiveX Control     <br />to whatever you wish. Remember that this value will appear on the Control Panel&#8217;s &#34;Add &#38; Remove Software&#34; applet, so chose the most userfriendly name possible.     <br />You can now build the Setup project. This will deploy in the /bin/debug/ folder an .EXE and .MSI file.     <br />Add a .INF file in that folder (preferably, name it as your .EXE or .MSI file).     <br />Add these lines in the .INF file : </p>
<pre class="csharpcode">[version]
signature=<span class="str">&#34;$CHICAGO$&#34;</span>
AdvancedINF=2.0
[Setup Hooks]
hook1=hook1 

[hook1]
run=msiexec.exe /i <span class="str">&#34;%EXTRACT_DIR%\Setup.msi&#34;</span> /qn </pre>
<p>Change the Setup.msi name to whatever .MSI filename you&#8217;ve set on your Setup project properties, and save. </p>
<p>Now for the Cab file&#8230; </p>
<p>Any ActiveX should be installed using a CAB file. Of course, you can use other methods on your own risks, but as this is a Best Practice, the less risk you use, the best results you get!<br />
  <br />To deploy .CAB files, you can use the CAB Setup Project from your Visual Studio, but personally, i prefer to use the CAB SDK. </p>
<p>Download the CabArc SDK available at <a href="http://support.microsoft.com/kb/310618">http://support.microsoft.com/kb/310618</a> . </p>
<p>Still in the Visual Studio Command Prompt, go to the bin/debug folder of your setup project, and type the following line:<br />
  <br />cabarc n Setup.cab * </p>
<p>This will zip all the files (the .EXE, .MSI and .INF files) into a unique file, named Setup.cab. </p>
<p>Type once again: signtool signwizard, and do all these step again, but now selecting your .CAB file<br />
  <br />- when asking for a file to sign, click on Browse, and go to your ActiveX Control Bin directory (might be bin/Debug or bin/Release, depending of your compiling setup) </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select the .CAB file </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select Typical </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; click on Select From Store </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; select the public certificate you wish to use to sign your code and then click Ok </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; NEXT </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; optionally, enter Description and Web Locator </p>
<p>&#160;&#160;&#160;&#160;&#160;&#160;&#160; &#8211; Next and Finish </p>
<p>Et voilá! You now have a Digitally Signed .CAB file ready for install and a Digitally Signed your code.<br />
  <br />You may now deploy it to your website. </p>
<p>You might want to check these websites for some more tips and tricks:<br />
  <br /><a href="http://www.codeproject.com/KB/cs/C__Deployment.aspx">http://www.codeproject.com/KB/cs/C__Deployment.aspx</a></p>
<p>Other tips:</p>
<p>you may need (almost certainly) to let your ActiveX install as a Safe Plugin/Script or Executable. For that, add the following lines </p>
<pre class="csharpcode">    [ComImport()]
    [Guid(<span class="str">&#34;CB5BDC81-93C1-11CF-8F20-00805F2CD064&#34;</span>)]
    [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
    <span class="kwrd">interface</span> IObjectSafety
    {
        [PreserveSig()]
        <span class="kwrd">int</span> GetInterfaceSafetyOptions(<span class="kwrd">ref</span> Guid riid, <span class="kwrd">out</span> <span class="kwrd">int</span> pdwSupportedOptions, <span class="kwrd">out</span> <span class="kwrd">int</span> pdwEnabledOptions);

        [PreserveSig()]
        <span class="kwrd">int</span> SetInterfaceSafetyOptions(<span class="kwrd">ref</span> Guid riid, <span class="kwrd">int</span> dwOptionSetMask, <span class="kwrd">int</span> dwEnabledOptions);
    }</pre>
<p>&#160;</p>
<p>On your main ActiveX Control class, implement the IObjectSafety interface and add these lines:</p>
<pre class="csharpcode">        <span class="kwrd">private</span> <span class="kwrd">const</span> <span class="kwrd">int</span> INTERFACESAFE_FOR_UNTRUSTED_CALLER = 0x00000001;
        <span class="kwrd">private</span> <span class="kwrd">const</span> <span class="kwrd">int</span> INTERFACESAFE_FOR_UNTRUSTED_DATA = 0x00000002;
        <span class="kwrd">private</span> <span class="kwrd">const</span> <span class="kwrd">int</span> S_OK = 0;

<span class="preproc">#region</span> IObjectSafety Members

        <span class="kwrd">public</span> <span class="kwrd">int</span> GetInterfaceSafetyOptions(<span class="kwrd">ref</span> Guid riid, <span class="kwrd">out</span> <span class="kwrd">int</span> pdwSupportedOptions, <span class="kwrd">out</span> <span class="kwrd">int</span> pdwEnabledOptions)
        {
            pdwSupportedOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER &#124; INTERFACESAFE_FOR_UNTRUSTED_DATA;
            pdwEnabledOptions = INTERFACESAFE_FOR_UNTRUSTED_CALLER &#124; INTERFACESAFE_FOR_UNTRUSTED_DATA;
            <span class="kwrd">return</span> S_OK;
        }

        <span class="kwrd">public</span> <span class="kwrd">int</span> SetInterfaceSafetyOptions(<span class="kwrd">ref</span> Guid riid, <span class="kwrd">int</span> dwOptionSetMask, <span class="kwrd">int</span> dwEnabledOptions)
        {
            <span class="kwrd">return</span> S_OK;

        }

        <span class="preproc">#endregion</span></pre>
<p>&#160;</p>
<p>Also, to automatically register/unregister the DLL or ActiveX control add:</p>
<pre class="csharpcode">

<span class="rem">        ///    &#60;summary&#62;</span>
        <span class="rem">///    Register the class as a    control    and    set    it's CodeBase entry</span>
        <span class="rem">///    &#60;/summary&#62;</span>
        <span class="rem">///    &#60;param name=&#34;key&#34;&#62;The registry key of the control&#60;/param&#62;</span>
        [ComRegisterFunction()]
        <span class="kwrd">public</span> <span class="kwrd">static</span> <span class="kwrd">void</span> RegisterClass(<span class="kwrd">string</span> key)
        {
            <span class="rem">// Strip off HKEY_CLASSES_ROOT\ from the passed key as I don't need it</span>
            StringBuilder sb = <span class="kwrd">new</span> StringBuilder(key);

            sb.Replace(<span class="str">@&#34;HKEY_CLASSES_ROOT\&#34;, &#34;</span><span class="str">&#34;);
            // Open the CLSID\{guid} key for write access
            RegistryKey k = Registry.ClassesRoot.OpenSubKey(sb.ToString(), true);

            // And create    the    'Control' key -    this allows    it to show up in
            // the ActiveX control container
            RegistryKey ctrl = k.CreateSubKey(&#34;</span>Control<span class="str">&#34;);
            ctrl.Close();

            // Next create the CodeBase entry    - needed if    not    string named and GACced.
            RegistryKey inprocServer32 = k.OpenSubKey(&#34;</span>InprocServer32<span class="str">&#34;, true);
            inprocServer32.SetValue(&#34;</span>CodeBase<span class="str">&#34;, Assembly.GetExecutingAssembly().CodeBase);
            inprocServer32.Close();
            // Finally close the main    key
            k.Close();
            MessageBox.Show(&#34;</span>Registered<span class="str">&#34;);
        }

        ///    &#60;summary&#62;
        ///    Called to unregister the control
        ///    &#60;/summary&#62;
        ///    &#60;param name=&#34;</span>key<span class="str">&#34;&#62;Tke registry key&#60;/param&#62;
        [ComUnregisterFunction()]
        public static void UnregisterClass(string key)
        {
            StringBuilder sb = new StringBuilder(key);
            sb.Replace(@&#34;</span>HKEY_CLASSES_ROOT\<span class="str">&#34;, &#34;</span><span class="str">&#34;);

            // Open    HKCR\CLSID\{guid} for write    access
            RegistryKey k = Registry.ClassesRoot.OpenSubKey(sb.ToString(), true);

            // Delete the 'Control'    key, but don't throw an    exception if it    does not exist
            k.DeleteSubKey(&#34;</span>Control<span class="str">&#34;, false);

            // Next    open up    InprocServer32
            //RegistryKey    inprocServer32 =
            k.OpenSubKey(&#34;</span>InprocServer32<span class="str">&#34;, true);

            // And delete the CodeBase key,    again not throwing if missing
            k.DeleteSubKey(&#34;</span>CodeBase<span class="str">&#34;, false);

            // Finally close the main key
            k.Close();
            MessageBox.Show(&#34;</span>UnRegistered&#34;);
        } 

&#160;
</pre>
<p>That should do the trick! </p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[How to debug an ActiveX Control in Internet Explorer 6 7 or 8 (IE6, IE7,IE8) with Megan Fox]]></title>
<link>http://littletechnibbles.com/2009/09/30/how-to-debug-an-activex-control-in-internet-explorer-6-7-or-8-ie6-ie7ie8-with-megan-fox/</link>
<pubDate>Wed, 30 Sep 2009 06:36:11 +0000</pubDate>
<dc:creator>littlenibbles</dc:creator>
<guid>http://littletechnibbles.com/2009/09/30/how-to-debug-an-activex-control-in-internet-explorer-6-7-or-8-ie6-ie7ie8-with-megan-fox/</guid>
<description><![CDATA[Hi, This post is going to be a test to see if the mere mention of Megan Fox and porn in the same sen]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Hi,<br />
This post is going to be a test to see if the mere mention of Megan Fox and porn in the same sentence and blog post will cause more hits on the web page.</p>
<p>What we are here to discuss is how to debug an ActiveX control when it is loaded into IE8. Basically you can&#8217;t just attach your Visual Studio debugger to the explorer process and set breakpoints; it just doesn&#8217;t work. So how do you do it?</p>
<p>There are two ways. Firstly you can have your code open a console window at startup and have all your output directed there. To do this use the following code:<br />
<code> AllocConsole();<br />
freopen ("CONOUT$", "w", stdout );<br />
</code></p>
<p>You can of course wrap those two lines inside an &#8220;if debug&#8221; or &#8220;#ifdef debug&#8221; type of call so it only opens up when you want to.</p>
<p>Now if you wanted to set breakpoints etc how do you do it? Well the total hacky way, which is what we are advocating here, is to raise an assertion early in your code and then debug the assertion in VS2005 or VS2008:</p>
<p><code> assert("Megan Fox would be a great fuck");  // this would be true but actually evaluates false; go figure! </code></p>
<p>This will cause internet explorer to blowup, and if you place it early in your controls initialisation you can successfully attach your debugger to the process and have full debug capabilities with your control running inside Internet Explorer.</p>
<p>Oh and for those Megan Fox fans, please click this link for you shall enjoy, we promise: <a title="Megan Fox" href="http://www.gregfoto.com/portfolio/image.php?album_id=43&#38;album_item_id=727" target="_self">http://www.gregfoto.com/portfolio/image.php?album_id=43&#38;album_item_id=727</a></p>
<p>That is all,</p>
<p>Little Nibbles</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Infopath ActiveX Controls]]></title>
<link>http://sladescross.wordpress.com/2009/09/26/infopath-activex-controls/</link>
<pubDate>Fri, 25 Sep 2009 23:07:22 +0000</pubDate>
<dc:creator>sladescross</dc:creator>
<guid>http://sladescross.wordpress.com/2009/09/26/infopath-activex-controls/</guid>
<description><![CDATA[http://msdn.microsoft.com/en-gb/ms788206(office.11).aspx]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://msdn.microsoft.com/en-gb/ms788206(office.11).aspx">http://msdn.microsoft.com/en-gb/ms788206(office.11).aspx</a></p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Hackers gaan massaal voor Adobe]]></title>
<link>http://ovis1964.wordpress.com/2009/09/23/hackers-gaan-massaal-voor-adobe/</link>
<pubDate>Wed, 23 Sep 2009 08:20:04 +0000</pubDate>
<dc:creator>ovis</dc:creator>
<guid>http://ovis1964.wordpress.com/2009/09/23/hackers-gaan-massaal-voor-adobe/</guid>
<description><![CDATA[Vergeet Windows, Internet Explorer of QuickTime, cybercriminelen richten zich steeds vaker en exclus]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Vergeet Windows, Internet Explorer of QuickTime, cybercriminelen richten zich steeds vaker en exclusief op Adobe software, iets wat zelfs virusexperts verbaast. </p>
<p><a href="http://www.security.nl/artikel/30980/1/Hackers_gaan_massaal_voor_Adobe.html">  Lees meer</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Java vs ActiveX - Security Tradoffs]]></title>
<link>http://javaswdevelopers.wordpress.com/2009/09/18/java-vs-activex-security-tradoffs/</link>
<pubDate>Fri, 18 Sep 2009 10:24:09 +0000</pubDate>
<dc:creator>dharmayu</dc:creator>
<guid>http://javaswdevelopers.wordpress.com/2009/09/18/java-vs-activex-security-tradoffs/</guid>
<description><![CDATA[Java and ActiveX are two systems that let people attach computer programs to Web pages. People like ]]></description>
<content:encoded><![CDATA[Java and ActiveX are two systems that let people attach computer programs to Web pages. People like ]]></content:encoded>
</item>
<item>
<title><![CDATA[Fix Runtime Error 429 activex]]></title>
<link>http://brooklynmark.wordpress.com/2009/09/17/fix-runtime-error-429-activex/</link>
<pubDate>Thu, 17 Sep 2009 21:54:24 +0000</pubDate>
<dc:creator>brooklynmark</dc:creator>
<guid>http://brooklynmark.wordpress.com/2009/09/17/fix-runtime-error-429-activex/</guid>
<description><![CDATA[Are you experiencing a runtime error 429? Runtime error 429 is a really common problem for Windows u]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Are you experiencing a runtime error 429? Runtime error 429 is a really common problem for Windows users which crashes occasionally. They are normally caused by problems within the Windows registry, where the runtime files are located.</p>
<p>Runtime error 429 originate in the registry, every time you install or uninstall a program, a &#8217;signature&#8217; of the action was registered in the Windows registry. With so many combining of records that overlap each other &#8211; especially bad installation, you will get a registry that is full of corrupt entries. These corrupted files will make Windows confused every time you try to start any program for that matter.</p>
<p>The Windows registry is the area on the computer which handle the data to run the software and hardware. Your registry will become infested with errors when the computer is going older and older. And since Windows does not have a tool to solve the registry problems you will get a worse and harder system. The computer will then be slow down dramatically and the performance of your computer will get worse.</p>
<p>Fortunately there is an simple way to clean and <a href="http://www.articlesbase.com/operating-systems-articles/fix-runtime-error-429-1137438.html">Runtime Error 429</a>  fix runtime error 429 quickly. You can run a free scan with a rated registry cleaner on the market. Not only fixing the runtime error 429, you will notice a jump in your overall computer speed.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Dranzer - ActiveX Nesnelerinin Güvenlik Testi Nasıl Yapılır?]]></title>
<link>http://fentanyl.wordpress.com/2009/09/11/dranzer-activex-nesnelerinin-guvenlik-testi-nasil-yapilir/</link>
<pubDate>Fri, 11 Sep 2009 12:47:17 +0000</pubDate>
<dc:creator>fentanyl</dc:creator>
<guid>http://fentanyl.wordpress.com/2009/09/11/dranzer-activex-nesnelerinin-guvenlik-testi-nasil-yapilir/</guid>
<description><![CDATA[Uzun zamandır activeX ile ilgili doğru düzgün bir güvenlik yazılımı görmemiştim. O yüzden bu yazılım]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Uzun zamandır activeX ile ilgili doğru düzgün bir güvenlik yazılımı görmemiştim. O yüzden bu yazılım gözümde bi kat daha değerli. Bugün security-database&#8217;de gezinirken rastladığım bu güzel programı paylaşmak istedim.</p>
<p><a href="http://fentanyl.wordpress.com/files/2009/09/dranzer.jpg"><img class="alignleft size-full wp-image-2329" title="dranzer" src="http://fentanyl.wordpress.com/files/2009/09/dranzer.jpg" alt="dranzer" width="600" height="402" /></a></p>
<p><strong>Download :</strong></p>
<p><a title="Linkification: http://sourceforge.net/projects/dranzer/" href="http://sourceforge.net/projects/dranzer/">http://sourceforge.net/projects/dranzer/</a></p>
<p><strong>Usage (Kullanım) :</strong></p>
<p>&#8220;dranzer.exe &#60;secenekler&#62;&#8221;</p>
<p><strong>Seçenekler :</strong></p>
<p>-o &#60;outputfile&#62; &#8211; Output Filename<br />
-i &#60;inputfile&#62; &#8211; Use input file CLSID list<br />
-d &#60;notestfile&#62; &#8211; Use don’t test CLSID List<br />
-g &#8211; Generate base COM list<br />
-k &#8211; Generate Kill Bit COM list<br />
-l &#8211; Generate Interface Listings<br />
-b &#8211; Load In Browser (IE)<br />
-t &#8211; Test Interfaces Properties and Methods<br />
-p &#8211; Test PARAMS (PropertyBag) in Internet Explorer<br />
-s &#8211; Test PARAMS (Binary Scan) in Internet Explorer<br />
-n &#8211; Print COM object information<br />
-v &#8211; Print out version information<br />
-r &#8211; Generate Kill Bit registry files</p>
<p><strong>Örnek:</strong></p>
<p>dranzer.exe -g</p>
<p><strong>User Guide :</strong></p>
<p><a title="Linkification: http://docs.google.com/Doc?docid=0ATn5yqW-bnJPZGhtZGNoZjVfMTAwYzU0NW04OXE&#38;hl=tr" href="http://docs.google.com/Doc?docid=0ATn5yqW-bnJPZGhtZGNoZjVfMTAwYzU0NW04OXE&#38;hl=tr">http://docs.google.com/Doc?docid=0ATn5yqW-bnJPZGhtZGNoZjVfMTAwYzU0NW04OXE&#38;hl=tr</a></p>
<p><strong>Döküman :</strong></p>
<p><a href="http://fentanyl.wordpress.com/files/2009/09/dranzer.pdf">dranzer</a></p>
<p><strong>Bakılması Tavsiye Kaynaklar :</strong></p>
<p><a title="Linkification: http://www.cert.org/vuls/discovery/dranzer.html" href="http://www.cert.org/vuls/discovery/dranzer.html">http://www.cert.org/vuls/discovery/dranzer.html</a></p>
<p>M.Serhat Dündar</p>
<p><!--more--></p>
<p><strong>User Guide :</strong></p>
<h3 style="page-break-before:always;">Overview</h3>
<p style="margin-top:.13in;margin-bottom:.13in;">ActiveX and COM vulnerabilities have been getting much attention lately. ActiveX allows a web browser to use software components installed on a Windows machine. Scripting technologies can allow an attacker to control the memory contents of a machine. By combining scripting and ActiveX, an attacker can take advantage of flaws in COM objects, which may allow execution of arbitrary code, information disclosure, or other security violations.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Dranzer is a tool that can detect flaws in COM objects.</p>
<h3>Target Audience</h3>
<p style="margin-top:.13in;margin-bottom:.13in;">Dranzer can be useful to various groups of people:</p>
<ol>
<li>
<p style="margin-top:.01in;margin-bottom:.01in;line-height:.2in;">Software developers can test COM objects as they are being developed. By testing during the software development process, developers can prevent vulnerabilities before the software is released to the public.</p>
</li>
<li>
<p style="margin-top:.01in;margin-bottom:.01in;line-height:.2in;">Software vendors can detect and fix flaws in their COM objects before attackers discover the flaws.</p>
</li>
<li>
<p style="margin-top:.01in;margin-bottom:.01in;line-height:.2in;">System administrators can assess the security of their systems with respect to COM objects.</p>
</li>
</ol>
<h2>ActiveX Vulnerability Classes</h2>
<h3>I. COM objects that crash Internet Explorer upon instantiation.</h3>
<p style="margin-top:.13in;margin-bottom:.13in;">Some COM objects will crash Internet Explorer just by being referenced in a web page. The COM object may not have been intended for a web browser, but Internet Explorer will attempt to instantiate any COM object that is referenced in an &#60;OBJECT&#62; tag, regardless of whether the object is a traditional ActiveX control. Certain COM objects will cause Internet Explorer to crash in a manner that attackers can exploit to execute arbitrary code.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">More information about this class of vulnerabilities is available in “Multiple COM objects cause memory corruption in Microsoft Internet Explorer” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/959049">http://www.kb.cert.org/vuls/id/959049</a></span></span>).</p>
<h2>II. COM objects that fail to properly validate input.</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">Attackers can use a script within a web page to control COM objects that are marked “Safe for scripting.” This script would call methods or access properties of the COM object. Attackers can control COM objects that are marked “Safe for initialization” by using &#60;PARAM&#62; tags in a web page. If the COM object fails to properly validate input, such as enforcing a maximum size for a string parameter, an attacker may be able to pass specially crafted parameters that would cause the object to crash Internet Explorer in a way that the attacker could exploit.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">An example of this type of vulnerability is available in “RealPlayer ActiveX control contains buffer overflow in ‘ShowPreferences’” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/698390">http://www.kb.cert.org/vuls/id/698390</a></span></span>).</p>
<h2>III. COM objects that do not restrict access to its methods.</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">Unless special restrictions are in place, any web page can call the methods provided by safe-for-scripting COM objects. Attackers may be able to take advantage of some of these methods to disclose information unintentionally; they may even be able to download and execute applications.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">An example of this type of vulnerability is available in “Microsoft Log Sink Class ActiveX control incorrectly marked ‘safe for scripting’” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/165022">http://www.kb.cert.org/vuls/id/165022</a></span></span>).</p>
<h1>Dranzer system requirements</h1>
<p style="margin-top:.13in;margin-bottom:.13in;">Operating system: Windows Vista, XP or Windows 2000. Windows XP is preferred.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Browser: Internet Explorer with ActiveX enabled for the Internet Zone (IE 6 and earlier) and Local Intranet Zone (IE 7 or later)</p>
<p style="margin-top:.13in;margin-bottom:.13in;"><strong>Note</strong>: We do not recommend running Dranzer on production systems. The process of testing COM objects essentially involves executing pieces of code that exist on a system, and this may have adverse effects in a test environment.</p>
<h1>Running Dranzer</h1>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">C:\Program Files\Dranzer\Dranzer\Release&#62;Dranzer.exe</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Execution mode not specified use -g,-k,-l,-b, or -p</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Usage: Dranzer.exe &#60;options&#62;</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Options:</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-o &#60;outputfile&#62; &#8211; Output Filename</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-i &#60;inputfile&#62; &#8211; Use input file CLSID list</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-d &#60;notestfile&#62; &#8211; Use don&#8217;t test CLSID List</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-g &#8211; Generate base COM list</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-k &#8211; Generate Kill Bit COM list</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-l &#8211; Generate Interface Listings</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-b &#8211; Load In Browser (IE)</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-t &#8211; Test Interfaces Properties and Methods</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-p &#8211; Test PARAMS (PropertyBag) in Internet Explorer</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-s &#8211; Test PARAMS (Binary Scan) in Internet Explorer</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-n &#8211; Print COM object information</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-v &#8211; Print out version information</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:80px;"><span style="font-family:Courier New,monospace;">-r - Generate Kill Bit registry files</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">Dranzer has the ability to test all three of the COM vulnerability classes described above.</p>
<h2>Class I: (<span style="font-family:Courier New,monospace;">-b</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">With the “<span style="font-family:Courier New,monospace;">-b</span>” option, Dranzer will check for COM objects that cause Internet Explorer to crash upon their instantiation.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -o testmachine_crashie.txt -b</span></p>
<h2>Class II: (<span style="font-family:Courier New,monospace;">-t</span>, <span style="font-family:Courier New,monospace;">-p</span>, <span style="font-family:Courier New,monospace;">-s</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">With the “<span style="font-family:Courier New,monospace;">-t</span>” option, Dranzer will check for COM objects that fail to properly validate input to methods.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -o testmachine_report.txt -t</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">With the “<span style="font-family:Courier New,monospace;">-p</span>” and “<span style="font-family:Courier New,monospace;">-s</span>” options, Dranzer will check for COM objects that fail to properly validate input to initialization parameters. Dranzer will check for available parameters by using either the IPropertyBag interface or by scanning the binary file, respectively.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -o testmachine_param_bag.txt -p</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -o testmachine_param_scan.txt -s</span></p>
<h2>Class III: (<span style="font-family:Courier New,monospace;">-l</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">With the “<span style="font-family:Courier New,monospace;">-l</span>” option, Dranzer will enumerate the methods and properties of COM objects that are marked “safe for scripting.”</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe –o testmachine_methods.txt -l</span></p>
<h2>Using baselines and exception lists</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">The “<span style="font-family:Courier New,monospace;">-g</span>” option can be used to create a “baseline” list of COM objects installed on a machine. This capability can be useful for determining what COM objects an application provides. For example:</p>
<p style="margin-top:.13in;margin-bottom:.13in;">1) Create a baseline snapshot for the machine being used in the test:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -o baseline.txt -g</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">2) Install software package</p>
<p style="margin-top:.13in;margin-bottom:.13in;">3) Run Dranzer with the “<span style="font-family:Courier New,monospace;">-d</span>” option to exclude the COM objects in the baseline:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Dranzer -d baseline.txt -o myapp_crashie.txt -b</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">Alternatively, you can execute the <span style="font-family:Courier New,monospace;">alltests.bat</span> script to run all Dranzer tests for COM objects that do not exist in the <span style="font-family:Courier New,monospace;">baseline.txt</span> file. Rather than using the command line listed in step 3, simply run <span style="font-family:Courier New,monospace;">alltests.bat</span>. This will test only the new COM objects that were installed with the software package in step 2. Included in the Dranzer installation are the files <span style="font-family:Courier New,monospace;">xpprosp2.txt</span> and <span style="font-family:Courier New,monospace;">vista.txt</span>. These files contain a list of COM objects that come with Windows XP Professional SP2 and Windows Vista, respectively. You can use these files as a starting point for testing COM objects on a system if you were unable to generate a baseline before installing the software.</p>
<h2>Using input lists</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">The “<span style="font-family:Courier New,monospace;">-i</span>” option can be used if you wish to provide a list of the COM objects that you would like to be tested.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -i mycomobjects.txt -o myobjects_test.txt -t</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This command will test the methods of the COM objects listed in the “mycomobjects.txt” input file.</p>
<p><span style="font-family:&#34;"><span style="font-style:italic;"><span style="font-weight:bold;"> </span></span></span></p>
<h2>Using Kill Bit Registry files</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">The “<span style="font-family:Courier New,monospace;">-r</span>” option can be used in combination with any of the Dranzer tests (-t, -p, -s, or -b) if you wish to generate kill bit registry files to prevent Internet Explorer from using controls that Dranzer has found to be defective.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Example usage:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;"> Dranzer.exe -t -r myobjects_test</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This command will test the methods of all COM objects on a system, and any COM object that has failed the methods test will be added to the myobjects_test.reg file. Opening this file will merge the kill bit values into the registry, which will prevent Internet Explorer from using those controls. If you wish to undo the kill bit changes, simply open the &#8220;Undo&#8221; version of the .reg file.  This will revert the kill bit values back to their original state.</p>
<h1>Interpreting the results</h1>
<h2>Class I: (<span style="font-family:Courier New,monospace;">-b</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">The output file will contain a list of all COM objects that have caused Internet Explorer to crash on their instantiation. The crashes are usually caused by memory access violations.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">As Dranzer encounters COM objects that cause Internet Explorer to crash, it will save HTML files in the current directory. Opening these files in Internet Explorer can help to verify the crashes. The file names will be <span style="font-family:Courier New,monospace;">{GUID}_load.html</span>, where <span style="font-family:Courier New,monospace;">GUID</span> is the identifier for the COM object.</p>
<h2>Class II: (<span style="font-family:Courier New,monospace;">-t</span>, <span style="font-family:Courier New,monospace;">-p</span>, <span style="font-family:Courier New,monospace;">-s</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">The output file will list all COM objects that have caused Internet Explorer to crash when Dranzer passed unexpected values to their methods. You can see the methods and properties that were accessed prior to the crash. The crashes are usually caused by memory access violations.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">As Dranzer encounters COM objects that cause Internet Explorer to crash as the result of initialization parameters, it will save HTML files in the current directory. Opening these files in Internet Explorer can help to verify the crashes. The file names will be <span style="font-family:Courier New,monospace;">{GUID}_param_pb.html</span> or <span style="font-family:Courier New,monospace;">{GUID}_param_bs.html</span>, depending on which flag was used. Dranzer does not determine the specific parameter that caused the crash but rather includes all possible parameters in the HTML file.</p>
<h2>Detailed crash analysis of COM objects</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">For both Class I and Class II COM object vulnerabilities, any access violation can indicate a vulnerability that an attacker may be able to exploit to execute arbitrary code. As a general rule, the more control an attacker has over the crash, the more likely that an arbitrary code execution vulnerability exists. Dranzer uses lowercase ‘x’ characters to test for buffer overflows, so any time the value “<span style="font-family:Courier New,monospace;">78</span>” is seen in the crash details, it usually indicates an exploitable flaw. In certain circumstances, Dranzer will detect an access violation but will not show details such as memory locations and operation. This situation can happen when the buffer overflow causes the structured exception handler (SEH) to be overwritten. When the SEH is overwritten, Dranzer is not able to trap the access violation and will not be able to display the crash details for the method that caused the buffer overflow. In these cases, the very last method called for a COM object is suspect. When testing fixes for COM objects, Dranzer must be able to test the object without indicating any access violations in the results.</p>
<h1>Dranzer output examples</h1>
<h2>Top-level errors</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">In the Dranzer output, these errors are listed at the beginning of each failed COM object. Possible errors include the following:</p>
<p style="text-indent:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">ERROR &#8211; Access violation (0xc0000005)</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This error indicates a crash as the result of accessing an invalid area of memory.</p>
<p style="text-indent:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">ERROR &#8211; Buffer Overrun Fault (0xfffffff3)</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This error is usually indicative of a buffer overflow that is caught by Microsoft’s <span style="font-family:Courier New,monospace;">/GS</span> buffer security check. The <span style="font-family:Courier New,monospace;">/GS</span> buffer overflow protection can make it more difficult to exploit the vulnerability. However, depending on what the vulnerable control’s code does, and whether the <span style="font-family:Courier New,monospace;">/SAFESEH</span> flag was used, an attacker can often bypass this protection. Note that Dranzer can produce this error as a false positive if the control uses the same error code for other errors. Also note that Dranzer will not clearly indicate which method caused the buffer overrun fault error code, but it will be the last method or property listed in the Dranzer output.</p>
<p style="text-indent:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">ERROR &#8211; COM Object Exception Occurred (0xfffffff9)</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">The COM object has generated an exception, which is usually the result of a memory access violation.</p>
<p style="text-indent:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">ERROR &#8211; Internet Explorer Crashed (0xfffffff7)</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">The HTML test case caused IE to crash. Use the relevant HTML file in the Dranzer directory to reproduce the crash.</p>
<p style="text-indent:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">ERROR &#8211; COM Object Operation Hung (0xffffffff)</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">The COM object has not responded within the time allowed. Certain COM objects can hang when a web page attempts to use them; others can have specific methods that will cause the hang. With either of these situations, the errors are not normally exploitable, but in certain cases a buffer overflow or other error can cause memory corruption that will lead to a hang. You need to further investigate these errors by testing other input values, if possible, to determine if this is the case.</p>
<h2>Method-level errors</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">In the Dranzer output, Method-level errors are listed for specific methods or properties. The following are example errors:</p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*** Access Violation ***</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Invoked Property Get &#8211; ObjectName::short PropName()</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Access violation at 0&#215;6E205539 :Bad read on 0&#215;00000000</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This is a null pointer dereference access violation as the result of attempting to refer to the “PropName” property. It is less likely to be exploitable because of the null pointer and also because the property takes no parameters. However, keep in mind that the Dranzer testing is sequential, so a crash in a specific method or parameter may be the result of the actions that took place before (above) it.</p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*** Access Violation ***</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Invoked Method &#8211; ObjectName::VARIANT_BOOL MethodName()</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Access violation at 0&#215;7C91142E :Bad read on 0&#215;78787878</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This indicates that a buffer overflow has taken place, with the memory address being the value specified in a buffer value (lowercase ‘x’ being <span style="font-family:Courier New,monospace;">0&#215;78</span> in ASCII). Depending on what the COM object is doing with the value that is being read from that location, this flaw has a high probability that an attacker can exploit it to execute arbitrary code. Note that this is another case in which the method that triggers the access violation is not the one that accepts user input. The buffer overflow likely took place in a previous parameter or method operation, but what is experienced can be considered a “second-order” flaw because the symptoms of the flaw are not immediately seen.</p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*** Access Violation ***</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Invoked Method &#8211; ObjectName::long MethodName([in] BSTR ParameterName&#60;&#8221;xxxx&#8230;..{10240}&#8221;&#62;)</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Access violation at 0&#215;78787878 :Bad read on 0&#215;78787878</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This indicates a buffer overflow vulnerability that is trivially exploitable. Two identical memory addresses indicate that the COM object is trying to execute code at the specified address. In this case, it’s the hex value of the characters in the parameter specified for the method.</p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*** Access Violation ***</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">*****************************</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Invoked Property Get &#8211; ObjectName::long PropertyName(long ParameterName&#60;-1&#62;)</span></p>
<p style="margin-left:.5in;margin-top:.04in;margin-bottom:.04in;line-height:100%;"><span style="font-family:Courier New,monospace;">Access violation at 0&#215;6338092E :Bad read on 0xFFFFFFFF</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">This is an example of a possible integer overflow. Depending on how the memory address can be affected by various parameter values, the flaw may be exploitable.</p>
<p style="margin-top:.13in;margin-bottom:.13in;"><strong>Note:</strong> If there is a top-level error reported, but no method-level violation is present, look at the last method or parameter that Dranzer tested in the output. This last entry is likely the one that caused the SEH to be overwritten or caused <span style="font-family:Courier New,monospace;">/GS</span> protection to trigger. Both of these cases will prevent a method-level violation from being reported. Vulnerabilities in which the SEH is overwritten as the result of a buffer overflow are usually trivially exploitable.</p>
<p style="margin-top:.13in;margin-bottom:.13in;">The behavior where the test process is terminated unexpectedly can cause important flaws to be overlooked. This can happen when a method-level violation is reported, but also the last method tested causes one of the exceptions described above. Dranzer may not report the method-level exception in the output. To work around this situation, use Dranzer to retest COM objects after all reported violations are fixed in the code and pay special attention to the last method listed in Dranzer test reports.</p>
<h2>Class III: (<span style="font-family:Courier New,monospace;">-l</span>)</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">This class of vulnerabilities requires the most analysis to determine if there is a problem. Look for method names that an attacker could leverage. The following are some examples of dangerous methods:</p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> ShellExecute(BSTR)</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> Reboot()</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;">DownloadFile(BSTR,BSTR)</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;">HttpPOST(BSTR,BSTR,BSTR)</span></p>
<p style="margin-top:.04in;margin-bottom:.04in;line-height:100%;margin-left:40px;"><span style="font-family:Courier New,monospace;"> GetUserName()</span></p>
<p style="margin-top:.13in;margin-bottom:.13in;">If the COM object does not restrict which web addresses can use the methods, attackers may be able to use the COM object to their advantage.</p>
<h1>Other COM fuzzers</h1>
<h2>axfuzz &#8211; &#60;<a title="Linkification: http://sourceforge.net/projects/axfuzz" href="http://sourceforge.net/projects/axfuzz">http://sourceforge.net/projects/axfuzz</a>&#62;</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">axfuzz was the inspiration for creating Dranzer. With the axfuzz package, you must use a combination of the axenum and axfuzz tools to fuzz test an entire system. When the testing tools crash, the tools must manually be restarted at a specific control after the one that caused the crash, and crash details are not included in the reports.</p>
<h2>COMRaider &#8211; &#60;<a title="Linkification: http://labs.idefense.com/labs-software.php?show=20" href="http://labs.idefense.com/labs-software.php?show=20">http://labs.idefense.com/labs-software.php?show=20</a>&#62;</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">COMRaider is a graphical tool for fuzz testing a single COM object. Crash details are included, which can help determine which COM flaws may be exploitable. Due to the program design, a high level of user interaction is required, and the tests take a long time to complete.</p>
<h2>AxMan &#8211; &#60;<a title="Linkification: http://metasploit.com/users/hdm/tools/axman" href="http://metasploit.com/users/hdm/tools/axman">http://metasploit.com/users/hdm/tools/axman</a>&#62;</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">AxMan is a browser-based method fuzz tester. AxMan is designed to fuzz test all of the COM objects installed on a system, and the test process involves multiple steps. Once a crash is encountered, the test process must be manually restarted to begin again using a control that exists in the list after the one that caused the crash. COM objects that display dialogs or present the Internet Explorer information bar will require a user to manually click those items to continue the test process. AxMan does not appear to support Internet Explorer 7.</p>
<h2>COM fuzzer comparison</h2>
<p style="margin-top:.13in;margin-bottom:.13in;">A single COM object that was known to be vulnerable was used to compare the fuzz test tools:</p>
<table style="width:538px;height:521px;" border="0" cellspacing="0" cellpadding="3">
<col width="182"></col>
<col width="97"></col>
<col width="97"></col>
<col width="97"></col>
<col width="97"></col>
<tbody>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Dranzer</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>axfuzz</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>COMRaider</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>AxMan</strong></p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Time to test object</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>1 sec.</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">4 sec.</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">140 sec.</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">660 sec.</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Exceptions found</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>3</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">2</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>3</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">1</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Vulnerability classes covered:</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-left:.25in;margin-top:.03in;" lang="en-US">Class I</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-left:.25in;margin-top:.03in;" lang="en-US">Class II (methods)</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-left:.25in;margin-top:.03in;" lang="en-US">Class II (params)</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-left:.25in;margin-top:.03in;" lang="en-US">Class III</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Output</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">Text</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">Text</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Database</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">None</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">User interaction required</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>None</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">Medium</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">High</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">Very high</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Test multiple objects</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Test sequences</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Crash details reported</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Multiple test values</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
</tr>
<tr valign="top">
<td>
<p style="margin-top:.03in;" lang="en-US">Kill bit protection</p>
</td>
<td style="background-color:#99ff99;">
<p style="margin-top:.03in;" lang="en-US" align="center"><strong>Yes</strong></p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
<td>
<p style="margin-top:.03in;" lang="en-US" align="center">No</p>
</td>
</tr>
</tbody>
</table>
<h1>References</h1>
<p style="margin-top:.13in;margin-bottom:.13in;">Microsoft ActiveX security resources:</p>
<ul>
<li>“Designing Secure ActiveX Controls” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://msdn.microsoft.com/en-us/library/aa752035.aspx">http://msdn.microsoft.com/en-us/library/aa752035.aspx</a></span></span>)</li>
<li>“ActiveX Security: Improvements and Best Practices” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://msdn.microsoft.com/en-us/library/bb250471.aspx">http://msdn.microsoft.com/en-us/library/bb250471.aspx</a></span></span>)</li>
<li>“How to stop an ActiveX control from running in Internet Explorer” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://support.microsoft.com/kb/240797">http://support.microsoft.com/kb/240797</a></span></span>)</li>
</ul>
<p style="margin-top:.13in;margin-bottom:.13in;">“Results of the CERT/CC Security in ActiveX Workshop” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.cert.org/reports/activeX_report.pdf">http://www.cert.org/reports/activeX_report.pdf</a></span></span>)</p>
<p style="margin-top:.13in;margin-bottom:.13in;">Vulnerability notes:</p>
<ul>
<li>“Multiple COM objects cause memory corruption in Microsoft Internet Explorer” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/959049">http://www.kb.cert.org/vuls/id/959049</a></span></span>)</li>
<li>“RealPlayer ActiveX control contains buffer overflow in ‘ShowPreferences’” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/698390">http://www.kb.cert.org/vuls/id/698390</a></span></span>)</li>
<li>“Microsoft Log Sink Class ActiveX control incorrectly marked ‘safe for scripting’” (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://www.kb.cert.org/vuls/id/165022">http://www.kb.cert.org/vuls/id/165022</a></span></span>)</li>
</ul>
<p style="margin-top:.13in;margin-bottom:.13in;">Other COM fuzzers:</p>
<ul>
<li>axfuzz (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://sourceforge.net/projects/axfuzz">http://sourceforge.net/projects/axfuzz</a></span></span>)</li>
<li>iDefense Labs Fuzzing Software Tools (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://labs.idefense.com/software/fuzzing.php#more_comraider">http://labs.idefense.com/software/fuzzing.php#more_comraider</a></span></span>)</li>
<li>AxMan (<span style="color:#0000ff;"><span style="text-decoration:underline;"><a href="http://metasploit.com/users/hdm/tools/axman">http://metasploit.com/users/hdm/tools/axman</a></span></span>)</li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Использование элементов ActiveX для Eclipse Plug-in]]></title>
<link>http://ashamray.wordpress.com/2009/09/09/use_activex_for_eclipse_plug-in/</link>
<pubDate>Wed, 09 Sep 2009 01:45:00 +0000</pubDate>
<dc:creator>Шамрай Александр</dc:creator>
<guid>http://ashamray.wordpress.com/2009/09/09/use_activex_for_eclipse_plug-in/</guid>
<description><![CDATA[Если кому необходимо использовать ActiveX элементы для плагинов Eclipse, то для этого нужно использо]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>Если кому необходимо использовать ActiveX элементы для плагинов Eclipse, то для этого нужно использовать библиотеки SWT, которые содержат функции для работы с OLE объектами. Вот и меня постигла такая потребность, поэтому пришлось немного поэкспериментировать. Если что указал ниже некорректно, то прошу шибко не судить, т.к. java я использовал первый раз, что уж говорить про разработку плагинов к Eclipse.</p>
<p>Для начала своих опытов я скачал Eclipse, который содержит все, что нужно для создания плагинов: <a href="http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-rcp-galileo-win32.zip">http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-rcp-galileo-win32.zip</a></p>
<p>Далее создал проект «Plug-in project» и при создании в мастере выбрал шаблон плагина «Plug-in with a view». И уже в новый проект добавил импорт необходимых классов:</p>
<p><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>import</strong></span><span style="color:black;"> org.eclipse.swt.ole.win32.OleAutomation;<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>import</strong></span><span style="color:black;"> org.eclipse.swt.ole.win32.OleControlSite;<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>import</strong></span><span style="color:black;"> org.eclipse.swt.ole.win32.OleFrame;<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>import</strong></span><span style="color:black;"> org.eclipse.swt.ole.win32.Variant;<br />
</span></span></p>
<p>Далее в классе представления плагина определил переменные необходимые для работы с OLE объектом:</p>
<p><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>private</strong></span><span style="color:black;"> OleControlSite </span><span style="color:#0000c0;">olesite</span><span style="color:black;">;<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>private</strong></span><span style="color:black;"> OleAutomation </span><span style="color:#0000c0;">oleauto</span><span style="color:black;">;<br />
</span></span></p>
<p>И в функцию <em>createPartControl</em>, предварительно убрав лишнее, внес изменения, т.е. добавление элемента на страницу представления:</p>
<p><span style="font-family:Courier New;font-size:10pt;"><span style="color:#7f0055;"><strong>public </strong></span><span style="color:#7f0055;"><strong>void</strong></span><span style="color:black;"> createPartControl(Composite parent) {<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        OleFrame frame = </span><span style="color:#7f0055;"><strong>new</strong></span><span style="color:black;"> OleFrame(parent, SWT.</span><span style="color:#0000c0;"><em>NONE</em></span><span style="color:black;">);<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        </span><span style="color:#0000c0;">olesite</span><span style="color:black;"> = </span><span style="color:#7f0055;"><strong>new</strong></span><span style="color:black;"> OleControlSite(frame, SWT.</span><span style="color:#0000c0;"><em>NONE</em></span><span style="color:black;">, </span><span style="color:#2a00ff;">&#8220;Word.Document&#8221;</span><span style="color:black;">);<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        </span><span style="color:#0000c0;">oleauto</span><span style="color:black;"> = </span><span style="color:#7f0055;"><strong>new</strong></span><span style="color:black;"> OleAutomation(</span><span style="color:#0000c0;">olesite</span><span style="color:black;">);<br />
</span></span><span style="color:black;font-family:Courier New;font-size:10pt;">}</span></p>
<p> </p>
<p style="text-align:center;"><img class="aligncenter" src="http://ashamray.files.wordpress.com/2009/09/090609_0644_1.png?w=720&#038;h=477" alt="" width="720" height="477" /></p>
<p>Если же необходимо использовать методы и свойства встроенного элемента, то можно использовать следующие функции класса <em>OleAutomation</em>:</p>
<ul>
<li><em>setProperty</em> – установить значение для свойства</li>
<li><em>getProperty</em> – получить значение для свойства</li>
<li><em>invoke</em> – выполнить метод</li>
</ul>
<p>Небольшой пример для присваивания значения свойству:</p>
<p><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        Variant valueq = </span><span style="color:#7f0055;"><strong>new</strong></span><span style="color:black;"> Variant((String) </span><span style="color:#2a00ff;">&#8220;New value&#8221;</span><span style="color:black;">); // определяем новое значение<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        </span><span style="color:#7f0055;"><strong>int</strong></span><span style="color:black;">[] rgdispid = </span><span style="color:#0000c0;">oleauto</span><span style="color:black;">.getIDsOfNames(</span><span style="color:#7f0055;"><strong>new</strong></span><span style="color:black;"> String[]{</span><span style="color:#2a00ff;">&#8220;CtlName&#8221;</span><span style="color:black;">});    // получаем номер свойства по его наименованию<br />
</span></span><span style="font-family:Courier New;font-size:10pt;"><span style="color:black;">        </span><span style="color:#0000c0;">oleauto</span><span style="color:black;">.setProperty(rgdispid[0], valueq); // устанавливаем новое значение</span></span></p>
<p>Ресурсы:</p>
<ul>
<li><a href="http://www.ibm.com/developerworks/library/os-ecplug/">Developing Eclipse plug-ins</a></li>
<li><a href="http://www.eclipse.org/articles/article.php?file=Article-ActivexSupportInSwt/index.html">ActiveX Support In SWT</a></li>
<li><a href="http://www.ibm.com/developerworks/library/os-activex/">Integrate ActiveX controls into SWT applications</a></li>
</ul>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Ασφαλές σερφάρισμα]]></title>
<link>http://xollothnews.wordpress.com/2009/08/27/%ce%b1%cf%83%cf%86%ce%b1%ce%bb%ce%ad%cf%82-%cf%83%ce%b5%cf%81%cf%86%ce%ac%cf%81%ce%b9%cf%83%ce%bc%ce%b1/</link>
<pubDate>Thu, 27 Aug 2009 09:49:33 +0000</pubDate>
<dc:creator>xollothnews</dc:creator>
<guid>http://xollothnews.wordpress.com/2009/08/27/%ce%b1%cf%83%cf%86%ce%b1%ce%bb%ce%ad%cf%82-%cf%83%ce%b5%cf%81%cf%86%ce%ac%cf%81%ce%b9%cf%83%ce%bc%ce%b1/</guid>
<description><![CDATA[PC World Tips: Ασφαλές σερφάρισμα &#8211; Internet, ασφάλεια, ασφαλές σερφάρισμα, βήμα βήμα, PC Worl]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://www.pcw.gr/Article/Security/how_to_security_tips_Internet_browser_pc_world/240-4521.html">PC World Tips: Ασφαλές σερφάρισμα &#8211; Internet, ασφάλεια, ασφαλές σερφάρισμα, βήμα βήμα, PC World συμβουλές, browser, security &#8211; PCW</a></p>
<blockquote><p><a href="http://images.google.com/imgres?imgurl=http://kids.interedkids.gr/internet-1/images/surfing.gif&#38;imgrefurl=http://kids.interedkids.gr/internet-1/safety.htm&#38;usg=__K21zKijhhM0MCmQV1X73lG2N6l0=&#38;h=109&#38;w=140&#38;sz=3&#38;hl=en&#38;start=5&#38;tbnid=O-etrY_nBWgdxM:&#38;tbnh=72&#38;tbnw=93&#38;prev=/images%3Fq%3D%25CE%2591%25CF%2583%25CF%2586%25CE%25B1%25CE%25BB%25CE%25AD%25CF%2582%2B%25CF%2583%25CE%25B5%25CF%2581%25CF%2586%25CE%25AC%25CF%2581%25CE%25B9%25CF%2583%25CE%25BC%25CE%25B1%26ndsp%3D18%26hl%3Den%26lr%3D%26sa%3DN%26start%3D1"><img style="border:1px solid;" src="http://tbn1.google.com/images?q=tbn:O-etrY_nBWgdxM:http://kids.interedkids.gr/internet-1/images/surfing.gif" alt="" width="93" height="72" /></a>Ρυθμίστε σωστά τον browser, ώστε να σερφάρετε με ασφάλεια, και μάθετε πώς να διαγράφετε τα ίχνη που αφήνουν οι περιηγήσεις σας</p>
<p>Οι δυο βασικοι τροποι προσβολής του <a class="zem_slink" title="Personal computer" rel="wikipedia" href="http://en.wikipedia.org/wiki/Personal_computer">PC</a> μέσω του browser είναι αφενός η ανακατεύθυνση του <a class="zem_slink" title="Uniform Resource Locator" rel="wikipedia" href="http://en.wikipedia.org/wiki/Uniform_Resource_Locator">URL</a> και αφετέρου η εισαγωγή κώδικα (συνήθως <a class="zem_slink" title="ActiveX" rel="wikipedia" href="http://en.wikipedia.org/wiki/ActiveX">ActiveX</a> ή <a class="zem_slink" title="JavaScript" rel="wikipedia" href="http://en.wikipedia.org/wiki/JavaScript">JavaScript</a>), με τον οποίο μπορεί κανείς να προσβάλει το σύστημα και να προξενήσει ζημιά, με την έννοια ότι μπορεί να δει και να υποκλέψει αρχεία και δεδομένα, να χρησιμοποιήσει τους πόρους του υπολογιστή για δικό του σκοπό και να παρακολουθεί τις κινήσεις μας.<a href="http://www.pcw.gr/Article/Security/how_to_security_tips_Internet_browser_pc_world/240-4521.html">[next]</a></p></blockquote>
<div class="zemanta-pixie" style="margin-top:10px;height:15px;"><a class="zemanta-pixie-a" title="Reblog this post [with Zemanta]" href="http://reblog.zemanta.com/zemified/5104ca1f-e910-82f9-a938-c2cc728b1d3e/"><img class="zemanta-pixie-img" style="border:medium none;float:right;" src="http://img.zemanta.com/reblog_e.png?x-id=5104ca1f-e910-82f9-a938-c2cc728b1d3e" alt="Reblog this post [with Zemanta]" /></a></div>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[According to a recent test, Internet Explorer 8 is the best browser at protecting users from malware. Not so fast...]]></title>
<link>http://websitegraveyard.wordpress.com/2009/08/18/ie-firefox-test-results/</link>
<pubDate>Tue, 18 Aug 2009 16:22:50 +0000</pubDate>
<dc:creator>Spen B</dc:creator>
<guid>http://websitegraveyard.wordpress.com/2009/08/18/ie-firefox-test-results/</guid>
<description><![CDATA[According to a recent test by a company called NSS Labs, Internet Explorer 8 beat the competition as]]></description>
<content:encoded><![CDATA[According to a recent test by a company called NSS Labs, Internet Explorer 8 beat the competition as]]></content:encoded>
</item>
<item>
<title><![CDATA[Creating an ActiveX Control in C# for use on an intranet]]></title>
<link>http://mikesharp.wordpress.com/2009/08/12/creating-an-activex-control-in-c-for-use-on-an-intranet/</link>
<pubDate>Wed, 12 Aug 2009 21:39:46 +0000</pubDate>
<dc:creator>mikesharp</dc:creator>
<guid>http://mikesharp.wordpress.com/2009/08/12/creating-an-activex-control-in-c-for-use-on-an-intranet/</guid>
<description><![CDATA[I was called upon to create an ActiveX control using C# for our local intranet. This may not be the ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p>I was called upon to create an ActiveX control using C# for our local intranet. This may not be the best way to do this and it certainly isn&#8217;t the only way, but it worked for me. This might be a nice starting point for anyone else struggling with this issue. For some reason I can only instantiate the ActiveX Object using JavaScript if I compile it using the commandline (csc.exe). I&#8217;m sure there&#8217;s a tweak in VS 2008 somewhere to fix this. Anyhow&#8230;</p>
<p><strong>Step 1. Create a class library</strong></p>
<p>For this example just put everything into a single class file. Normally I would not do this (separating interfaces, classes, etc. into their own .cs files).</p>
<p><strong>Step 2. Create an interface that will be visible to JavaScript</strong></p>
<p>This is just a plain ol&#8217; public interface with methods and properties. You call these from the ActiveX object that you create and get the values that they return.</p>
<p><strong>Step 3. Add code for the IObjectSafety interface into your class file</strong></p>
<p>You can pretty much copy/paste the code in this article (although that would be plagiarism):<br />
<a href="http://www.atalasoft.com/cs/blogs/rickm/archive/2009/06/03/net-2-0-activex-control-gotchas-safe-for-scripting-and-hooking-into-events.aspx">http://www.atalasoft.com/cs/blogs/rickm/archive/2009/06/03/net-2-0-activex-control-gotchas-safe-for-scripting-and-hooking-into-events.aspx</a></p>
<p><strong>Step 4. Create a class that implements both of these interfaces</strong></p>
<p>Add the [ClassInterface(ClassInterfaceType.AutoDual)] attribute to your class. Implement IObjectSafety as described in the other article above.</p>
<p><strong>Step 5. Open the Visual Studio commandline</strong></p>
<p>You should be able to find this under Programs/Program Files&#62;Microsoft Visual Studio (2008/2005/&#8230;)&#62;Visual Studio Tools&#62;&#8230;command prompt.<br />
Change directory to the output folder for your project.</p>
<p><strong>Step 6. Create a keyfile to give the assembly a strong name</strong></p>
<p>For example:<br />
sn -k MyKeyFile.snk</p>
<p><strong>Step 7. Compile using the VS commandline</strong></p>
<p>For example:<br />
csc /t:library ..\..\MyClassFile.cs /keyfile:MyKeyFile.snk</p>
<p><strong>Step 8. Push the ActiveX control out to your clients and register it using the regasm tool</strong></p>
<p>For example:<br />
regasm MyActiveX.dll /tlb:MyActiveXNet.dll /codebase</p>
<p><strong>Step 9: Call the ActiveX object from JavaScript</strong></p>
<p>For example:<br />
var x = new ActiveXObject(&#8220;ObjectNamespace.ObjectClassName&#8221;);<br />
x.SomeMethod(someparams);</p>
<p>If you have questions, feel free to leave comments and I may answer them as I have time. <img src='http://s.wordpress.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p><a href="http://mikesharp.files.wordpress.com/2009/07/michaelit2.jpg"><img style="border-right:0;border-top:0;display:inline;border-left:0;border-bottom:0;margin:0 10px 0 0;" title="michael-it" src="http://mikesharp.files.wordpress.com/2009/07/michaelit_thumb2.jpg?w=122&#038;h=92" border="0" alt="michael-it" width="122" height="92" align="left" /></a><a href="mailto:michael@bitrac.com">Michael Snead</a> is a passionate IT enthusiast and professional application developer with years of experience in diverse corporate environments including everything from the family-owned to the multi-national enterprise. Michael’s hobbies include X10 home automation, his open-source home theatre PC and converting his own electric car.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Holding back web innovation: IE6]]></title>
<link>http://thundernewt.com/2009/08/05/holding-back-web-innovation-ie6/</link>
<pubDate>Wed, 05 Aug 2009 06:42:22 +0000</pubDate>
<dc:creator>Dave</dc:creator>
<guid>http://thundernewt.com/2009/08/05/holding-back-web-innovation-ie6/</guid>
<description><![CDATA[UPDATE: My videochat recording site, wetoku.com, just joined the IE6 No More campaign! Mashable.com ]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><strong>UPDATE: My videochat recording site, </strong><a title="Wetoku - Videochat recording for bloggers, great for interviews" href="http://wetoku.com" target="_self"><strong>wetoku.com</strong></a><strong>, just joined the </strong><a href="http://ie6nomore.com" target="_self"><strong>IE6 No More campaign</strong></a><strong>!</strong></p>
<p><a href="http://mashable.com">Mashable.com</a> has been an outspoken critic of ongoing support for the outdated Internet Explorer 6 browser.  I wish Peter Cashmore and his peeps would spend a few months in Korea, because then they might do something to help the far eastern peninsula do something about its unhealthy devotion to the outdated technology.</p>
<p>Today, I read something about the IE6 issue that caught my eye&#8230;</p>
<blockquote><p>Microsoft Internet Explorer 6 was released in late 2001. For its time, it was a decent browser, but in 2009, it is still in use by a significant portion of the web population, and its time is now up.</p></blockquote>
<blockquote><p>As any web developer will tell you, working with IE 6 is one of the most difficult and frustrating things they have to deal with on a daily basis, taking up a disproportionate amount of their time. Beyond that, IE 6&#8217;s support for modern web standards is very lacking, restricting what developers can create and holding the web back.</p>
<p style="text-align:right;">(Source: <a href="http://ie6nomore.com" target="_self">http://ie6nomore.com</a> on August 5, 2009)</p>
</blockquote>
<p style="text-align:left;">
<div id="attachment_30" class="wp-caption aligncenter" style="width: 524px"><a href="http://ie6nomore.com"><img class="size-full wp-image-30 " title="ie6nomore.com" src="http://thundernewt.wordpress.com/files/2009/08/ie6nomore.png" alt="Sites that are participating in the IE6 No More campaign" width="514" height="475" /></a><p class="wp-caption-text">Sites that are participating in the IE6 No More campaign</p></div>
<p>IE6 doesn&#8217;t support HTML5.  According to Mashable.com:</p>
<blockquote>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Video Tag:</strong> By tagging a video with &#60; video &#62;, you can embed a video straight through HTML. Because of this, you can really control the look and feel of the video.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Audio Tag:</strong> The same thing as video, audio embedding becomes a lot easier.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Time:</strong> The tag will help browsers recognize time in HTML pages. There’s also &#60; meter &#62; for numeric values.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Drag and Drop:</strong> While there’s still wrangling on this point, with HTML 5 you will eventually be able to drag and drop files right on the browser. This is most notable for Google’s upcoming communication product, <a style="text-decoration:none;color:#409ed3;" href="http://mashable.com/tag/google-wave">Google Wave</a><span style="white-space:nowrap;"><a style="text-decoration:none!important;color:#409ed3;width:12px;" rel="http://www.blippr.com/apps/348749-Google-Wave.whtml" href="http://www.blippr.com/apps/348749-Google-Wave" target="_blank"><img style="display:inline!important;vertical-align:middle;background-image:initial;background-repeat:initial;background-attachment:initial;background-color:#ffffff;border:0 initial initial;margin:0 0 0 4px !important;padding:1px!important;" src="http://static1.blippr.com/images/inline-face_07.png?1237094634" alt="Google Wave" /></a></span>, a big reason why Google’s pushing hard for this.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Local Storage:</strong> Web apps work just like desktop apps nowadays, except they can’t easily save work right to your computer. HTML 5 fixes that problem.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Geolocation:</strong> With HTML 5, you should be able to make web apps that can determine your location and provide you more relevant information. With the rise of <a style="text-decoration:none;color:#409ed3;" href="http://mashable.com/2009/07/12/location-based-services/">location-based mobile services</a>, this is important.</p>
<p style="line-height:1.5;text-align:justify;margin:0 0 1em;padding:0;">- <strong>Canvas:</strong> The <a style="text-decoration:none;color:#409ed3;" href="http://en.wikipedia.org/wiki/Canvas_%28HTML_element%29" target="_blank">canvas HTML element</a> allows for scriptable bitmaps. What that means is that you can create beautiful graphics or imagery on the fly within HTML, meaning the interface of many web apps can become <em>a lot</em> more dynamic and richer. <a style="text-decoration:none;color:#409ed3;" href="https://bespin.mozilla.com/" target="_blank">Mozilla Bespin</a> is a big project for code editing using HTML 5, one that – you guessed it – won’t work in IE6.</p>
<p style="line-height:1.5;text-align:right;margin:0 0 1em;padding:0;">(Source: <a href="http://mashable.com/2009/07/16/ie6-must-die/">http://mashable.com/2009/07/16/ie6-must-die/</a> on August 5, 2009)</p>
</blockquote>
<p>Yesterday, I was talking with a few of my developers about the true cost of commitment.  It was in a different context, but the theme comes to mind here.  Korea has made an overwhelming commitment to IE6 that would be appalling to any of the guys running the sites above, or anyone who is serious about innovation.  Security considerations aside (performing simple tasks online in Korea requires the installation of multiple ActiveX controls, which has led to an &#8220;install, install, install&#8221; mentality that I am now guilty of), IE6 just doesn&#8217;t support the type of innovation that is taking place on the web today.  This means that Koreans are, by and large, unexposed to cutting edge web 2.0 applications.  When we are, we shrug with a collective &#8220;meh&#8221;, because the sites don&#8217;t work with the browser we&#8217;re forced to use by banks, e-commerce sites and the government perform to slowly, doesn&#8217;t display the originally intended design (and therefore looks like the guys who made the site don&#8217;t know what they&#8217;re doing), or doesn&#8217;t support the features that make the site useful.  The saddest cost of Korea&#8217;s commitment to IE6 and ActiveX is the opportunity cost&#8230; how many prospective innovators here are under-exposed to global best-of-breed web technology, and therefore are less likely to participate in making the next generation of the web?</p>
<p>I highly recommend that you take a look at both <a href="http://mashable.com/2009/07/16/ie6-must-die/">Mashable&#8217;s articles on IE6</a>, as well as <a href="http://ie6nomore.com">http://ie6nomore.com</a>.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[Must Needed Firefox Add-Ons Day #3: IE Tab]]></title>
<link>http://themodernview.wordpress.com/2009/08/05/must-needed-firefox-add-ons-day-3-ie-tab/</link>
<pubDate>Wed, 05 Aug 2009 05:09:43 +0000</pubDate>
<dc:creator>themodernview</dc:creator>
<guid>http://themodernview.wordpress.com/2009/08/05/must-needed-firefox-add-ons-day-3-ie-tab/</guid>
<description><![CDATA[Want to watch a .wmv file in your browser? Need to know how your blog feels in Internet Explorer? Or]]></description>
<content:encoded><![CDATA[<div class='snap_preview'><p><a href="http://themodernview.wordpress.com/files/2009/08/ietab.jpg"><img class="alignright size-full wp-image-84" title="IETab" src="http://themodernview.wordpress.com/files/2009/08/ietab.jpg" alt="IETab" width="210" height="203" /></a>Want to watch a .wmv file in your browser? Need to know how your blog feels in Internet Explorer? Or what about those pesky ActiveX controls? Don&#8217;t worry, this post just may have solved all of your Firefox problems:</p>
<p>Continuing my series of &#8220;must needed Firefox add-ons,&#8221; today&#8217;s add-on is <a href="https://addons.mozilla.org/en-US/firefox/addon/1419">IE Tab</a>, a powerful tool that allows users to open links in an embedded Internet Explorer tab right in Firefox. Yes, this means ActiveX controls as well as IE&#8217;s smooth scrolling will now be directly available on Firefox. You can even run a <a href="http://ietab.mozdev.org/">Windows Update</a> via this add-on.</p>
</div>]]></content:encoded>
</item>
<item>
<title><![CDATA[En Güvenilir 10 Güvenlik yazılımı]]></title>
<link>http://ajanslive.wordpress.com/2009/07/20/en-guvenilir-10-guvenlik-yazilimi/</link>
<pubDate>Mon, 20 Jul 2009 16:54:33 +0000</pubDate>
<dc:creator>ajanslive</dc:creator>
<guid>http://ajanslive.wordpress.com/2009/07/20/en-guvenilir-10-guvenlik-yazilimi/</guid>
<description><![CDATA[Windows İşletim Sistemi Platformu, virüslerin açık hedefi konumunda. Sizlere önerdiğimiz 10 etkili g]]></description>
<content:encoded><![CDATA[Windows İşletim Sistemi Platformu, virüslerin açık hedefi konumunda. Sizlere önerdiğimiz 10 etkili g]]></content:encoded>
</item>

</channel>
</rss>
