Size: a a a

pro.rb (Ruby/Rails / RU)

2020 December 10

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Кракозябр Кракозябрович
Приветствую. Сталкивался ли кто с необходимостью шифрования/обфурскации кода руби для предотвращения кражи исходников и какими инструментами решали вопрос?
написать его на crystal? :)))
источник

N

Neko in pro.rb (Ruby/Rails / RU)
Ну я глупость скажу, но толком нельзя идеально защитить код, при желании все равно можно исходник вскрыть, а так, в путь дорогу на кристалл
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
есть какая-то прога - ruby encoder, но я никогда не юзал её
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
она компилит в какой-то там байт-код
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
и вроде с рельсами работает
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
# RubyEncoder v2.7
if !defined?(RGLoader)||!RGLoader.respond_to?(:check_version)||!RGLoader.check_version('2.7') then _d=_d0=File.expand_path(File.dirname(__FILE__)); while true do _f=_d+'/rgloader/loader.rb'; load _f and break if File.exist?(_f); _d1=File.dirname(_d); if _d1==_d then break if defined?(RGLoader); raise LoadError, "Ruby script '"+__FILE__+"' is protected by RubyEncoder and requires a RubyEncoder loader to be installed. Please visit the https://www.rubyencoder.com/loaders/ RubyEncoder web site to download the required loader and unpack it into '"+_d0+"/rgloader/' directory in order to run this protected file."; exit; else _d=_d1; end; end; end; RGLoader_load('AAUAAAAEgAAAAIAAAAAA/zaTFXa4MftUrLaUHRLZ8YKzwj+fs0l05pQ/0ueEtkGXfvLpL6+Zvi+iw2Nc0PU+vIC3Ehq9oyR7l7KNH+j7DlFAODTtsHh3izao0SHITMekFMHMAn5WHGhHRs3E4M1GlwbYa3ipK05j8l37D9u1IDAHIHgD18oVVh/vrAcBZrn9GAAAAAUAAACYAAAASqKPB+3vOyGxZ75X1UvXxbAfKcxkHeqKbCVCrpj0w4DzVRcgCpzkAq8XLr2qjI80IT0OZ6/5LLti8KVjUdvWbdws/UBCc/mr5DlhtB9ykJ6bGec16eF7RMCuSMpsE1ILRgm3BWbw9mE27E057GrmCwPz+J99kLlkOmKhJEeR567UdBl9aJ8430eFh5+cnriMeJRq5rIXMRoZAAAABQAAAJgAAAAzzx1ajPLNAGTTb0Zr+E23QZzrjucPjjOM77zD6fcIq9bb+utNYtONQStPanK7EVeT5On7VKfs2EQJR12+7N4DF6fSVTGrga8wpG5yABGqhsVVRrISO56kyTmoxbdv2RuITYbMfZD8zN2BfLik/V12g9pqGRWVf1xdJyKG3IsMJcAorW0QSkRBPA/efROonsChT9JlHoLKihoAAAAFAAAAiAAAAIgMN3JNITcBgHtNoHP94jXF+TbrxrA67GlMjxL2V24lDBpcUIVkEa4SLOB/XCqN1a6D7/1G1f7ulCAaB4pduYki8MqWoMQj0aPGz4VVjtPrMT+Wa9qCeK6bPL2zX51JhCSj276nQJAECDmUWl0poCfpMKBpPyfDXYgmyuY2dBYmxIP/Q9PtDyYbAAAABQAAAIgAAACw/12COxv/59iLH7e4obfbSNjcXLrF8WlWpXC8Orm7o5DytiNUBdgCVvq1nAnDIZ15R95Fsv0W2YSw6zQI94apKKikM+2flZbozbyMXH0xKVrt+E0rMEoUY2OyZ6SmECPuAWH1QL8TRGDI+CMJY8gDMOs+Kvb76tcyiLMKyzy3292PRN4hNMQDAAAAAA==');


вот примерно так будет выглядеть прога, но похоже там история о том что эту прогу надо поставить на ту тачку
источник

ch

