.
Anmeldung | Registrieren | Hilfe

.NET-Blogs Archiv Juli 2013

Update zum Visual Studio Git Tooling

31.07.2013 21:28:00 | Christian Binder

Schon seit einiger Zeit können in Visual Studio 2012 lokale sowie entfernte Git Repositories genutzt werden. Das entsprechende Tooling gibt es in der Visual Studio Gallery oder über den Extension Manager in Visual Studio zum Download.
Am Montag haben wir ein Update der Visual Studio Git Tools veröffentlicht.

Download: http://visualstudiogallery.msdn.microsoft.com/abafc7d6-dcaa-40f4-8a5e-d6724bdb980c

Einige der Änderungen im aktuellen Release (aus den Releasenotes):

  • Fix for "locked files" issues (including Resharper)
  • Fix for using repositories under junction points
  • Improved rename detection in Changes and Conflicts pages
  • Improved error messages seen when switching branches
  • Line ending filters are correctly applied when undoing, diffing, and merging files
  • Added files are no longer automatically staged in the index
  • Continued performance improvements

Artur Speth (Microsoft)

 

Visual Studio 2012 Update 4

31.07.2013 21:15:37 | Christian Binder

heute hat Brian Harry in seinem Blog den ersten Release Candidate des kommenden Visual Studio 2012 Update 4 angekündigt. Dieser kann ab sofort im Download Center heruntergeladen werden:

VS und TFS 2012 Update 4 RC 1 Download Links

VS 2012 Update 4 RC 1 KB Artikel

Kurz zum Hintergrund: Update 3 sollte eigentlich das letzte Update auf dem Weg zum Release von Visual Studio 2013 sein. Jedoch hat sich in den letzten beiden Monaten herausgestellt, dass wir doch noch ein weiteres Update für Visual Studio und Team Foundation Server 2012 enötigen. Ähnlich wie Update 3 wird dieses Update einige Kundenspezifische Fehlerbehebungen enthalten. Weiterhin enthält das Update einige Verbesserungen für die Kompatibilität zwischen Visual Studio 2012 und Visual Studio 2013 sowie die Migration zwischen diesen beiden Versionen.

Details im Blog von Brian Harry.

Artur Speth (Microsoft)

Fehlertoleranter Datenzugriff unter Azure – Teil 2: SQL Database

31.07.2013 05:14:03 | Jürgen Gutsch

In diesem Beitrag zeige ich kurz die Nutzung der EnterpriseLibrary.TransientFaultHandling bei der Verbindung auf die Azure SQL Database.

Dieser Beitrag ist der Foglebeitrag zu: Fehlertoleranter Datenzugriff unter Azure – Teil 1

Zuerst wird für die Fehlerbehandlung eine Retry Policy erstellt:

var retryPolicy = new RetryPolicy<SqlDatabaseTransientErrorDetectionStrategy>(new FixedInterval(3));

In diesem Fall mit der SqlDatabaseTransientErrorDetectionStrategy mit der die Transient Fehler auf die SQL Database abgefangen werden können. Im Constructor wird eine RetryStrategy übergeben die In diesem Fall ein “FixedInterval” ist, also eine Feste Anzahl an Retries definiert. Daneben gibt es “Incremental” bei dem die Abstände zwischen dem Retries bestimmt werden kann und “ExponentialBackoff” bei dem die Abstände zwischen den Retries exponential verändert werden können. In den meisten Fällen wird “FixedInterval” wohl absolut ausreichen.

Für die Ausführung wird “ExecuteAction” oder “ExecuteAsync” aufgerufen, je nachdem ob Synchron oder (wie z. B: für WinRT gefordert) Asynchron gearbeitet werden soll.

Je nachdem ob die Abfragen auf die SQL Database Daten zurückgeben oder nicht wird eine Action oder eine Func<T> übergeben. Innerhalb diesem Delegate kann wie gewohnt auf die SQL Database zugegriffen werden. Ganz egal ob mit einfachem ADO.NET, LINQ2SQL oder dem Entity Framework.

Kommt es innerhalb des Delegate zu einem Transient Fehler, versucht die retryPolicy nun drei mal den Delegate auszuführen, danach wird die Exception weiter geworfen.. Kommt es zu einem anderen Fehler wird dieser sofort geschmissen.

Ohne Rückgabe:

retryPolicy.ExecuteAction(() =>
    {
        using (var conn = new SqlConnection(connString))
        {
            conn.Open();
            using (var command = new SqlCommand(SQL, conn))
            {
                var reader = command.ExecuteNonQuery();
            }
        }
    });

Mit Rückgabe:

var myTypes = retryPolicy.ExecuteAction<IEnumerable<MyType>>(() =>
    {
        var result = new List<MyType>();
        using (var conn = new SqlConnection(connString))
        {
            conn.Open();
            using (var command = new SqlCommand(SQL, conn))
            {
                using (var reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        var myType = new MyType
                            {
                                // Initialize the Type
                            };
                        result.Add(myType);
                    }
                }
            }
        }
        return result;
    });

Visual Studio 2012 Tools für Git (0.9.5.0) sind verfügbar

31.07.2013 01:05:04 | Jürgen Gutsch

Nachdem ich geschäftlich vom Mercurial auf Git umgestiegen bin, habe ich mir auch die Visual Studio 2012 Tools für Git angeschaut. (Interessant ist das auch, wenn man die Team Foundation Services (TFS-On-Demand) mit Git nutzt).

