The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,862 other subscribers

Archive for 2016

DEFCON 17: More Tricks For Defeating SSL – YouTube

Posted by jpluimers on 2016/07/11

Still relevant after a few years: DEFCON 17: More Tricks For Defeating SSL – YouTube.

I landed there after trying to find out how to verify the Internic root server file is actually pubished by Internic via authentication – Ways to sign gpg public key so it is trusted? – Information Security Stack Exchange.

I remember reading his “if you have to perform any cryptographic operation before verifying the MAC on a message you’ve received, it will somehow inevitably lead to doom” post (Moxie Marlinspike >> Blog >> The Cryptographic Doom Principle), but never noticed his videos.

It is still relevant as there are lots of implementations still vulnerable to these kinds of attacks.

Many more of his blog entries are interesting as well:

Read the rest of this entry »

Posted in Encryption, Hashing, https, OpenSSL, PKI, Power User, Public Key Cryptography, Security, Signing | Leave a Comment »

Sysinternals Suite – lots of tools are now available as 64-bit as well

Posted by jpluimers on 2016/07/08

In the past the Sysinternals Suite used to have only a few 64-bit versions of their tools, but recently they added many more.

The documentation doesn’t reflect this yet, but the online versions do:

These are 64-bit:

     Wednesday, June 29, 2016  9:42 PM       403120 accesschk64.exe
     Wednesday, June 29, 2016  9:42 PM       841904 Autoruns64.exe
     Wednesday, June 29, 2016  9:42 PM       742064 autorunsc64.exe
     Wednesday, June 29, 2016  9:42 PM       154792 Clockres64.exe
     Wednesday, June 29, 2016  9:42 PM       268960 Contig64.exe
     Wednesday, June 29, 2016  9:42 PM       158376 diskext64.exe
     Wednesday, June 29, 2016  9:42 PM       190104 du64.exe
     Wednesday, June 29, 2016  9:42 PM       169136 FindLinks64.exe
     Wednesday, June 29, 2016  9:42 PM       226464 handle64.exe
     Wednesday, June 29, 2016  9:42 PM       164520 hex2dec64.exe
     Wednesday, June 29, 2016  9:42 PM       236200 junction64.exe
     Wednesday, June 29, 2016  9:43 PM       220336 Listdlls64.exe
     Wednesday, June 29, 2016  9:43 PM       156840 LoadOrd64.exe
     Wednesday, June 29, 2016  9:43 PM       188584 LoadOrdC64.exe
     Wednesday, June 29, 2016  9:43 PM       249536 logonsessions64.exe
     Wednesday, June 29, 2016  9:43 PM       154792 movefile64.exe
     Wednesday, June 29, 2016  9:43 PM       265904 notmyfault64.exe
     Wednesday, June 29, 2016  9:43 PM       271032 notmyfaultc64.exe
     Wednesday, June 29, 2016  9:43 PM       158896 ntfsinfo64.exe
     Wednesday, June 29, 2016  9:43 PM       156336 pendmoves64.exe
     Wednesday, June 29, 2016  9:43 PM       234160 pipelist64.exe
     Thursday, April 28, 2016 12:25 AM       310440 procdump64.exe
     Wednesday, June 29, 2016  9:43 PM       374944 PsExec64.exe
     Wednesday, June 29, 2016  9:43 PM       168608 psfile64.exe
     Wednesday, June 29, 2016  9:43 PM       326824 PsGetsid64.exe
     Wednesday, June 29, 2016  9:43 PM       351912 PsInfo64.exe
     Wednesday, June 29, 2016  9:43 PM       318624 pskill64.exe
     Wednesday, June 29, 2016  9:43 PM       202400 pslist64.exe
     Wednesday, June 29, 2016  9:43 PM       170160 PsLoggedon64.exe
     Wednesday, June 29, 2016  9:43 PM       168616 pspasswd64.exe
     Wednesday, June 29, 2016  9:43 PM       293032 psping64.exe
     Wednesday, June 29, 2016  9:43 PM       210608 PsService64.exe
     Wednesday, June 29, 2016  9:43 PM       321704 pssuspend64.exe
     Wednesday, June 29, 2016  9:43 PM       164024 RegDelNull64.exe
     Wednesday, June 29, 2016  9:43 PM       160400 ru64.exe
     Wednesday, June 29, 2016  9:43 PM       165544 sdelete64.exe
     Wednesday, June 29, 2016  9:43 PM       856752 sigcheck64.exe
     Wednesday, June 29, 2016  9:43 PM       153768 streams64.exe
     Wednesday, June 29, 2016  9:43 PM       162472 strings64.exe
     Wednesday, June 29, 2016  9:43 PM       158360 sync64.exe
     Thursday, April 28, 2016 12:25 AM       862888 Sysmon64.exe
    Tuesday, February 2, 2016 10:04 PM       221360 Testlimit64.exe
     Wednesday, June 29, 2016  9:43 PM       169648 Volumeid64.exe
     Wednesday, June 29, 2016  9:43 PM       169632 whois64.exe

