KSS SecurityInfo 2021-06-22 en
KSS SecurityInfo 2021-06-22 en
KSS SecurityInfo 2021-06-22 en
June 2021
Overview
The KSS uses a Windows account called „target” for internal processes. This windows
account has a shared default password and changing this password was not documented
in a central place. This default password could potentially be leveraged by third-parties to
access systems where the password has not been changed. An attacker with network
level access or physical access to the controller might be able to obtain administrative
access to the system this way. However we are not aware of any cases where this did
actually happen.
Please review the KSS version-specific remarks below and see the appendix for detailed
instructions: “Changing the initial passwords (only KSS”).
We offer additional solutions for customers with even higher protection requirements.
Please reach out to your technical contact for additional information.
Overview:
KSS 8.7 KSS 8.6 KSS 8.5 KSS 8.3 KSS <= 8.2
KSS 8.6
• Passwords may be changed as documented below.
• A KSS update may reset the password of the Windows account “target” back to a
default value. We recommend to change the password again after performing a
KSS update. From KSS 8.6.9 onwards a changed password will be preserved
across updates.
KSS 8.5
• Passwords may be changed as documented below from KSS version 8.5.2 on-
wards. For versions before 8.5.2 we recommend to upgrade to version 8.5.9 at
first.
• A KSS update may reset the password of the Windows account “target” back to a
default value. We recommend to change the password again after performing a
KSS update.
KSS 8.3
• Passwords may be changed as documented below from KSS version 8.3.34 on-
wards. For versions before 8.3.34 we recommend to upgrade to version 8.3.43 at
first.
• A KSS update may reset the password of the Windows account “target” back to a
default value. We recommend to change the password again after performing a
KSS update.
Description
Changing initial passwords
• Change the initial passwords for the following users when starting up the system:
− KukaUser
− KukaSystem
− target
User
Initial password
KukaUser When starting Windows, the user is automatically
logged on as “KukaUser”.
Initial password: belongs to the Windows user group “Administrators”.
68kuka1secpw59
KukaSystem The KukaSystem user has all access rights for the en-
tire system. It is used when starting the KSS.
Initial password: only known Belongs to the Windows user group “Administrators”.
internally at KUKA
target VxWorks users; for logging into the kernel system in
Windows.
Initial password: only known
internally at KUKA
KukaUser:
The initial password for the KukaUser is widely known. If it is not changed, this allows
unauthorized persons to log on to the system.
KukaSystem/ target:
The initial passwords for these users can be changed without (!) having to be entered.
If they are not changed, this enables them to be changed later by unauthorized per-
sons.
Once an initial password has been changed, further changes are only possible if the
current password is known.
Description
When starting Windows, the user is automatically logged on with the following data:
If the changed password is lost, access to the Windows system is no longer pos-
sible – not even for KUKA.
Precondition
Procedure
1. Press the Windows key and the R key simultaneously. The Run… window opens.
2. Enter the cmd command in the Open box and confirm with the Enter key. The
command window opens.
3. Enter the following command:
Here, enter the current password instead of OLD_PW and the desired new password
instead of NEW_PW.
Parameter Description
/u= "…" User name
/op= "…" Current password
A password must not contain quotation marks followed by another special char-
acter or space. The following examples are thus NOT possible:
• My"&password
• My" password
Log file
The change is logged in:
• C:\KRC\ROBOTER\LOG\_ChangePwd.log
The errors are also indicated here in plain text. Password changes via WorkVisual are
logged here, too.
• KukaSystem
• target
Once an initial password has been changed, further changes are only possible if the
current password is known.
If the changed password is lost, access to the Windows system is no longer pos-
sible – not even for KUKA.
Precondition
c:\krc\util\krcuserpw\changepwd.exe /u="kukasystem"
/op="NEW_PW" /p="NEW_PW" /cp
When doing so, enter the desired new password instead of NEW_PW in both cases.
When doing so, enter the desired new password instead of NEW_PW in both cases.
Parameter Description
/u= "…" User name
/op= "…" Current password
A password must not contain quotation marks followed by another special char-
acter or space. The following examples are thus NOT possible:
• My"&password
• My" password
Log file
The change is logged in:
• C:\KRC\ROBOTER\LOG\_ChangePwd.log
The errors are also indicated here in plain text. Password changes via WorkVisual are
logged here, too.
Code Description
ERR_OPENFILE 0x0001 Error opening the KEC file
ERR_ARGMISMATCH 0x0002 No /u or /s parameter has
been specified.
ERR_ADDUSERTOGROUP 0x0004 The user cannot be added to
the group.
ERR_USERNAME_EMPTY 0x0008 No user name was specified
for “Change password”.
ERR_PASSWORD_EMPTY 0x0010 No new password was
specified for “Change
password”.
ERR_READINGUSER_KUKACONFIG 0x0020 The VxWorks user cannot
be read from kuka.config*
for “Change password”.
ERR_READINGPASSWORD_KUKACONFI 0x0040 The VxWorks password
G cannot be read from ku-
ka.config* for “Change
password”.
ERR_EXTRACTINGINFO_STARTKRCKEC 0x0080 The following data cannot
be read from StartKrc.kec
in the path C:\KRC for
“Change password”:
Code Description
ERROR_ACCESS_DENIED -5 The user does not have access rights.
ERROR_INVALID_PASSWORD -86 The user has entered an invalid pass-
word.
ERROR_INVALID_PARAMETER -87 Invalid parameter
NERR_InvalidComputer - Invalid computer name
2351
NERR_NotPrimary - The operation is only allowed on the
2226 primary domain controller.
NERR_UserNotFound - The user name could not be found.
2221
NERR_PasswordTooShort - Password too short
2245
The return values come from the NetUserchangePassword method. For reasons
of completeness, return values are also specified here which are not relevant for
the robot controller, e.g. NERR_PasswordTooShort.