Anfängliche leichte Begeisterung schlug dann allerdings schnell um, als ich größere Solutions in größeren Git Repositories mit Visual Studio öffnen wollte. Es war schlicht und einfach nicht mehr möglich zu arbeiten und ich wartete nach jeder Aktion über eine Minute bis ich die nächste machen konnte. Dabei meine ich nicht Aktion per Git, sondern jede Aktion im Visual Studio. Fast als würde man mit einem TFS2005 und einer sehr schlechten Internetverbindung arbeiten ;-)

Am Montag gab nun Brian Harry ein Update der Tools for Git bekannt das nun unter anderem auch Performance-Verbesserungen mitbringen soll. War natürlich klar, dass ich das gleich ausprobiere.

Leider ist die Performance zwar besser, aber immer noch nicht berauschend. Das Visual Studio bleibt nicht mehr längere Zeit hängen, allerdings ist der Verhalten immer noch ruckelig, was auf Dauer nerven wird. Ich nehme an es sind die SCM-Icons im Solution Explorer die für die schlechte Performance verantwortlich sind. Anders kann ich mir das nicht erklären, da Git eigentlich sehr performant läuft.

Aus meiner Sicht sollte das Visual Studio Team Git nicht in den Solution Explorer integrieren. Ein Fenster mit den Pending Changes wäre absolut ausreichend. So wie es jetzt umgesetzt ist, lässt sich Git genauso bedienen wie den TFS, was aber gar nicht nötig ist. Git ist ein komplett anderes System. Eingefleischte TFS User werden Git nicht unbedingt verwenden wollen, vor allem nicht mit TFS. Man arbeitet mit Git nicht genauso wie mit dem TFS, man darf also auch eine andere Integration ins Visual Studio haben.

Wie bereits geschrieben, habe ich die schlechte Performance nur bei sehr großen Projekten. In allen anderen Fällen ist von den Tools for Git absolut nichts zu spüren. Wer also gerne Git in Visual Studio integriert haben möchte, ist mit den Tools gut bedient.

Ich für meinen Teil bleibe bei der Console und/oder bei TortoiseGIT, bzw. werde SourceTree mal genauer anschauen.

Bundesnetzagentur prüft Surfgeschwindigkeiten und Netzneutralität

29.07.2013 07:34:44 | Mathias Gronau

Meist macht die Bundesnetzagentur ja Schlagzeilen, wenn sie sich mit der Planung von Stromtrassen befasst, deren Nutzen fraglich ist. Aber die Behörde hat noch deutlich mehr Aufgaben, auch wenn diese relativ selten ins Licht der Öffentlichkeit gelangen. Dabei sind diese Aufgaben durchaus interessant und zumindest in vielen Fällen auch im Interesse der Verbraucher. So auch in diesem Fall. Beginnen wir mit dem Geschwindigkeitstest. Erinnern Sie sich noch, welche Angaben in der Werbung für Ihren Internetanschluss standen? Dort steht immer “Surfen mit bis zu n MBit/s”. Der Buchstabe n steht hier für die Zahl, die die Geschwindigkeit angibt. Was bedeutet aber die Aussage “Surfen mit bis zu 50.000 MBit/s”? Im Grund doch nur: schneller als 50.000 MBit wird es nicht, langsamer kann aber durchaus sein. Wie bereits im letzten Jahr führt die Bundesnetzagentur derzeit einen Test der tatsächlichen Geschwindigkeit von Internetanschlüssen durch. Die Untersuchung wird anonym durchgeführt und die Teilnehmer erhalten sofort nach Abschluss des Geschwindigkeitstests ihr persönliches Ergebnis. Das Ganze ist keine Hexerei. Wechseln Sie einfach zu www.initiative-netzqualitaet.de, klicken Sie auf den Link Breitbank-Test und schon kann es losgehen. Zunächst benötigt die Bundesnetzagentur noch einige Angaben von Ihnen – Postleitzahl, Anschlusstechnologie, den Anbieter und Ihre Anschlussgeschwindigkeit. Diese Angaben sind erforderlich, damit die erhobenen Daten auch sinnvoll verarbeitet werden können. Die nächste Frage nach Ihrer Zufriedenheit mit Ihrem Internetanbieter ist etwas aus der Art geschlagen. Geht es bei den anderen Angaben um objektive Daten, wird hier plötzlich Ihr subjektives Gefühl abgefragt. Es wird auch nicht danach gefragt, wie Sie zu diesem Ergebnis kommen. Schließlich können Sie mit der Technik Ihres Anbieters vollkommen zufrieden sein, aber als Sie kürzlich einmal die Hotline anrufen mussten, war Ihr Gegenüber nicht einmal in der Lage, Ihr Problem zu verstehen. Allein dieser Anruf kann Ihre Zufriedenheit signifikant drücken. Aber was soll’s. Irgendwer wird sich wohl irgendetwas bei dieser Frage gedacht haben. Als letzte Angabe wird noch abgefragt, ob eine optimale Testumgebung vorhanden ist. Eine optimale Testumgebung hat die folgenden Eigenschaften: der Rechner ist per Kabel mit dem Router verbunden, das WLAN ist ausgeschaltet und Java ist installiert (diese Eigenschaft ist die einzige zwingende, um den Test durchführen zu können). Anschließend können Sie auf die Schaltfläche “Jetzt testen” klicken und lassen den Rechner etwa eine Minute lang alleine arbeiten. Zum Abschluss erhalten Sie Ihr persönliches Ergebnis. Wie wichtig diese Untersuchung ist, zeigt die folgende Tabelle, die ich aus dem Abschlussbericht der Untersuchung im letzten Jahr entnommen habe. In dieser Tabelle ist auffällig, dass im Bereich von 8 – 18 Mbit/s selbst in den Städten, wo ich eigentlich die höchsten Ergebnisse erwartet hätte, nicht einmal zwei Drittel der Teilnehmer 50 % der versprochenen Leistung erreicht haben und nur jeder zwölfte Teilnehmer erreicht die volle Leistung. Ich hoffe, dass die Ergebnisse in diesem Jahr besser sein werden.   Abbildung 1. Die Ergebnisse der Untersuchung im letzten Jahr. Ich hoffe, dass die Ergebnisse in diesem Jahr besser ausfallen (Quelle: Bundesnetzagentur). Ein weiterer Test auf der Seite betrifft die Netzneutralität. Dieses Thema ist im Moment bekanntlich sehr aktuell, da die Telekom […]