These do not have 64-bit equivalents yet or (like procexp.exe) have 64-bit versions embedded (some will likely never get them):

  Wednesday, November 1, 2006  1:06 PM       174968 AccessEnum.exe
 Wednesday, November 14, 2012 10:22 AM       479832 ADExplorer.exe
    Tuesday, October 27, 2015 12:13 AM      2425496 ADInsight.exe
  Wednesday, November 1, 2006  1:05 PM       150328 adrestore.exe
   Tuesday, February 22, 2011  2:18 PM       148856 Autologon.exe
    Tuesday, October 27, 2015 11:28 PM      2049168 Bginfo.exe
  Wednesday, November 1, 2006  1:06 PM       154424 Cacheset.exe
      Monday, August 18, 2014  7:29 PM       892088 Coreinfo.exe
  Wednesday, November 1, 2006  1:05 PM       150328 ctrl2cap.exe
     Monday, December 3, 2012 10:10 AM       468056 Dbgview.exe
  Wednesday, November 1, 2006  9:06 PM       158520 DEFRAG.EXE
  Wednesday, October 17, 2012  5:28 PM       116824 Desktops.exe
  Wednesday, November 1, 2006  1:06 PM       224056 Diskmon.exe
    Wednesday, March 24, 2010  1:00 PM       580984 DiskView.exe
      Wednesday, May 20, 2015  2:24 AM       146232 efsdump.exe
  Wednesday, November 1, 2006  1:06 PM       154424 ldmdump.exe
   Tuesday, December 17, 2013  4:01 PM       559808 livekd.exe
  Wednesday, November 1, 2006  1:06 PM       215928 pagedfrg.exe
     Friday, January 13, 2012  4:35 PM       451392 portmon.exe
   Thursday, February 4, 2016 10:19 PM      2694816 procexp.exe
        Friday, June 12, 2015 12:34 AM      2046608 Procmon.exe
      Tuesday, April 27, 2010 10:04 AM       178040 psloglist.exe
     Monday, December 4, 2006  4:53 PM       207664 psshutdown.exe
    Tuesday, February 2, 2016 10:04 PM       625816 RAMMap.exe
  Wednesday, November 1, 2006  9:05 PM       146232 Reghide.exe
    Tuesday, February 2, 2016 10:04 PM       117920 regjump.exe
  Wednesday, November 1, 2006  1:07 PM       334720 RootkitRevealer.exe
  Wednesday, November 1, 2006  1:07 PM       260976 ShareEnum.exe
 Wednesday, February 27, 2008  5:51 PM       103464 ShellRunas.exe
     Wednesday, July 28, 2010  2:47 PM       199544 tcpvcon.exe
        Monday, July 25, 2011 11:40 AM       300832 Tcpview.exe
        Monday, July 20, 2015 11:45 PM      1194128 vmmap.exe
       Tuesday, June 18, 2013  2:12 PM       596160 ZoomIt.exe

–jeroen

