[tor-bugs] #29819 [Core Tor/Tor]: Linux kernel 5.0.3 crashes sandbox configured Tor client

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Mar 24 11:29:58 UTC 2019


#29819: Linux kernel 5.0.3 crashes sandbox configured Tor client
---------------------------------------------+-----------------------------
 Reporter:  toralf                           |          Owner:  nickm
     Type:  defect                           |         Status:  assigned
 Priority:  Medium                           |      Milestone:  Tor:
                                             |  0.4.0.x-final
Component:  Core Tor/Tor                     |        Version:  Tor:
                                             |  0.4.0.2-alpha
 Severity:  Normal                           |     Resolution:
 Keywords:  crash, linux, sandbox, 040-must  |  Actual Points:
Parent ID:                                   |         Points:  0.2
 Reviewer:                                   |        Sponsor:
---------------------------------------------+-----------------------------

Comment (by toralf):

 This is a hardend Gentoo stable Linux with LibreSSL.

 This issue seems not related to the minor upgdate of the kernel however. I
 do just wonder why it happened after booting into the new kernel but this
 issue is now reproducible with older kernel too. But I had a sys-firmware
 /intel-microcode and a sys-kernel/linux-firmware too which might play a
 role.

 Fortunately it is easyli repoducible both at my desktop and my server
 (same OS and versions):
 {{{
 t44 ~ # mkdir -p /tmp/tor; chown tor:root /tmp/tor; chmod 755 /tmp/tor/;
 cat ./torrc; date; /usr/bin/tor -f ./torrc
 User tor
 PIDFile /tmp/tor/tor.pid
 DataDirectory /tmp/tor/data

 Log debug

 CookieAuthentication 1
 ControlPort 59051

 SocksPort 59050

 SandBox 1

 Sun Mar 24 12:27:21 CET 2019
 Mar 24 12:27:21.716 [notice] Tor 0.4.0.2-alpha running on Linux with
 Libevent 2.1.8-stable, OpenSSL LibreSSL 2.8.3, Zlib 1.2.11, Liblzma 5.2.4,
 and Libzstd N/A.
 Mar 24 12:27:21.717 [notice] Tor can't help you if you use it wrong! Learn
 how to be safe at https://www.torproject.org/download/download#warning
 Mar 24 12:27:21.717 [notice] This version is not a stable Tor release.
 Expect more bugs than usual.
 Mar 24 12:27:21.717 [notice] Read configuration file "/root/./torrc".
 Mar 24 12:27:21.722 [notice] Opening Socks listener on 127.0.0.1:59050
 Mar 24 12:27:21.722 [notice] Opened Socks listener on 127.0.0.1:59050
 Mar 24 12:27:21.722 [notice] Opening Control listener on 127.0.0.1:59051
 Mar 24 12:27:21.722 [notice] Opened Control listener on 127.0.0.1:59051
 Mar 24 12:27:21.000 [warn] Your log may contain sensitive information -
 you're logging more than "notice". Don't log unless it serves an important
 reason. Overwrite the log afterwards.
 Mar 24 12:27:21.000 [info] options_act_reversible(): Recomputed OOS
 thresholds: ConnLimit 1000, ConnLimit_ 4064, ConnLimit_high_thresh 4000,
 ConnLimit_low_thresh 3048
 Mar 24 12:27:21.000 [debug] tor_disable_debugger_attach(): Attemping to
 disable debugger attachment to Tor for unprivileged users.
 Mar 24 12:27:21.000 [info] tor_lockfile_lock(): Locking
 "/tmp/tor/data/lock"
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 128.31.0.39:9131 (9695)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 86.59.21.38:80 (847B)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 194.109.206.212:80 (7EA6)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 16
 dirserver at 66.111.2.131:9030 (BA44)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 131.188.40.189:80 (F204)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 193.23.244.244:80 (7BE6)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 171.25.193.9:443 (BD6A)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 154.35.175.225:80 (CF6D)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 199.58.81.140:80 (74A9)
 Mar 24 12:27:21.000 [debug] parse_dir_authority_line(): Trusted 100
 dirserver at 204.13.164.118:80 (24E2)
 Mar 24 12:27:21.000 [debug] file_status(): stat()ing /tmp/tor/data/state
 Mar 24 12:27:21.000 [info] or_state_load(): Initialized state
 Mar 24 12:27:21.000 [info] circuit_build_times_parse_state(): Adding 0
 timeouts.
 Mar 24 12:27:21.000 [info] circuit_build_times_parse_state(): Loaded 0/0
 values from 0 lines in circuit time histogram
 Mar 24 12:27:21.000 [debug] tor_rename(): Renaming /tmp/tor/data/state.tmp
 to /tmp/tor/data/state
 Mar 24 12:27:21.000 [info] or_state_save(): Saved state to
 "/tmp/tor/data/state"
 Mar 24 12:27:21.000 [info] read_file_to_str(): Could not open
 "/tmp/tor/data/router-stability": No such file or directory
 Mar 24 12:27:21.000 [debug] tor_rename(): Renaming
 /tmp/tor/data/control_auth_cookie.tmp to /tmp/tor/data/control_auth_cookie
 Mar 24 12:27:21.000 [info] init_cookie_authentication(): Generated auth
 cookie file in '"/tmp/tor/data/control_auth_cookie"'.
 Mar 24 12:27:21.000 [debug] kist_scheduler_run_interval():
 KISTSchedRunInterval=0, turning to the consensus.
 Mar 24 12:27:21.000 [debug] scheduler_can_use_kist(): Determined KIST
 sched_run_interval should be 10. Can use KIST.
 Mar 24 12:27:21.000 [info] scheduler_kist_set_full_mode(): Setting KIST
 scheduler with kernel support (KIST mode)
 Mar 24 12:27:21.000 [debug] kist_scheduler_run_interval():
 KISTSchedRunInterval=0, turning to the consensus.
 Mar 24 12:27:21.000 [info] cmux_ewma_set_options(): Enabled cell_ewma
 algorithm because of value in CircuitPriorityHalflifeMsec in consensus;
 scale factor is 0.793701 per 10 seconds
 Mar 24 12:27:21.000 [notice] Parsing GEOIP IPv4 file /usr/share/tor/geoip.
 Mar 24 12:27:21.000 [notice] Parsing GEOIP IPv6 file
 /usr/share/tor/geoip6.
 Mar 24 12:27:21.000 [info] add_predicted_port(): New port prediction
 added. Will continue predictive circ building for 3502 more seconds.
 Mar 24 12:27:21.000 [info] crypto_openssl_late_init(): NOT using OpenSSL
 engine support.
 Mar 24 12:27:21.000 [info] evaluate_evp_for_aes(): This version of OpenSSL
 has a known-good EVP counter-mode implementation. Using it.

 ============================================================ T= 1553426841
 (Sandbox) Caught a bad syscall attempt (syscall rt_sigaction)
 /usr/bin/tor(+0x1ce5aa)[0x562c1224a5aa]
 /lib64/libpthread.so.0(+0x14125)[0x7ff0aec2f125]
 /lib64/libpthread.so.0(+0x14125)[0x7ff0aec2f125]
 /usr/lib64/libevent-2.1.so.6(evsig_set_handler_+0xeb)[0x7ff0afb05f8b]
 /usr/lib64/libevent-2.1.so.6(+0x2c0b6)[0x7ff0afb060b6]
 /usr/lib64/libevent-2.1.so.6(evmap_signal_add_+0xb5)[0x7ff0afafeb55]
 /usr/lib64/libevent-2.1.so.6(event_add_nolock_+0x74e)[0x7ff0afafa1ce]
 /usr/lib64/libevent-2.1.so.6(event_add+0x3a)[0x7ff0afafa3fa]
 /usr/bin/tor(handle_signals+0xa7)[0x562c120d30c7]
 /usr/bin/tor(run_tor_main_loop+0x1a)[0x562c120d3c8a]
 /usr/bin/tor(tor_run_main+0x1045)[0x562c120d4ea5]
 /usr/bin/tor(tor_main+0x43)[0x562c120d23e3]
 /usr/bin/tor(main+0x19)[0x562c120d1f99]
 /lib64/libc.so.6(__libc_start_main+0xe7)[0x7ff0ae874ae7]
 /usr/bin/tor(_start+0x2a)[0x562c120d1fea]
 }}}

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/29819#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list