It is possible to check if an index using a number of columns exists.
index_cols AS (
COLLECT(column_name) AS column_names
WHERE table_name = '&table_name'
target_cols AS (
SELECT '&column_name_1' AS col_name FROM dual
UNION SELECT '&column_name_2' FROM dual
FROM index_cols ic
FROM target_cols tc
JOIN TABLE(ic.column_names) icc
ON (tc.col_name = icc.COLUMN_VALUE)
) = (
Is one (a bit convoluted) way to do that.
But as aasim.abdullah noted in a comment, two indexes on the same set of columns but in different order, aren't the same. And it is possible to have both indexes side by side.