Posted in Power User, SysInternals, Windows | Leave a Comment »

Work around G+ “403. That’s an error.” errors

Posted by jpluimers on 2016/07/08

I’m not yet sure what the exact cause is, but at irregular intervals when clicking on Google Plus links, they show as “403. That’s an error.”.

They appear both when I have multiple WAN connections or a single WAN connection, which leads me to suspect that G+ doesn’t cope well when

  • you have a lot (dozens) of Google related pages open (Drive, Mail, Search, Documents, etc) as Google Plus is embedded in each of them
  • you rapidly browse through your G+ backlog (the G+ counter is > 50 since you follow a lot of people/communities and you quickly do catch-up on them)

In a future post, I will explain how I created the workaround, but here it is:

Work around G+ “403. That’s an error.” errors

Basically it translates links

The latter was the original link I clicked in the first place. The former what G+ comes up with.

After a while, G+ comes back to its senses and allows the latter links again, so the page allows you to parse the former then put them in a list like this:

One decoded URL per list-item.

One decoded URL per list-item.

–jeroen _ _ _ _

Posted in Development, G+: GooglePlus, gist, GitHub, Google, Power User, rawgit, SocialMedia, Source Code Management | Leave a Comment »

HOWTO: Multirouting with Linux : Luke Cyca Dot Calm

Posted by jpluimers on 2016/07/08

Multihoming without BGP with home routers and Linux. Need to apply this on OpenSuSE one day: HOWTO: Multirouting with Linux : Luke Cyca Dot Calm.

Basically it does Multirouting of Sessions using NAT, routing tables, rules, removal of the default routing and adding a round robin routing, fixing DNS, adding more rules and creating a failover script.

In case it ever goes offline: the WayBack Machine link.

Some more background research links:

–jeroen

Posted in *nix, Linux, openSuSE, Power User, SuSE Linux | Leave a Comment »

James Newman built himself a 16-bit Megaprocessor using transistors in frames taking 12 by 2 meters. Wow!

Posted by jpluimers on 2016/07/07

It took James Newman more than one and a half years of actually building progress and more than that (thinking about it started in 2011) for designing his own Megaprocessor using transistors.

For like EUR 50000 and a lot of “learning opportunities” he built himself a room full of visual computing: you can see the LEDs on all the PCB boards indicating exactly what’s going on (heck: he even made the RAM visualise an actual tetris implementation).

All for the sake of understanding transistors and discrete logic after which things got out of hand.

Hopefully a tech museum will buy this.

His site as a truckload of information, for instance the Source: Megaprocessor – FAQ: good/bad/ugly linking to lots of technical details and decisions made (like throwing out surface mount components but using lead based solder or having dual output logic).

There’s a lot of video too (like Megaprocessor – How ?) but – especially these weeks – the downloading is slow, to it’s faster and easier to watch his Youtube playlists:

They are currently 6 videos each, but he has uploaded more videos and is working on more.

Finally, James even built an assembler for this 16-bit processor. How cool is that!

–jeroen

via:

Read the rest of this entry »

Posted in Development, Fun, Hardware Development | Leave a Comment »

Resource decompiler – converting/decompiling/extracting .RES files into .RC files and separate resources

Posted by jpluimers on 2016/07/07

via: Resource decompiler

One day I’m going to need ResourceHacker as it has an -extract option to extract resources.

The above link even has a batch file that can server as a start automating that process:

@echo off
set file="GeneSys"

if exist %file%.rc del %file%.rc

ResHacker.exe -extract %file%.res, %file%.rc,  Bitmap,,
ResHacker.exe -extract %file%.res, temp.rc,  Icon,,
type temp.rc >>%file%.rc
ResHacker.exe -extract %file%.res, temp.rc,  Dialog,,
type temp.rc >>%file%.rc
ResHacker.exe -extract %file%.res, temp.rc,  Menu,,
type temp.rc >>%file%.rc
ResHacker.exe -extract %file%.res, temp.rc,  StringTable,,
type temp.rc >>%file%.rc
ResHacker.exe -extract %file%.res, temp.rc,  Accelerators,,
type temp.rc >>%file%.rc
ResHacker.exe -extract %file%.res, temp.rc,  VersionInfo,,
type temp.rc >>%file%.rc
del temp.rc

