As far as I know, it's still surprisingly hard to do this, since Oracle has not really been taking JSON seriously.
If you have Oracle 12.2 or above, you can use the get_keys() function for the PL/SQL type JSON_OBJECT_T.
If you have an earlier version (or would prefer an alternative to JSON_OBJECT_T), you can use the get_keys() function in the popular pljson library.
If you're in some other kind of restricted environment, that's too bad. You'll probably have to do some kind of awful substr on the JSON string. I don't recommend this.
select regexp_substr('{a:100, b:200, c:300}', '[^{:]+') as first_node from dual;
If you can't use one of the get_keys() functions and you want a better solution, I'd also suggest that you could modify the json-generation part of your application to include the variable node/key names using a known key name, so you can access them. E.g.
{ variable_keys : ["keyname1","keyname2"],
keyname1 : "value1",
keyname2 : "value2" }
But you'll still need PL/SQL for this, since the SQL JSON functions (json_value, json_query) will only accept string literals for the JSON Path Expression.