Fehlertoleranter Datenzugriff unter Azure – Teil 1

26.07.2013 03:31:00 | Jürgen Gutsch

In den letzten Monaten durfte ich mich Intensiv mit Azure auseinandersetzen und kann behaupten einiges an Erfahrungen dazugewonnen zu haben.

Auf eine der prägendsten Erfahrung bezieht sich dieser Blog-Beitrag.

Wer denkt er könne einfach eine bestehende Anwendung auf Azure zum laufen bringen hat sich generell getäuscht. Leider gibt es ein paar Softwarehersteller die ihre Software als Azure-Ready kennzeichnen, weil Sie es irgendwie geschafft haben diese auf Azure in einer Compute Instanz (“Cloud Service”) laufen zu lassen. Im Produktivbetrieb stellt sich dann heraus, dass die Performance um einiges schlechter geworden ist und die die Logs voll mit Fehlern sind.

Sollte die Performance auf Azure oder generell in einer Cloud-Umgebung nicht besser sein? Im Prinzip ja, wen man ein paar Dinge beachtet ist das auch so. Das Hauptproblem ist der Datenzugriff. Man muss sich unter Azure einige Bewusst machen:

  • Azure SQL Database ist kein vollwertiger SQL Server
    • Was das heißt schreibe ich in einem separaten Beitrag
  • Die SQL Database läuft auf einem anderen Server
    • Wir haben also ein Netzwerk (wenn auch ein sehr schnelles) dazwischen liegen.
    • Dennoch ist es ein Flaschenhals
  • Das Azure-Netzwerk lebt
    • Und das ist das Thema dieses Beitrages

Das Azure-Netzwerk lebt ;-)

Was heißt das? Konkret: Wir als App Entwickler wissen nicht wo und an welcher Stelle im Rechenzentrum unser Cloud-Instanz steht und wir wissen nicht wo sich unsere SQL Database befindet. Wir wissen nicht wo im Rechenzentrum der Datenverkehr von unserer Cloud-Instanz zur SQL Database lang geht. Wir müssen aber wissen, dass dieser Datenverkehr irgendwo entlang laufen kann und auch stellenweise kurzzeitig unterbrochen sein kann. Die Gründe dafür sind Ressourcen-Umverteilungen, sei es durch Fehler im Rechenzentrum oder gewollt durch Loadballancer oder Wartungsarbeiten, etc.

Wir wissen nicht den genauen Grund für diese kurzzeitigen Ausfälle, aber wir wissen dass es sie gibt und in einem solchen dynamischen Rechenzentrum zwangsläufig geben muss und wir müssen mit ihnen umgehen.

Gehen wir nicht mit den Ausfällen um, erhalten wir diverse Verbindungsfehler zur SQL Database. Im Verhältnis zur Zahl der Anfragen sind es nicht viele Fehler, aber dennoch so viele, dass man sich Sorgen machen könnte.

Das Problem betrifft jetzt nicht nur die SQL Database, sondern auch den Azure Storage (also den Zugriff auf den Table Store und den Blob Store) und den Zugriff auf den verteilten oder dedizierten Cache, sowie den Zugriff auf alle anderen Ressourcen die sich nicht auf der Azure-Instanz befinden und per Netzwerk erreichbar sind.

Wie geht man damit um?

Da es nur ein temporärer Unterbruch (ähm… eine temporäre Unterbrechung) ist, ist es die einfachste Methode, den Datenzugriff in einem Fehlerfall erneut zu versuchen. Vielleicht zweimal oder dreimal. Und sollte es dann immer noch nicht geklappt haben kann man den Fehler tatsächlich als Exception weiterscheißen. Dann haben wir nämlich ganz sicher ein anderes größeres Problem.

Warum wissen wir das nicht?

Weil wir zu faul sind zum Lesen ;-) Diesmal ist das nämlich von Microsoft sehr gut dokumentiert, aber beim Stichwort “The Transient Fault Handling Application Block” denken wir halt nicht daran, dass sich damit das Problem lösen lässt, während wir intensiv damit beschäftigt sind den Datenzugriff herzustellen

The Transient Fault Handling Application Block

Dabei handelt es sich um eine Bibliothek aus dem “Enterprise Library Integration Pack für Windows Azure”, mit der sich genau diese Fehler abfangen lassen. Andere Exceptions die mit der Problematik nichts zu tun haben werden sofort geworfen. Auf die betreffenden Exceptions kann mit einer belieben Anzahl an Versuchen reagiert werden.

Die Bibliothek ist auch per Nuget zu finden: EnterpriseLibrary.TransientFaultHandling

