Type confusion exists in canceleval Ruby's TclTkIp class method. Attacker passing different type of object than String as "retval" argument can cause arbitrary code execution.
{
"versions": [
{
"introduced": "0"
},
{
"last_affected": "2.2.2"
},
{
"introduced": "0"
},
{
"last_affected": "2.3.0"
}
]
}