central hardware in pro.rb (Ruby/Rails / RU)
Ivan Naumov
# RubyEncoder v2.7
if !defined?(RGLoader)||!RGLoader.respond_to?(:check_version)||!RGLoader.check_version('2.7') then _d=_d0=File.expand_path(File.dirname(__FILE__)); while true do _f=_d+'/rgloader/loader.rb'; load _f and break if File.exist?(_f); _d1=File.dirname(_d); if _d1==_d then break if defined?(RGLoader); raise LoadError, "Ruby script '"+__FILE__+"' is protected by RubyEncoder and requires a RubyEncoder loader to be installed. Please visit the https://www.rubyencoder.com/loaders/ RubyEncoder web site to download the required loader and unpack it into '"+_d0+"/rgloader/' directory in order to run this protected file."; exit; else _d=_d1; end; end; end; RGLoader_load('AAUAAAAEgAAAAIAAAAAA/zaTFXa4MftUrLaUHRLZ8YKzwj+fs0l05pQ/0ueEtkGXfvLpL6+Zvi+iw2Nc0PU+vIC3Ehq9oyR7l7KNH+j7DlFAODTtsHh3izao0SHITMekFMHMAn5WHGhHRs3E4M1GlwbYa3ipK05j8l37D9u1IDAHIHgD18oVVh/vrAcBZrn9GAAAAAUAAACYAAAASqKPB+3vOyGxZ75X1UvXxbAfKcxkHeqKbCVCrpj0w4DzVRcgCpzkAq8XLr2qjI80IT0OZ6/5LLti8KVjUdvWbdws/UBCc/mr5DlhtB9ykJ6bGec16eF7RMCuSMpsE1ILRgm3BWbw9mE27E057GrmCwPz+J99kLlkOmKhJEeR567UdBl9aJ8430eFh5+cnriMeJRq5rIXMRoZAAAABQAAAJgAAAAzzx1ajPLNAGTTb0Zr+E23QZzrjucPjjOM77zD6fcIq9bb+utNYtONQStPanK7EVeT5On7VKfs2EQJR12+7N4DF6fSVTGrga8wpG5yABGqhsVVRrISO56kyTmoxbdv2RuITYbMfZD8zN2BfLik/V12g9pqGRWVf1xdJyKG3IsMJcAorW0QSkRBPA/efROonsChT9JlHoLKihoAAAAFAAAAiAAAAIgMN3JNITcBgHtNoHP94jXF+TbrxrA67GlMjxL2V24lDBpcUIVkEa4SLOB/XCqN1a6D7/1G1f7ulCAaB4pduYki8MqWoMQj0aPGz4VVjtPrMT+Wa9qCeK6bPL2zX51JhCSj276nQJAECDmUWl0poCfpMKBpPyfDXYgmyuY2dBYmxIP/Q9PtDyYbAAAABQAAAIgAAACw/12COxv/59iLH7e4obfbSNjcXLrF8WlWpXC8Orm7o5DytiNUBdgCVvq1nAnDIZ15R95Fsv0W2YSw6zQI94apKKikM+2flZbozbyMXH0xKVrt+E0rMEoUY2OyZ6SmECPuAWH1QL8TRGDI+CMJY8gDMOs+Kvb76tcyiLMKyzy3292PRN4hNMQDAAAAAA==');


вот примерно так будет выглядеть прога, но похоже там история о том что эту прогу надо поставить на ту тачку
это просто зашифрованные данные, сам bytecode думаю будет куда более понятен для анализа
источник

MC

Mikhail Churakov in pro.rb (Ruby/Rails / RU)
вопрос обычно лишь в стоимости взлома ПО ...
источник

MC

Mikhail Churakov in pro.rb (Ruby/Rails / RU)
так что всё это из пушки по воробьям
источник

N

Neko in pro.rb (Ruby/Rails / RU)
Mikhail Churakov
вопрос обычно лишь в стоимости взлома ПО ...
И я о том же
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
А у гитхаба нет никакой защиты?
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Там кажись тоже лоадеры какие то были но это не точно
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
мне кажется что гитхаб просто у себя хостится и все)
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Ivan Naumov
мне кажется что гитхаб просто у себя хостится и все)
Там github enterprise который они хостят на машине корп клиентов, так что нет
источник

AI

Alex Ilizarov in pro.rb (Ruby/Rails / RU)
Он недавно утёк кстати
источник

IN

Ivan Naumov in pro.rb (Ruby/Rails / RU)
а, да, забыл про него
источник

VB

Viktoria Bohomaz in pro.rb (Ruby/Rails / RU)
Всем привет!
Ребята, а подскажите, что будет, если одна крон джоба не успеет выполниться, а вторая уже по времени должна запуститься? Они запустятся обе?
источник

V

Vladyslav Parashchen... in pro.rb (Ruby/Rails / RU)
источник

VB

Viktoria Bohomaz in pro.rb (Ruby/Rails / RU)
спасибо
источник