En cuanto al primer párrafo: Sí, la versión del sistema operativo se puede cambiar (bajo su propio riesgo) abriendo dicho archivo ( /System/Library/CoreServices/SystemVersion.plist
) con un editor plist de tu elección y luego cambiar la versión de 5.1 a 6.0.1 o lo que pretendas.
Sin embargo, el tipo de dispositivo no puede -y aunque pudiera, no debería- cambiarse, ya que hay versiones para todos y cada uno de los dispositivos y, aunque la versión del sistema operativo podría cambiar con el tiempo, el propio dispositivo obviamente no se transformará automáticamente en otro. En muchas de las subcarpetas de /CoreServices/
Sin embargo. En el caso de un iPod touch de 4ª generación, el nombre sería N81ap.plist . Allí se encuentran las capacidades del dispositivo.
EDITAR:
Acabo de hablar con un amigo mío. Me ha dicho que sí, que se puede modificar la versión. Pero también tendrías que cambiar el ProductBuildVersion - por ejemplo de 9B208 (iOS 5.1.1) a 10A523 (iOS 6.0.1). Pero esto, por supuesto, podría llevar al fracaso porque la aplicación podría tratar de utilizar métodos no disponibles en la versión del sistema operativo que pretende utilizar. Al copiar los valores de (por ejemplo) N81ap.plist a #suDispositivo.plist, su dispositivo (teóricamente) obtiene las características de n81.ap. Esto también podría llevar al fracaso, porque el Springboard (u otros) podrían necesitar funciones que no están disponibles para el dispositivo que realmente estás usando.
Sin embargo, para algunas aplicaciones es bastante fácil configurar el teléfono/dispositivo requerido. En ese caso tendrías que buscar un valor como "requiere telefonía" o similar.