gadgetweb.de

Attention: open in a new window. PDFPrint

HELP! I bricked my HTC Desire using the over-the-air update!

Wednesday, 22 December 2010 16:05

That was what a friend of me told me via ICQ some days ago. He used the OTA update feature that proclaimed a new android version found and accepted the update. What his phone did was updating the bootloader and the android system and got stuck within an infinite bootup loop. So he came over and we have spent some hours of research to fix this issue.

Read more: HELP! I bricked my HTC Desire using the over-the-air update!

 
Attention: open in a new window. PDFPrint

How To: Hijacking the syscall table on latest 2.6.x kernel systems

Last Updated on Saturday, 19 June 2010 10:30 Saturday, 19 June 2010 09:40

Well. Some days ago I just wrote a simple how to describing how you could easily add a simple keylogger to the keyboard event chain within the kernal as a module. Now, hooking into the keyboard driver is one thing but there are several other ways to get out valuable information from a system or even modify basic operations to force the system doing some unexpected things. One way to archive this is hijacking the sys_call_table containing all important operations you might perform within userspace that need to be executed by the kernel like: creating, deleting, moving, editing, reading files, forking, executing applications, etc...

All theese operations are handled within the kernel. The operations are knows as sys_calls or kernel_calls and are executed using the software interrupt 0x80 (which might be interesting if you are playing around with assembly language within linux which is quite fun ;) ). To handle those syscall the kernel uses the sys_call_table which contains the addresses of all those syscall operations. So, the sys_call_table is just a big array ordered by the number of the syscall. In assembly this means something like this:

Read more: How To: Hijacking the syscall table on latest 2.6.x kernel systems

   
Attention: open in a new window. PDFPrint

How To: Building your own kernel space keylogger

Last Updated on Thursday, 10 June 2010 08:28 Wednesday, 09 June 2010 23:50

The linux kernel has been designed as a very modular piece of software. This allows you to load new kernel modules or kernel space drivers during runtime. To allow mdule loading during runtime, the kernel exports a rich set of symbols for module hookup. The problem of this is, that it is very easy to add your own modules to the kernel and read information from the kernel that you might assume to be protected. This is the way, kernel space rootkits work. In this article, I will show you a very simple example that might make clear, why those rootkits are dangerous and why you should never run applications as root or install kernel modules you do not trust.

The most simple example of a very basic rootkit is a keylogger. A keylogger is able to log every keyboard input you type on your keyboard which includes usernames followed by your probably secret password. To understand the following abstract you should have at least some basic understanding of C programming and you should basically understand, how kernel modules work. If you like to try my code snippets on your own system you should also take a look at this kernel module development guide.

Read more: How To: Building your own kernel space keylogger

   
Attention: open in a new window. PDFPrint

libdmtx has been added to layman overlay

Last Updated on Tuesday, 23 March 2010 23:05 Tuesday, 23 March 2010 22:27

As I just was in the need to create some DataMatrix based 2D barcodes I searched for a library that allows creation of this barcodes using C++. I found a library allowing to create and read such 2D barcodes called libdmtx. The library is available licensed by GPLv2.1 and further. So I added an ebuild to my layman overlay.

DataMatrix

It also provides the wrappers to use the library within Java, PHP, Python or Ruby and is useable from commandline by calling dmtxwrite to create or dmtxread to recognize 2D barcodes.

   
Attention: open in a new window. PDFPrint

Get rid of the live! button on your HTC Diamond (Vodafone)

Last Updated on Thursday, 31 December 2009 00:32 Thursday, 17 September 2009 12:49

Just a little warning, before we start:
Playing around in your mobiles registry can brick your device. The steps below worked for me, but may fail on your device and cause your device not to work properly anymore.

I recently decided to get rid of the "live!" button, Vodafone has added to the HTC Diamond and replace it with something more useful, as I do not really use the live!-website. As you would expect, the necessary information can be found in the devices registry. Just search for the key

[HKLM\Software\HTC\Manila].

Read more: Get rid of the live! button on your HTC Diamond (Vodafone)

   
Attention: open in a new window. PDFPrint

String to DateTime on SSIS

Last Updated on Thursday, 27 August 2009 13:09 Thursday, 27 August 2009 12:50

The Microsoft SQL Server Integration Services provide an easy way and mostly straightforward way to perform ETL (Extract Transform Load) operations on an SQL Server 2005 or 2008. It provides a number of tasks to do transformations, conversions and other stuff you might perform around the data you like to load into or extract from your database.

Nevertheless, there are some stumbling blocks you might find. Today, I found one of them: String to Date conversion!

If you are using flatfiles as a data source or perform some pivot-transformation, you might want to convert a string representation into a datetime value. This might be done by the datatype conversion task, but if your date has some "non standard" format, this will fail. So I created a transformation script as little workaround and. A date in my desired format looks like this:

28.11.2008 18:20

The script uses the DateTime.ParseExact-Method provided by the .NET framwork. The VB script looks like this:

Read more: String to DateTime on SSIS

   

Page 1 of 4