Es empfiehlt sich also generell das Transient Fault Handling beim Datenzugriff unter Azure zu implementieren.

In weiteren Teilen zeige ich wie das konkret für SQL Database, Cache, Table Storage und Blob Storage aussehen kann:

  1. Fehlertoleranter Datenzugriff unter Azure – Teil 2: SQL Database

The evolution of Rovnix: Private TCP/IP stacks

26.07.2013 02:38:00 | Steffen Krause

We recently discovered a new breed of the bootkit Rovnix that introduces a private TCP/IP stack.  It seems this is becoming a new trend for this type of malware.

The implementation of the private stack is based on an open-source TCP/IP project and it can be accessed from both kernel and user modes.

It works like this:

  1. At boot time, Rovnix hooks the following exported APIs in ndis.sys by patching the export table in memory: 
     
    • NdisMRegisterMiniportDriver()  (for NDIS 6.0)
    • NdisMRegisterMiniport()  (for NDIS 5.1)
       
  2. When the network adapter driver calls NdisMRegisterMiniportDriver()/ NdisMRegisterMiniport() to  register to NDIS, the hooked function registers Rovnix’s own miniport handler functions.
  3. With Rovnix’s own miniport handler functions, the malware is able to send/receive the packets through this private TCP/IP stack (see Figure 1).

The Rovnix private TCP/IP stack

Figure 1: The private TCP/IP stack

The stack is introduced for stealth purposes:

  • It bypasses the rest of NDIS library code so it can bypass the personal firewall hooks
  • The port used by private TCP/IP stack cannot normally be accessed (such as “nbtstat” command)

Basically, this means Rovnix has introduced new stealth in its network communication.

Traditional methods of analysis, for example running network traffic monitoring software, may not be able to see the packets that are sent or received via a private TCP/IP stack.

However, the compromised machine will contact the domain youtubeflashserver.com. If a network administrator notices traffic sent to this domain, then most likely there are machines infected.

With our latest signature update, we detect the Rovnix dropper as TrojanDropper:Win32/Rovnix.I. Windows Defender Offline (WDO) also detects the infected volume boot record as Trojan:DOS/Rovnix.F.

Sample: SHA1: a9fd55b88636f0a66748c205b0a3918aec6a1a20

Chun Feng
MMPC


Re-MVP’ed

22.07.2013 11:20:00 | Jörg Neumann

Mein MVP-Award für den Bereich “Client App Dev” wurde wieder um ein Jahr verlängert. Danke Microsoft!

MVPLogoSmall

Umzug des Buildservers auf eine Azure VM

17.07.2013 03:13:03 | Jürgen Gutsch

Um von weiteren lokalen Server weg zu kommen, hatte ich beschlossen den letzten verbliebenen Server – meinen Buildserver – auf eine Azure VM zu laden.

Umzuf ist im Prinzip erfolgreich verlaufen, allerdings nicht wie erartet und nicht wie Microsoft es vorschlägt, wenn man ein Hyper-V Image als Azure VM einrichten möchte.

Der übliche empfohlene Vorgang ist recht einfach zu machen. Zuallererst sollte man unbedingt sich ein Snapshot der Hyper-V Maschine machen, vor allem, wenn der Server eigentlich produktiv genutzt wird. So kann man nach der Präparierung des Servers wieder auf den Snapshot zurück und die weiterlaufen lassen.

Um den Server für Azure zu Präparieren muss die sysprep.exe (unter %windir%\system32\sysprep) aufgerufen werden. Im folgenden Dialog muss Enter System Out-of-Box Experience (OOBE), Generalize und Shotdown bevor mit OK bestätigt wird.

Das führt dazu, dass alle Netzwerkeinstellungen und Windows-Einstellungen zurückgesetzt werden. Benutzer, Dateien, etc. bleiben erhalten. Installierte Software ist weiter lauffähig, wenn der Server in Azure reingehängt wird.

Nicht nur für Azure ist dieser Schritt nötig, sondern auch um Images für Amazon EC2 zu erstellen.

Anschließend muss die virtuelle Festplatte (VHD) nach Azure in einen Storage Account kopiert werden. Entweder per Powershell oder mit einem Tool wie den Azure Management Studio von Cerebrata. Letztere eignet sich besonders für große Dateien, da diese Stückweise in den Blob Store geladen wird.

Hier scheiterte es bei mir: Nachdem der Upload mehr als 24 Stunden dauerte, wurde mit vom Azure Storeage gemeldet, dass ich solche großen Dateien dort nicht ablegen darf.

Ist die VHD nun irgendwie im Blob-Store gelandet, kann sie nun in Azure als Image registriert werden:

Das Registrierte Image, kann nun beliebig oft als Grundlage für eine neue Instanz einer Azure VM genutzt werden, so wie es von Microsoft zur Verfügung gestellten Images gemacht werden kann.

Wie habe ich dasn nun gemacht?

Da ich auf keine Art meine VHD auf Azure schieben konnte, bzw. fast jeder Versuch mehr als einen Tag gedauert hat, habe ich kurzerhand eine blanke Azure-VM Instanz aufgesetzt und meinen Buildserver (Jenkins) per Bitnami-Installation aufgespielt, alle benötigten SDK- Installiert und die Build-Jobs per Copy&Paste auf den neuen Server geschoben.

Somit war die Sache für mich erledigt und ich bin um ein paar weitere Azure-Erfahrungen reicher.

