ФорумРазработкаКлиентская сторонаВзгляд на твой дизайн и не только → Так, и что сделаем?

Так, и что сделаем?

  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 18 июля 2009 г. 21:33, спустя 8 часов 33 минуты 17 секунд


    Troy, а это не он http://www.youtube.com/watch?v=hI1KgBdcMOU
    ?
    баян
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 5 марта 2012 г. 1:18, спустя 960 дней 3 часа 44 минуты


    Chikey, я к тебе буквы не добавлял)
    ты сам выбрал свою суудьбу, чика)
    Спустя 17 сек.
    я вобще по нику сначала думал, что ты баба
    Спустя 7 сек.
    ты точно не баба? )


    а тем временем чувак хакнул гитхаб https://github.com/rails/rails/commit/b83965785db1eec019edf1fc272b1aa393e6dc57
  • Ivan

    Сообщения: 1316 Репутация: N Группа: Адекваты

    Spritz 5 марта 2012 г. 1:34, спустя 15 минут 44 секунды

    Не подскажете как избежать такого говнокода? eval и получение параметров внутри метода не подходит:
    switch (count($sParamX))
    {
    case 0: $object->$method(); break;
    case 1: $object->$method($sParamX[0]); break;
    case 2: $object->$method($sParamX[0], $sParamX[1]); break;
    case 3: $object->$method($sParamX[0], $sParamX[1], $sParamX[2]);
    break;
    case 4: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3]); break;
    case 5: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4]); break;
    case 6: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5]); break;
    case 7: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5], $sParamX[6]); break;
    case 8: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5], $sParamX[6], $sParamX[7]);
    break;
    case 9: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5], $sParamX[6], $sParamX[7],
    $sParamX[8]); break;
    case 10: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5], $sParamX[6], $sParamX[7],
    $sParamX[8], $sParamX[9]); break;
    case 11: $object->$method($sParamX[0], $sParamX[1], $sParamX[2],
    $sParamX[3], $sParamX[4], $sParamX[5], $sParamX[6], $sParamX[7],
    $sParamX[8], $sParamX[9], $sParamX[10]); break;
    }
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 1:36, спустя 1 минуту 59 секунд

    чего это за тема вообще?
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 5 марта 2012 г. 1:37, спустя 1 минуту 41 секунду

    Ivan, call_user_func_array

    Sinkler, 1 тема, которую выдал гугл по запросу Chikey pyha
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 1:56, спустя 19 минут 14 секунд

    школолоо отличился) крут, пыха ростит героев :D
    Сапожник без сапог
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 1:59, спустя 2 минуты 37 секунд

    Абырвалг, чет я не в теме, чего он сделал?
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 2:02, спустя 3 минуты 9 секунд

    Sinkler, в платформе рельсов нашел крит уязвимость и с ее помощью закомитил "хуйню" в мастер ветку рельсов, ибо гитхаб на рельсах :D

    ну и все хаброхабр сообщество других детей обосралось кипятком :D
    Сапожник без сапог
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 2:18, спустя 15 минут 53 секунды

    о, надо было читать коммит
    Спустя 17 сек.
    а как вы узнали, что это чика?
    Спустя 42 сек.
    а вообще хакерством на спокойную жизнь не заработаешь, зря он
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 2:25, спустя 6 минут 34 секунды

    Sinkler, ян аскольк опомню он еще с самых пеленок пытался чото хакать + мысли какие то ебнутые))))))) ну в принципе неплохо начал, молодец :-)

    он "хакнул" потому что его не слушали нигде, а тут пришлось поправить баг :-)
    Спустя 18 сек.
    это был скорее крик души, но дело на него вроде собираются завести )))))))))))))))))))
    Сапожник без сапог
  • Sinkler

    Сообщения: 7958 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 2:29, спустя 4 минуты 17 секунд

    был где-то недалеко от нас типок, тоже чего-то хакнул в америке… потом еле вытащили оттуда наши, после того, как пиндосы его туда заманили под видом работы, чтобы посадить…
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 2:53, спустя 23 минуты 36 секунд

    Sinkler, лол :)
    Сапожник без сапог
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 5 марта 2012 г. 3:24, спустя 31 минуту 46 секунд

    ага, тоже слышал. Говорят типа вы охуенные спецы знач, мы готовы принять вас на работу. Ну а по факту сажают. Так вроде было с чуваком, который украл бета-версию халф-лайфа 2.


    https://github.com/blog/1068-public-key-security-vulnerability-and-mitigation

    я вот только ниче не понимаю в этой телячьей мове (руби). Кто-то по-русски может объяснить что там было не так?
  • Frozzeg

    Сообщения: 5641 Репутация: N Группа: Джедаи

    Spritz 5 марта 2012 г. 12:26, спустя 9 часов 1 минуту 43 секунды

    меняем слоган на "кузница хакеров"
    You can be anything you want to be. Just turn yourself into anything you think that you could ever be.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 5 марта 2012 г. 12:37, спустя 10 минут 43 секунды

    https://github.com/blog/1068-public-key-security-vulnerability-and-mitigation

    я вот только ниче не понимаю в этой телячьей мове (руби). Кто-то по-русски может объяснить что там было не так?

    насколько я понял, изза "слишком охуенного ОРМ", там есть проблемка.

    например моделька

    class Comment(Model):
      user = Model.ForeignKey(User)
      title = Model.CharField()
      comment = Model.CharField()


    Так вот, слишком продвинутый орм, если ты делаешь аля

    comment = Comment.objects.get(pk=id)
    comment.user.comments = 10
    comment.save()

    то все проходит как хочешь, НО!

    Но можно использовать и "multiupdate" аля

    Comment.objects.filter(pub_date__year=2007).update(title='Everything is the same')


    то оно обновит не один, а все. Но критично не это, а то, что если сделать например


    Comment.objects.filter(pub_date__year=2007).update(user_id = newid)


    то он обновит поле, которое отвечает за связь с User моделью, а если взять и сделать что нить аля

    Comment.objects.filter(pub_date__year=2007).update(user__is_root = True)


    То он уже обновит связанную модель с найденым коментом, вот тут то и возникает ПИЗДЕЦ, когда  делают вот так

    Comment.objects.filter(pub_date__year=2007).update(**request.POST)


    предполагая что в форме было например два поля - title + comment, "хакирь" дописывает туда поле аля user__is_root = 1 и пизда :-)

    зы: весь псевдокод на питоне. с руби я никак не корелирую, но насколько я понял из поверхностного прочтения материалов, то пацан заметил этот ПиздЕЦ, ибо гдето в недрах самих рельсов было такое присваивание, ну и просил чтобы его закрыли, для наглядности решил хакнуть, вместо инициации pull-request'а в ветку рельсов :-)

    Хуево то, что у меня есть парочка рельс приложений, которые видимо уязвимы :-)


    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!