I save it as extract.bat and a commandline usage: extract GeneSys will extract all the resources from GeneSys.res

–jeroen

PS: as the MASM forum sometimes nags with logins, I saved the above page in the wayback machine.

I’ve verified that [WayBack] ResourceHacker and the downloads ([WayBack] installer and [WayBack] portable) are there too.

Read the rest of this entry »

Posted in Development, Resource Files and Scripts (.res/.rc), Software Development, Windows Development | Leave a Comment »

Easy way to generate “System.InvalidOperationException: Nullable object must have a value.”

Posted by jpluimers on 2016/07/07

Easy way to generate “System.InvalidOperationException: Nullable object must have a value.”.


using System;
public class Test
{
public static void Main()
{
int? nullableInt = null;
int nowInt = (int)nullableInt;
}
}

–jeroen

Posted in .NET, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, C#, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C# 6 (Roslyn), Development, Software Development | Leave a Comment »

GitHub has majour service outages…

Posted by jpluimers on 2016/07/06

Boom!

In a split second GitHub went to

 

from

from 

Posted in Development, DVCS - Distributed Version Control, git, GitHub, Software Development, Source Code Management | Leave a Comment »

Vysor Pro Feature – Go Wireless to mirror and control your device without a USB Cable…

Posted by jpluimers on 2016/07/06

If you have a [Wayback/Archive] Vysor Pro (either subscription or one-time payment for life-long usage), then you can use this new [Wayback/Archive] New Vysor Feature – Go Wireless Click that button to mirror and control your without a USB cable…

There are more Pro features to come; currently they are:

  • High Quality Mirroring
  • Fullscreen Mode
  • Go Wireless
  • Vysor Share
  • Drag and Drop Files
  • Access to all future features

If Google Pay doesn’t work in your country, then you can use PayPal. When that doesn’t work either, well…

Another nice Vysor Pro feature: [Wayback/Archive] Vysor Share Server – an easy Android device farm: You can share all your Android devices at once using the new Share All feature. – Koushik Dutta (Koush) – Google+

Vysor links:

Read the rest of this entry »

Posted in Android, Android Devices, Development, Mobile Development, Power User, Vysor | Leave a Comment »

case insensitive files systems and git – Lesson Learned – I Can’t Get My Git Repo Clean! | DrupalEasy

Posted by jpluimers on 2016/07/06

via: Lesson Learned – I Can’t Get My Git Repo Clean! | DrupalEasy

One file kept getting added to the git modified list: service/src/main/MySOAPdefinition.pas.

It was part of a repository that had been migrated from SVN (more on that in a future blog post) and along the way been renamed in directory service/src/main from MySOAPdefinition.pas to MySoapDefinition.pas. SVN (and TortoiseSVN) don’t object to this. But git does.

You’d see this on the command-line:

>git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Changes not staged for commit:
  (use "git add ..." to update what will be committed)
  (use "git checkout -- ..." to discard changes in working directory)

        modified:   service/src/main/MySOAPdefinition.pas

no changes added to commit (use "git add" and/or "git commit -a")

>git add service\src\main\MySoapDefinition.pas

>git status
On branch develop
Your branch is up-to-date with 'origin/develop'.
Changes not staged for commit:
  (use "git add ..." to update what will be committed)
  (use "git checkout -- ..." to discard changes in working directory)

        modified:   service/src/main/MySOAPdefinition.pas

no changes added to commit (use "git add" and/or "git commit -a")

Basically the add would do nothing.

On Windows, this is how to get around this:

Read the rest of this entry »

Posted in Delphi, Delphi XE8, Development, git, Mac OS X / OS X / MacOS, OS X 10.9 Mavericks, Power User, Software Development, Source Code Management, SourceTree, Windows, Windows 7 | 1 Comment »