Inzwischen läuft der Server schon ein paar Tage genauso brav sie der alte :-)

A fresh face for the Microsoft Malware Protection Center

17.07.2013 00:44:00 | Steffen Krause

Today we launched our new Microsoft Malware Protection Center website.

Throughout the redesign process we have been listening to your feedback. You asked for an easier way to find our security software and updates; you can now get to all of our product downloads straight from our homepage.

While you’re on the homepage you’ll also see links to our help archive, blogs, and trending security topics from the Microsoft Community forums.

One of our top priorities is to make it easier for you to solve any issues with malware and potentially unwanted software. To help, we created a box on each page of our new website that answers some of your most-asked questions.

We also added new content to address common problems, such as:  

To make it simpler to find the information you need about specific malware, we’ve given our malware encyclopedia a face-lift. You can still find detailed information about each threat under the “Technical information” tab. 

Please stop by the new site and have a look around. As always, we’re listening to your feedback and would love to know what you think. You can use the feedback form at the bottom of most pages to let us know.

MMPC

 

Zur ADC 2013 in Mannheim anmelden und ein SurfaceRT sichern

16.07.2013 02:39:04 | Jürgen Gutsch

Advanced Developers Conference LogoAm 23. und 24. Oktober 2013 findet in Mannheim die Advanced Developer Conference mit vielen interessanten Vorträgen statt. Am 22. und am 25. Oktober bietet der Veranstalter außerdem Workshops an.

Zitat von der Website:
Die Advanced Developers Conference (ADC) ist seit 1995 das Premium-Event für .NET-Entwickler und -Architekten im High-End-Umfeld. Freuen Sie sich auf technologisch tiefgreifendes Wissen, Insidertipps und Best Practices rund um Future, Fiction und Practice. Alle Vorträge auf der Advanced Developers Conference gehen technologisch in die Tiefe!

Wer sich dieses Jahr über das Faxformular zur Hauptkonferenz anmeldet kann sich ein SurfaceRT 32 GB sichern. Man sollte sich allerdings schnell anmelden, denn die Aktion gilt nur solange der Vorrat reicht. Zum Anmeldeformular

Das schöne an solchen Konferenzen ist nicht nur, dass man viel neues Wissen mit nach Hause nimmt, sondern auch dass man sich mit bekannten Entwicklern aus der .NET-Community treffen und austauschen kann. Wer weiß, vielleicht sieht man sich ja dort. ;-)

Neulich im Minion Gen Labor

14.07.2013 20:24:00 | Daniel Springwald

So sollen die Minions am Ende aussehen
So sollen die Minions am Ende aussehen

Seit mehr als 20 Jahren nicht mehr mit Fimo gebastelt - heute heißt das offenbar Fimo-Soft und schmiert etwas mehr.

How to build a Minion - Das Material bereit machen
Das Material bereit machen

How to build a Minion - Mit einer gelben Bohne beginnt das Lebens des Minions
Mit einer gelben Bohne beginnt das Lebens des Minions

How to build a Minion - Die Seiten der Hose
Die Seiten der Hose

How to build a Minion - Die Vorderseite der Hose
Die Vorderseite der Hose

How to build a Minion - Die Hosenträger
Die Hosenträger

How to build a Minion - Der Brillen-Gurt
Der Brillen-Gurt

How to build a Minion - Die Augen werden vorbereitet...
Die Augen werden vorbereitet...

How to build a Minion - ...und bekommen am Ende eine Brille
...und bekommen am Ende eine Brille

How to build a Minion - Die Augen werden auf den Minion montiert.
Die Augen werden auf den Minion montiert.

How to build a Minion - Minions mit Augen
Minions mit Augen

How to build a Minion - Bisher hatten die Hosen weder Taschen, noch Knöpfe, noch Nähte - doch das ist nun behoben :-)
Bisher hatten die Hosen weder Taschen, noch Knöpfe, noch Nähte - doch das ist nun behoben :-)

How to build a Minion - Zu guter Letzt fehlen nur noch die Haare...
Zu guter Letzt fehlen nur noch die Haare...

How to build a Minion - Jetzt nur noch kurz ab in den Backofen...
Jetzt nur noch kurz ab in den Backofen...

How to build a Minion - ...und schon ist sie fertig, die Armee von Minions!
...und schon ist sie fertig, die Armee von Minions!

Am Ende noch ein paar Impressionen:

How to build a Minion

How to build a Minion

How to build a Minion - Magnetic Minions
Kühlschrank-Magnet Minions

How to build a Minion

Drei neue Folgen H&D Talk: Windows 8.1, Gestensteuerung & App-Konzepte

14.07.2013 07:13:00 | Lars Keller

Es gibt wieder neue H&D Talk Folgen. :-)

H&D Talk – Microsoft Windows 8.1

Karim und ich erzählen über die Eindrücke von der //BUILD/ Konferenz und zeigen die neusten Features von Windows 8.1.

H&D Talk: Gesten – die Steuerung der Zukunft

In dieser Folge schauen wir uns die Kinect, das Perceptual Computing SDK und Leap Motion an und berichten über unsere Erfahrungen.

H&D Talk – Windows 8 Geräte und App-Konzepte

Es gibt mittlerweile viele verschiedene Windows 8 Endgeräte auf dem Markt. Wir haben uns ein paar davon angeschaut. Sind solche Devices sexy? :-) Des Weiteren haben wir uns die Frage gestellt, was eine gute App ausmacht und warum das User Interface und die User Experience so eine wichtige Rolle bei der App-Entwicklung spielen!

