I went through many forums and haven't got any promising answer. I'm currently using Android version 4.0.3 along with SiyahKernel 3.0. In this kernel, I'm able to connect flash drives, mouse and keyboard.
If you can build and install a modified kernel (or perhaps just drivers) and root filesystem, and there exists driver source to use these on a desktop linux, then it should be possible.
You might be able to re-write the driver to function via the USB host APIs without root, but it would probably take root level access to get the result seen as a network interface. Though without that you might still be able to make an on-device proxy server to get a browser to use it.
It's difficult to say with absolute certainty, but generally speaking that is not possible. Some devices can be patched and hacked to include support for this, but I am not aware of one for the Samsung Galaxy S II on any kernel. The flash drive, mouse and keyboard support is built-in to Android whereas USB network dongles need to be hacked on to it. I know it is possible on a number of Nvidia platfoms to connect Huawei USB dongles, but on the Samsung gear, I've never seen a way.
In short, that's not known to be possible on the Samsung Galaxy S II ICS.