0 Members and 3 Guests are viewing this topic.
;Texas Instruments Incorporated;Driver Information File for TI-Nspire;Copyright (c) Texas Instruments Inc. All rights reserved.[Version]Signature = "$Windows NT$"Class = NetClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}Provider = %TI%DriverVer = 05/24/2006,5.2.3790.1454CatalogFile = tirndis.cat[Manufacturer]%TI% = TIDevices,NT.5.1[TIDevices]%TIDevice% = RNDIS, USB\VID_0451&PID_E011[TIDevices.NT.5.1]%TIDevice% = RNDIS.NT.5.1, USB\VID_0451&PID_E011[ControlFlags]ExcludeFromSelect=*; Windows 2000 specific sections ---------------------------------[RNDIS.NT]Characteristics = 0x84 ; NCF_PHYSICAL + NCF_HAS_UIBusType = 15DriverVer = 05/24/2006,5.2.3790.1454AddReg = RNDIS_AddReg_NT, RNDIS_AddReg_WIN2K_XPCopyFiles = RNDIS_CopyFiles_NT; DO NOT MODIFY THE SERVICE NAME[RNDIS.NT.Services]AddService = USB_RNDISY, 2, RNDIS_ServiceInst_NT, RNDIS_EventLog[RNDIS_CopyFiles_NT]; no rename of files on Windows 2000, use the 'y' names as isusb8023y.sys, , , 0 rndismpy.sys, , , 0 [RNDIS_ServiceInst_NT]DisplayName = %ServiceDisplayName%ServiceType = 1 StartType = 3 ErrorControl = 1 ServiceBinary = %12%\usb8023y.sys LoadOrderGroup = NDISAddReg = RNDIS_WMI_AddReg_NT[RNDIS_WMI_AddReg_NT]HKR, , MofImagePath, 0x00020000, "System32\drivers\rndismpy.sys"; Windows XP specific sections -----------------------------------[RNDIS.NT.5.1]Characteristics = 0x84 ; NCF_PHYSICAL + NCF_HAS_UIBusType = 15DriverVer = 05/24/2006,5.2.3790.1454AddReg = RNDIS_AddReg_NT, RNDIS_AddReg_WIN2K_XP; no copyfiles - the files are already in place[RNDIS.NT.5.1.Services]AddService = USB_RNDIS, 2, RNDIS_ServiceInst_5_1, RNDIS_EventLog[RNDIS_ServiceInst_5_1]DisplayName = %ServiceDisplayName%ServiceType = 1 StartType = 3 ErrorControl = 1 ServiceBinary = %12%\usb8023.sys LoadOrderGroup = NDISAddReg = RNDIS_WMI_AddReg_5_1[RNDIS_WMI_AddReg_5_1]HKR, , MofImagePath, 0x00020000, "System32\drivers\rndismp.sys"; Windows XP and Windows 2000 Sections[RNDIS_AddReg_NT]HKR, Ndi, Service, 0, "USB_RNDISY"HKR, Ndi\Interfaces, UpperRange, 0, "ndis5_ip" HKR, Ndi\Interfaces, LowerRange, 0, "nolower"[RNDIS_AddReg_WIN2K_XP]HKR, NDI\params\NetworkAddress, ParamDesc, 0, %NetworkAddress%HKR, NDI\params\NetworkAddress, type, 0, "edit"HKR, NDI\params\NetworkAddress, LimitText, 0, "12"HKR, NDI\params\NetworkAddress, UpperCase, 0, "1"HKR, NDI\params\NetworkAddress, default, 0, " "HKR, NDI\params\NetworkAddress, optional, 0, "1"[RNDIS_EventLog]AddReg = RNDIS_EventLog_AddReg[RNDIS_EventLog_AddReg]HKR, , EventMessageFile, 0x00020000, "%%SystemRoot%%\System32\netevent.dll"HKR, , TypesSupported, 0x00010001, 7[SourceDisksNames]1=%SourceDisk%,,1[SourceDisksFiles]usb8023y.sys=1rndismpy.sys=1[DestinationDirs]RNDIS_CopyFiles_NT = 12[Strings]ServiceDisplayName = "USB Remote NDIS Network Device Driver"NetworkAddress = "Network Address"TI = "Texas Instruments Incorporated"TIDevice = "Texas Instruments Remote NDIS Network Device"SourceDisk = "TI USB Network Driver Install Disk"
critor : for a quick test try:c:\>write test.tns 19c:\>AAAA,%08x,%08x,%08x <RETURN>c:\>type test.tns
C:\documents\ndless\>write test.tns 19AAAA,%08x,%08x,%08xC:\documents\ndless\>dir1980-01-01 00:00:00 <Dir> .1980-01-01 00:00:00 <Dir> ..1980-01-01 00:00:00 639280 os.tns1980-01-01 00:00:00 19 test.tnsFree Space: 17480192 bytesC:\documents\ndless\>type test.tnsAAAA,20000013,106F259B,00000000C:\documents\ndless\>
First step is to dump the stack to get some addresses... Try this (in whatever directory you're comfortable creating files in):write stackdump 192%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8xtype stackdump
C:\documents\ndless\>write stackdump.tns 192%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8x%8xC:\documents\ndless\>dir1980-01-01 00:00:00 <Dir> .1980-01-01 00:00:00 <Dir> ..1980-01-01 00:00:00 639280 os.tns1980-01-01 00:00:00 19 test.tns1980-01-01 00:00:00 192 stackdump.tnsFree Space: 17479680 bytesC:\documents\ndless\>type stackdump.tns20000013106F2648 010919DA0 0 C0 010919DB4 210919E4810919DAC101A923C101A9C7C1091A490 0106F2188106F218D106F219C 01091A3A0 3B10919DF810919DDC101AC3A4101F1B2410917E841091A3A81091A3A0 3B10919E1010919DFC1091A3A8FFFFFFFF106A1CB41091A3C710919E3010919E14101A93041014BA38 01091A3A8101AA97C106A1CA810919E4810919E34101AA70C 2 1106FB5C010919E6010919E4C10000994101A9194 0 010919E7810919E64101279841000097C1000004010917E8410919E7C10919E7C 0C:\documents\ndless\>
As I feared, looks like the command shell code is different (and unlike the later version, the address of RelDclVPrintf doesn't show up in uninitialized space in the TYPE command's stack frame). Without knowing the addresses of any useful functions we can't exploit the buffer overflow safely yet. We had better wait for another CAS+ OS to be dumped, so we can see the older command shell code, and come back to this then.
Quote from: Goplat on March 25, 2011, 04:05:34 pmAs I feared, looks like the command shell code is different (and unlike the later version, the address of RelDclVPrintf doesn't show up in uninitialized space in the TYPE command's stack frame). Without knowing the addresses of any useful functions we can't exploit the buffer overflow safely yet. We had better wait for another CAS+ OS to be dumped, so we can see the older command shell code, and come back to this then.What's the best way to dump the OS?
copy policy.dat policy.back del policy.dat
C:\phoenix\>type policy.datError = -1
pn-srv6-1217: sent reply 2, len=281, to 172.16.80.65:68pn-srv6-1217: sent reply 5, len=281, to 172.16.80.65:68
pn-srv6-701: request type 1pn-srv6-821: ready to reply(hh=4, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68pn-srv6-701: request type 1pn-srv6-1073: bound dhcp-ans [172.16.177.46:68] to 8pn-srv6-821: ready to reply(hh=8, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68pn-srv6-701: request type 1pn-srv6-821: ready to reply(hh=8, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68pn-srv6-701: request type 1pn-srv6-821: ready to reply(hh=8, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68pn-srv6-701: request type 1pn-srv6-821: ready to reply(hh=8, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68pn-srv6-701: request type 1pn-srv6-1073: bound dhcp-ans [172.16.50.34:68] to 9pn-srv6-821: ready to reply(hh=9, sz=281), typ=2, to port 68pn-srv6-838: sent reply 2, len=281, to port 68