Posts
337
Comments
125
Trackbacks
5
November 2009 Entries
Fun mit ObjectDataSource

Unlängst erhielt ich in der Entwicklung folgende Fehlermeldung:

“Eine Eigenschaft namens ‘XXX’ für den durch die DataObjectTypeName-Eigenschaft in ObjectDataSource angegebenen Typ "XXX" konnte nicht gefunden werden. “

In unserem Fall lag dies daran, dass die Update-Methode der verwendeten ObjectDataSource eine Liste von Objekten erwartete.
Nachdem wir eine neue Update-Methode erstellt haben die nur ein Objekt erwartet, war die Fehlerursache behoben.

posted @ Monday, November 30, 2009 10:06 AM | Feedback (0)
Windows Explorer Ersatz: Q-Dir

Q-Dir ist ein kostenloser Ersatz für den Standard Windows Explorer und kann bis zu 4 Fenster mit verschiedenen Laufwerken anzeigen.

qDir 

http://www.softwareok.de/?seite=Freeware/Q-Dir

posted @ Thursday, November 26, 2009 3:01 PM | Feedback (0)
“Code analysis tool” von Microsoft: CAT.NET

Microsoft hat unter der folgenden Adresse als CTP-Version ein Tool für die Code-Analyse zur Verfügung gestellt:
http://www.microsoft.com/downloads/details.aspx?FamilyId=0178e2ef-9da8-445e-9348-c93f24cc9f9d&displaylang=en

Dieses Tool überprüft den Quellcode auf mögliche Schwachstellen in Richtung:
- Cross Site Scripting
- SQL Injection
- Process Command Injection
- File Canonicalization
- Exception Information
- LDAP Injection
- XPATH Injection
- Redirection to User Controlled Site

Nach der Installation steht das Tool im Hauptmenü Tools von Visual Studio zur Verfügung.

Hier ein kleines ASP.NET Quellcode-Beispiel:

<%@ Page Language="C#" ValidateRequest="false" %>

 

<script runat="server">  

    protected void Button1_Click(object sender, EventArgs e)

    {

        string eingabe = TextBox1.Text;

        Label1.Text = eingabe;

    }

</script>

 

<html>

<head id="Head1" runat="server">

    <title>Untitled Page</title>

</head>

<body>

    <form id="Form1" runat="server">

    <div>

        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

        <asp:Button ID="Button1" runat="server" Text="speichern"

            onclick="Button1_Click" />

        <br />

        <asp:Label runat="server" id="Label1"></asp:Label>

    </div>

    </form>

</body>

</html>

 

Eine Analyse mit CAT.NET bringt das folgende Ergebnis:

Bild2

Dieses weist uns darauf hin, dass die Zeilen:

        string eingabe = TextBox1.Text;

        Label1.Text = eingabe;

gegen Cross-Site Scripting nicht geschützt ist!

Durch den Einsatz von Anti-XSS Libary lassen sich dann solche Lücken schliessen.

posted @ Tuesday, November 17, 2009 7:47 AM | Feedback (2)