Viel Spaß beim Schauen!

Mit Windows 8 in den Urlaub fahren

10.07.2013 17:33:00 | Andre Kraemer

Als Selbständiger hat man nie Urlaub – selbst wenn man im Urlaub ist Zwinkerndes Smiley Deshalb habe ich mir für meinen diesjährigen Urlaub eine Internet Only SIM Karte für meinen mobile WiFI Router gekauft. Diese Karte hat ein Startkontingent von 100 MB und kann anschließend aufgeladen werden.

Zu meiner Überraschung waren die ersten 100 MB bereits nach knapp 1 h Stunde verbraucht! Unter anderem liegt das daran, dass Windows 8 recht geschwätzig ist, was den Internet Traffic angeht. Glücklicherweise kann man hier allerdings mit ein paar Schritten Abhilfe schaffen: 

WLAN Netzwerk als getaktete Verbindung festlegen

Der erste Schritt sollte sein, Windows 8 mitzuteilen, dass es sich bei der aktiven WLAN Verbindung um eine getaktete Verbindung handelt. Dazu öffnet man die Charms Leiste (Über Win+C), klickt auf Einstellungen und anschließend auf das aktuell verbundene Netzwerk. In den Netzwerkeinstellungen klickt man nun mit der rechten Maustaste auf das entsprechende Netzwerk und klickt im Kontextmenü auf “Als getaktete Verbindung festlegen”. 

image

Dies führt  laut der Windows 8 FAQ zu dem Thema bereits dazu, dass Offline Dateien nicht mehr synchronisiert werden, nur noch kritische Windows Updates herunter geladen werden und auch die Kacheln eventuell nicht mehr aktualisiert werden.

Einstellungen nicht mehr automatisch synchronisieren und automatische Geräteeinrichtung deaktivieren

Dieser Tipp stammt auch aus der Windows 8 FAQ zu getakteten Verbindungen. In der Charms Leiste klickt man auf Einstellungen und dann auf Pc Einstellungen ändern. Dort gibt es den Punkt “Einstellungen synchronisieren”. Diesen wählt man aus und deaktiviert ganz unten die Option “Einstellungen über getaktete Verbindung synchronisieren”. Das Gleiche führt man auch noch im Bereich Geräte mit der Option Download über getaktete Verbindung aus.

Autostarts deaktivieren

Wer ein vollständiges Windows 8 und kein Windows RT hat, der hat vielleicht noch einige Datenfresser in den Autostarts. Um diese zu deaktivieren wechselt man auf  den Desktkop und öffnet über Strg+Shift+Esc den Windows Taskmanager. Hier lohnt sich ein Blick auf die Registrierkarte Autostarts. Ich habe bei mir alles deaktiviert, was Dateien synchronisieren will, also DropBox, Skydrive und die CloudStation. Außerdem habe ich gleich noch Skype mit aus dem Autostart genommen.

Interessant ist außerdem der Reiter App-Verlauf. Hier kann man nämlich sehen, welche App wie viel Traffic verursacht hat:

image

Unnötige Browser Tabs und ähnliches vermeiden, AdBlock installieren

Wenn ich etwas im Internet recherchiere, öffne ich gerne viele Tabs. Im Urlaub habe ich mir dies abgewöhnt. Einige der geöffneten Seiten könnten nämlich Scripte haben, die automatisch Daten nachladen. Für Tabs, die ich gerade gar nicht offen habe, interessieren mich diese Updates aber nicht wirklich. Daher lohnt es sich, die Anzahl der offenen Tabs zu reduzieren. Ein Großteil des Traffics einer Seite wird übrigens durch Werbeanzeigen verursacht. Bei einer mobilen Verbindung möchte man das kostbare Kontingent natürlich nicht durch Werbung verbrauchen. Daher: AdBlock für den jeweiligen Browser installieren.

Nur bei Bedarf verbinden

Eigentlich simpel, aber trotzdem wird es schnell vergessen: Wenn man gerade kein Internet braucht, dann ist es ratsam, die Verbindung einfach so lange zu trennen und nur bei Bedarf einzuschalten Smiley

Datenverkehr messen

Wenn man die oben aufgezählten Schritte durchgeführt hat, ist man schon recht gut gerüstet. Trotzdem ist es natürlich spannend, wie viel Traffic man nun bereits verbraucht  hat. Windows teilt dies glücklicherweise bereits mit. Dazu in der Charms Leiste wieder auf Einstellungen gehen und die aktive Netzwerkverbindung anklicken.  Durch einen weiteren Klick auf den Namen der Verbindung sieht man den aktuellen Verbrauch. Diesen sollte man bei der ersten Nutzung der ausländischen Karte zurücksetzen, um sinnvolle Zahlen zu erhalten

image

DNUG Braunschweig - Ein bisschen Backend & Windows 8.1 - Was gibt es Neues?

09.07.2013 14:12:00 | Lars Keller

Die DNUG Braunschweig trifft sich am 16.07.2013 um 19:00 im Restaurant Zucker (Tagungsraum). Dieses Mal kommt uns Peter Nowak mit einem Vortrag über das Thema Backend besuchen.

Vorher berichten Karim und ich von unserem Besuch bei der //BUILD/ Konferenz. Natürlich steht Windows 8.1 im Vordergrund, aber auch Eindrücke von der Xbox One. :-)

Abstract:
Ein bisschen Backend
Viele Apps, sei es nun Windows, Windows Phone, iOS oder Android benötigen eine Möglichkeit Daten strukturiert abzulegen. Ein eigener Server kann hier schon helfen, doch rechnet sich dieser kaum zu Beginn einer App oder einer Idee.
Daher werden in einem Streifzug die Windows Azure Live Services und Buddy.com näher beleuchtet. Dabei geht es nicht nur um die deine Datenablage, sondern auch um die Mehrwerte, die solche Dienste bieten.
Referent: Peter Nowak

Windows 8.1 - Was gibt es Neues?
Bei der Build Conference 2013 wurde Windows 8.1  vorgestellt. Lars Keller und Karim El Jed waren dort und berichten darüber, welche Neuerungen und Veränderungen mit Windows 8.1 auf uns zukommen.
Referenten: Lars Keller & Karim El Jed

Wie immer ist die Veranstaltung kostenlos! Weitere Informationen zur DNUG Braunschweig können hier gefunden werden: http://www.dotnet-braunschweig.de

AnyKey Sendung–Infos von der BUILD Konferenz

09.07.2013 09:02:04 | Lars keller

Für alle, die die //BUILD/ verpasst haben, gibt es hier die Möglichkeit alle wichtigen Informationen aufbereitet zu schauen:

Verpassen Sie nicht die Chance sich die Build Content nochmal aufbereitet und einfach zusammengefasst vorführen zu lassen und hierbei auch die Möglichkeit zu nutzen technische Fragen an Spezialisten auf den einzelnen Gebieten zu stellen.

Diesen Mittwoch, den 10.07.2013 wird es eine 4-stündige Livestreaming Session mit vielen interessanten Speakern geben.

Hier finden Sie den Einwahllink, sowie einen Kalenderblocker:

http://aka.ms/rebuild

Highlights der Build im Livestream

08.07.2013 18:07:00 | Christian Binder

Build-Fans aufgepasst: Am Mittwoch den 10. Juli 2013 veranstaltet das Evangelisten-Team von Microsoft Deutschland eine Livestream-Sondersendung zur vergangenen Build-Konferenz, in der die verschiedenen Highlights nochmal beleuchtet und diskutiert werden:

 Die Agenda:

14:00 Uhr: Rückblick Highlights der /Build Konferenz - Boris Schneider-Johne

14:30 Uhr: 3D Printing, Bluetooth, Kinect for Windows - Gunter Logemann

15:05 Uhr: Was ist neu bei Windows Azure - Holger Sirtl

15:40 Uhr: Neues von Visual Studio 2013 Preview - Artur Speth

16:15 Uhr: Windows 8.1 & Enterprise - Heike Ritter

16:50 Uhr: Neues von der Windows Runtime mit C# und XAML - Dariusz Parys

17:25 Uhr: Performance Probleme mit Windows 8.1 Apps? - Jürgen Schwertl

18:00 Uhr: JavaScript vNext @ Microsoft aka TypeScript - Kai Jäger

 

Auf der Facebook-Seite der Veranstaltung ist bereits jetzt Platz für Fragen, Kommentare und Feedback, dort wird später auch der Link zur Aufzeichnung der Sondersendung geteilt. Der Livestream startet um 14 Uhr hier http://msft.it/rebuild

Viel Spaß beim Livestream!

Android: Facebook-App überträgt Telefonnummern auf den Server

01.07.2013 09:44:53 | Mathias Gronau

Facebook und Google gelten heute als die größten Datenkraken. Aber können Sie sich vorstellen, was passiert, wenn Produkte dieser beiden Unternehmen zusammenkommen? Norton hat eine neue Version von Norton Mobile Security für Android mit der neuen Mobile-Insight-Technik entwickelt und damit auch das Datenschutzverhalten verschiedener Android-Apps analysiert, so auch von der Facebook-App für Andoid. Dabei hat das Unternehmen festgestellt, dass die App die persönlichen Daten der auf den Geräten gespeicherten Kontakte einschließlich der Telefonnummern auf die Server von Facebook überträgt. Auf diese Weise sammelt Facebook auch Informationen über Menschen, die in dem sozialen Netzwerk nicht angemeldet sind. Da die App nicht nur mehr als 7,4 Millionen Mal von Google Play heruntergeladen wurde, sondern auch auf vielen Geräten bereits beim Kauf vorinstalliert ist, geht Norton davon aus, dass die App auf mehreren hundert Millionen Geräten vorhanden ist und auf einem Großteil der Geräte auch genutzt wird. Bereits vor dem Download erfragt die App sehr umfangreiche Berechtigungen. Beispiele dafür sind das Recht, das Anrufprotokoll und die Kontaktdaten lesen zu dürfen und dort sogar zu schreiben. Außerdem lässt sich Facebook das Recht einräumen, andere ausgeführte Apps abzurufen und diese neu zu sortieren. Außerdem lässt sich das Unternehmen das Recht einräumen, Dateien ohne Benachrichtigung auf die Server herunterzuladen. OK, den Download kann ja jeder ablehnen, wenn er diese Informationen vor dem Download liest. Schwieriger ist es, wenn die Facebook-App bereits beim Kauf des Geräts vorinstalliert war. Bereits beim ersten eventuell irrtümlichen Start der App überträgt diese die Daten an Facebook. Auf diese Weise kommt Facebook an umfangreiche persönliche Daten, auch wenn der Nutzer nicht bei Facebook angemeldet ist (und auch an die Daten der Kontakte dieser Nutzer). Auf Nachfrage von Norton erklärte Facebook, die Telefonnummern wären weder benutzt noch verarbeitet worden. Außerdem seien sie inzwischen wieder aus den Datenbanken gelöscht worden. Ich will ja niemandem etwas Schlechtes unterstellen, aber ich frage mich doch, weshalb Facebook den Download der Telefonnummern überhaupt implementiert und auch in den Datenbanken wohl Felder für diese Daten angelegt hat (dass die Daten unstrukturiert abgelegt wurden halte ich doch für recht unwahrscheinlich). Außerdem sind die Telefonnummern ja auch nur ein Teil der Informationen, die Facebook abfragt. Ich stelle mir überhaupt schon länger die Frage, welche Daten Facebook so sammelt. Als ich mich im März 2011 bei Facebook angemeldet habe, wunderte ich mich damals bereits, woher Facebook bereits vor der Anmeldung meine persönlichen Daten kannte. Unmittelbar nach der Anmeldung schlug mir das Unternehmen als “Freund” bereits meine Tochter aus erster Ehe vor – sie hat nicht einmal meinen Nachnamen. Offensichtlich hatte Facebook vorher schon meine persönlichen Daten aus irgendwelchen Quellen gesammelt. Meine ersten Erfahrungen mit Facebook habe ich damals auch im Forum von DrWindows veröffentlicht. Auch Android-Nutzer, die die Facebook-App nicht nutzen, können sich nicht auf der sicheren Seite wähnen. Norton schreibt in seinem Blog, dass die Facebook-App nicht die einzige App ist, die persönliche Daten ausspäht. Sie sei nicht einmal die schlimmste. Bislang hat Norton aber noch keine weiteren Apps genannt, aber immerhin verspricht der Blog, dass in den nächsten Wochen weitere […]

Viewing Vobfus infections from above

01.07.2013 02:04:00 | Steffen Krause

Win32/Vobfus is a family of worms that spreads via removable drives and downloads other malware, and a family that is causing people a lot of pain lately. Vobfus was initially discovered in September 2009 and became prevalent with its use of the MS10-046 .LNK vulnerability. The .LNK vulnerability has also been used by Chymine, Sality, and Zbot, though it is no longer used by Vobfus.

The name Vobfus comes from the characteristics that these worms are Visual Basic and obfuscated. Vobfus is a Visual Basic malware compiled either in p-code (pseudo code) or native code (see this KB for information about p- and native-codes). The obfuscation of the malicious payload of Vobfus started with simple string manipulation, and it has evolved to a more complex string decoding. The following are some examples of polymorphic strings building used by different variants of Vobfus:

Vobfus code examples

Figure 1 Vobfus code examples

Vobfus is downloaded by other malware; currently it's being downloaded by Win32/Beebone downloaders. Based on our observations, Beebone variants then download other variants of Vobfus, creating an infection cycle that means where you see one of these families, you'll often see the other. But more about this later.

Beebone is a family of Visual Basic compiled trojan downloaders that is known to download threats from the following families, listed in order of prevalence observed over the past month: 

Vobfus spreads via removable drives and network mapped drives. It copies itself to these drives with a random name, or not-so-random file name such as:

  • passwords.exe
  • porn.exe
  • secret.exe
  • sexy.exe
  • subst.exe
  • video.exe

The "autorun.inf" file accompanying the Vobfus worm file is detected as VirTool:INF/Vobfus.gen.  

Vobfus copies itself to the %userprofile% folder with a random name, or a not-so-random name, as previously listed. It also creates a runkey to ensure it runs every time Windows starts. Finally, Vobfus contacts a C&C server to obtain encrypted instructions on where to download Beebone; Beebone subsequently downloads Vobfus, and a number of other threats.

So, to recap, where Vobfus is detected, we often find Win32/Beebone too; thus exists the cyclical relationship between Vobfus and Beebone, the two threat families that are intrinsically related. This cyclical relationship between Beebone and Vobfus downloading each other is the reason why Vobfus may seem so resilient to antivirus products. Vobfus and Beebone can constantly update each other with new variants. Updated antivirus products may detect one variant present on the system; however, newer downloaded variants may not be detected immediately. A typical self-updating malware family that just updates itself can be remediated once it is detected, because once removed from the system it cannot download newer versions of itself. In the case with Vobfus, even if it is detected and remediated, it could have downloaded an undetected Beebone which can in turn download an undetected variant of Vobfus. The following diagrams illustrate this more clearly.

Vobfus stage 1

Vobfus stage 2

Vobfus stage 3

Vobfus stage 4

In a network environment with lots of mapped network usage or data-sharing via removable drives, Vobfus can spread by copying itself and an autorun.inf file in the infected drive. In the wild, we have observed that Vobfus maintains a very successful removable-drive infection rate, thus supporting its spreading.

Furthermore, because of all the companion malware families that are downloaded by Beebone, the cumulative side-effects of all the malware families are present in infected machines. We recommend you refer to the encyclopedia entries for each of these families for more information on the effects these malware have on your machine, and for specific remediation advice.

You might consider the following guidelines to help prevent being infected with Vobfus and Beebone:

  • One infection vector is drive-by download, so use caution when clicking external links, and keep your browser and all other installed software up to date to help prevent software exploits
  • Vobfus is primarily downloaded by Beebone or spread via removable drives. A possible method of prevention is disabling autorun functionality; see this KB for more details on how to do this

And of course, as always, using an up-to-date complete antivirus solution such as Microsoft Security Essentials will help prevent many malware infections.

Hyun Choi
MMPC

Regeln | Impressum